|
|
@@ -3,25 +3,30 @@ meta:
|
|
|
enabled: false
|
|
|
</route>
|
|
|
|
|
|
-<script lang="ts" setup name="BizObjectOAMListComponent">
|
|
|
+<script lang="ts" setup name="BizObjectOAM">
|
|
|
+import type { TabsPaneContext } from 'element-plus'
|
|
|
import { ElMessage, ElMessageBox } from 'element-plus'
|
|
|
-import ObjectOAMComponent from './components/ObjectOAM.vue'
|
|
|
-import ObjectOAMRuleComponent from './components/ObjectOAMRule.vue'
|
|
|
-import { deleteObjectOAMById, getObjectOAMById, getObjectOAMByList } from '@/api/biz/bizObjectOAMApi'
|
|
|
-import { deleteObjectOAMRuleById, getObjectOAMRuleListByOamId } from '@/api/biz/bizObjectOAMRuleApi'
|
|
|
+import ObjectOAMComponent from './components/objectOAM.vue'
|
|
|
+import ObjectOAMRuleComponent from './components/objectOAMRule.vue'
|
|
|
+import useSettingsStore from '@/store/modules/settings'
|
|
|
+import { getObjectById } from '@/api/biz/bizObjectApi'
|
|
|
+import { deleteObjectOAMById, getObjectOAMById, getObjectOAMListByObjectId } from '@/api/biz/bizObjectOAMApi'
|
|
|
+import { getObjectOAMRuleListByOamId } from '@/api/biz/bizObjectOAMRuleApi'
|
|
|
import { oamType, sqlType } from '@/utils/tool'
|
|
|
-const props = withDefaults(defineProps<{
|
|
|
- bizId: number
|
|
|
- objectId: number
|
|
|
-}>(), {
|
|
|
- bizId: 0,
|
|
|
- objectId: 0,
|
|
|
-})
|
|
|
+
|
|
|
+const settingsStore = useSettingsStore()
|
|
|
+const route = useRoute()
|
|
|
+const router = useRouter()
|
|
|
+const tabbar = useTabbar()
|
|
|
+
|
|
|
+const bizId = parseInt(route.params.bizId.toString())
|
|
|
+const objectId = parseInt(route.params.objectId.toString())
|
|
|
|
|
|
interface TreeNode {
|
|
|
label: string
|
|
|
isLeaf: boolean
|
|
|
oamId: number
|
|
|
+ oamCode: string
|
|
|
children?: TreeNode[]
|
|
|
}
|
|
|
|
|
|
@@ -48,15 +53,16 @@ const state = reactive({
|
|
|
objectTitle: '',
|
|
|
objectCode: '',
|
|
|
objectType: 0,
|
|
|
+ keywords: '',
|
|
|
curOamId: 0,
|
|
|
oamList: [],
|
|
|
objectOamRuleList: [],
|
|
|
treeData: [] as TreeNode[],
|
|
|
oam: {} as ObjectOAM,
|
|
|
dialogState: 1,
|
|
|
- conditions: {
|
|
|
- bizId: props.bizId,
|
|
|
- objectId: props.objectId,
|
|
|
+ search: {
|
|
|
+ bizId,
|
|
|
+ objectId,
|
|
|
keywords: '',
|
|
|
},
|
|
|
params: '',
|
|
|
@@ -65,11 +71,19 @@ const state = reactive({
|
|
|
|
|
|
const leftTreeRef = ref()
|
|
|
|
|
|
+const getObjectData = async () => {
|
|
|
+ state.loading = true
|
|
|
+ const { data } = await getObjectById(bizId, objectId)
|
|
|
+ state.objectTitle = data.objectTitle
|
|
|
+ state.objectCode = data.objectCode
|
|
|
+ state.objectType = data.objectType
|
|
|
+ state.loading = false
|
|
|
+}
|
|
|
+
|
|
|
const getObjectOAMData = async () => {
|
|
|
const curOamId = state.curOamId
|
|
|
if (curOamId > 0) {
|
|
|
state.loading = true
|
|
|
- const { bizId, objectId } = state.conditions
|
|
|
const { data } = await getObjectOAMById(bizId, objectId, curOamId)
|
|
|
state.oam = data
|
|
|
state.loading = false
|
|
|
@@ -80,7 +94,6 @@ const getObjectOAMRuleList = async () => {
|
|
|
const curOamId = state.curOamId
|
|
|
if (curOamId > 0) {
|
|
|
state.loading = true
|
|
|
- const { bizId, objectId } = state.conditions
|
|
|
const { data } = await getObjectOAMRuleListByOamId(bizId, objectId, curOamId)
|
|
|
state.objectOamRuleList = data
|
|
|
state.loading = false
|
|
|
@@ -88,13 +101,14 @@ const getObjectOAMRuleList = async () => {
|
|
|
}
|
|
|
|
|
|
const getOAMTree = async () => {
|
|
|
- const { data } = await getObjectOAMByList(state.conditions)
|
|
|
+ const { data } = await getObjectOAMListByObjectId(bizId, objectId)
|
|
|
state.treeData = []
|
|
|
- if (data && data.length > 0){
|
|
|
+ if (data && data.length > 0) {
|
|
|
data.forEach((item: any) => {
|
|
|
state.treeData.push({
|
|
|
label: item.oamTitle,
|
|
|
oamId: item.oamId,
|
|
|
+ oamCode: item.oamCode,
|
|
|
isLeaf: true,
|
|
|
})
|
|
|
})
|
|
|
@@ -109,6 +123,7 @@ const getOAMTree = async () => {
|
|
|
}
|
|
|
|
|
|
onMounted(() => {
|
|
|
+ getObjectData()
|
|
|
getOAMTree()
|
|
|
})
|
|
|
|
|
|
@@ -117,18 +132,15 @@ const onTreeNodeClick = (node: TreeNode) => {
|
|
|
if (node.isLeaf) {
|
|
|
state.curOamId = node.oamId
|
|
|
getObjectOAMData()
|
|
|
- getObjectOAMRuleList()
|
|
|
}
|
|
|
}
|
|
|
|
|
|
const objectOAMRef = ref()
|
|
|
const onAddOAM = () => {
|
|
|
- const { bizId, objectId } = state.conditions
|
|
|
objectOAMRef.value.showAddModel(bizId, objectId)
|
|
|
}
|
|
|
|
|
|
const onEditOAM = () => {
|
|
|
- const { bizId, objectId } = state.conditions
|
|
|
objectOAMRef.value.showEditModel(bizId, objectId, state.curOamId)
|
|
|
}
|
|
|
|
|
|
@@ -146,10 +158,14 @@ const onDeleteOAM = (data: { bizId: number; objectId: number; oamId: number; oam
|
|
|
|
|
|
// 选择对象模型回调
|
|
|
const onSuccess = () => {
|
|
|
- // getOAMTree()
|
|
|
+ getOAMTree()
|
|
|
}
|
|
|
|
|
|
-const tabIndex = ref(1)
|
|
|
+const activeName = ref('first')
|
|
|
+
|
|
|
+const handleClick = (tab: TabsPaneContext, event: Event) => {
|
|
|
+ console.log(tab, event)
|
|
|
+}
|
|
|
|
|
|
const objectOAMRuleRef = ref()
|
|
|
const onObjectOAMRuleSearch = () => {
|
|
|
@@ -157,178 +173,249 @@ const onObjectOAMRuleSearch = () => {
|
|
|
}
|
|
|
|
|
|
const onObjectOAMRuleAdd = () => {
|
|
|
- const { bizId, objectId } = state.conditions
|
|
|
objectOAMRuleRef.value.showAddModel(bizId, objectId, state.curOamId)
|
|
|
}
|
|
|
|
|
|
const onObjectOAMRuleEdit = (row: { orId: number }) => {
|
|
|
- const { bizId, objectId } = state.conditions
|
|
|
objectOAMRuleRef.value.showEditModel(bizId, objectId, state.curOamId, row.orId)
|
|
|
}
|
|
|
|
|
|
-const onObjectOAMRuleDelete = (row: { bizId: number; objectId: number; oamId: number; orId: number; ruleTitle: string }) => {
|
|
|
- const { bizId, objectId, oamId, orId, ruleTitle } = row
|
|
|
- ElMessageBox.confirm(`确认删除「${ruleTitle}」吗?`, '确认信息').then(async () => {
|
|
|
- await deleteObjectOAMRuleById(bizId, objectId, oamId, orId)
|
|
|
- await getObjectOAMRuleList()
|
|
|
- ElMessage.success({
|
|
|
- message: '删除成功',
|
|
|
- center: true,
|
|
|
- })
|
|
|
- })
|
|
|
+const onObjectOAMRuleDelete = (row: { }) => {
|
|
|
+
|
|
|
+}
|
|
|
+// 返回列表页
|
|
|
+function goBack() {
|
|
|
+ if (settingsStore.settings.tabbar.enable && settingsStore.settings.tabbar.mergeTabsBy !== 'activeMenu') {
|
|
|
+ tabbar.close({ name: 'biz_object_list' })
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ router.push({ name: 'biz_object_list' })
|
|
|
+ }
|
|
|
}
|
|
|
</script>
|
|
|
|
|
|
<template>
|
|
|
- <div class="page-main">
|
|
|
- <LayoutContainer left-side-width="250px" hide-left-side-toggle>
|
|
|
- <template #leftSide>
|
|
|
- <el-button-group class="btns">
|
|
|
- <el-button type="primary" class="add" @click="onAddOAM()">
|
|
|
- 新增对象行为
|
|
|
- </el-button>
|
|
|
- <el-button @click="getObjectOAMData">
|
|
|
- <template #icon>
|
|
|
- <el-icon>
|
|
|
- <svg-icon name="i-ep:refresh" />
|
|
|
- </el-icon>
|
|
|
- </template>
|
|
|
- </el-button>
|
|
|
- </el-button-group>
|
|
|
-
|
|
|
- <el-scrollbar class="tree">
|
|
|
- <ElTree ref="leftTreeRef" :data="state.treeData" default-expand-all node-key="oamId" @node-click="onTreeNodeClick">
|
|
|
- <template #default="{ node, data }">
|
|
|
- <div class="custom-tree-node">
|
|
|
- <div class="label" :title="node.label">
|
|
|
- <el-icon v-if="data.isLeaf" size="16px" style="margin-right: 5px;">
|
|
|
- <svg-icon name="ep:key" />
|
|
|
- </el-icon>
|
|
|
- <div class="text">
|
|
|
- {{ data.label }}
|
|
|
- </div>
|
|
|
- <div class="code">
|
|
|
- {{ oamType(data.oamType) }}
|
|
|
+ <div class="absolute-container">
|
|
|
+ <page-header :title="state.objectTitle" :content="state.objectCode ">
|
|
|
+ <el-button size="default" round @click="goBack">
|
|
|
+ <template #icon>
|
|
|
+ <el-icon>
|
|
|
+ <svg-icon name="i-ep:arrow-left" />
|
|
|
+ </el-icon>
|
|
|
+ </template>
|
|
|
+ 返回
|
|
|
+ </el-button>
|
|
|
+ </page-header>
|
|
|
+
|
|
|
+ <div class="page-main">
|
|
|
+ <LayoutContainer left-side-width="250px" hide-left-side-toggle>
|
|
|
+ <template #leftSide>
|
|
|
+ <el-button-group class="btns">
|
|
|
+ <el-button type="primary" class="add" @click="onAddOAM()">
|
|
|
+ <template #icon>
|
|
|
+ <el-icon>
|
|
|
+ <svg-icon name="i-ep:plus" />
|
|
|
+ </el-icon>
|
|
|
+ </template>
|
|
|
+ 对象行为
|
|
|
+ </el-button>
|
|
|
+ <el-button @click="getObjectOAMData">
|
|
|
+ <template #icon>
|
|
|
+ <el-icon>
|
|
|
+ <svg-icon name="i-ep:refresh" />
|
|
|
+ </el-icon>
|
|
|
+ </template>
|
|
|
+ </el-button>
|
|
|
+ </el-button-group>
|
|
|
+ <el-input placeholder="请输入关键词筛选" clearable class="search" />
|
|
|
+
|
|
|
+ <el-scrollbar class="tree">
|
|
|
+ <ElTree ref="leftTreeRef" :data="state.treeData" default-expand-all node-key="oamId" @node-click="onTreeNodeClick">
|
|
|
+ <template #default="{ node, data }">
|
|
|
+ <div class="custom-tree-node">
|
|
|
+ <div class="label" :title="node.label">
|
|
|
+ <div class="text">
|
|
|
+ <el-icon v-if="data.isLeaf" size="16px" style="margin:0 5px 5px 0;">
|
|
|
+ <svg-icon name="ant-design:api-outlined" />
|
|
|
+ </el-icon>
|
|
|
+ <span>{{ data.label }}</span>
|
|
|
+ </div>
|
|
|
+ <div class="code">
|
|
|
+ {{ data.oamCode }}
|
|
|
+ </div>
|
|
|
</div>
|
|
|
</div>
|
|
|
- </div>
|
|
|
- </template>
|
|
|
- </ElTree>
|
|
|
- </el-scrollbar>
|
|
|
- </template>
|
|
|
-
|
|
|
- <div class="container">
|
|
|
- <page-main title="基础用法" class="demo">
|
|
|
- <el-radio v-model="tabIndex" label="1">
|
|
|
- 行为定义
|
|
|
- </el-radio>
|
|
|
- <el-radio v-model="tabIndex" label="2">
|
|
|
- 业务规则
|
|
|
- </el-radio>
|
|
|
- </page-main>
|
|
|
-
|
|
|
- <page-main v-show="tabIndex === 1">
|
|
|
- <div class="form">
|
|
|
- <tool-header>
|
|
|
- <template #right>
|
|
|
- <el-button type="primary" @click="onEditOAM">
|
|
|
- 编辑
|
|
|
- </el-button>
|
|
|
</template>
|
|
|
- </tool-header>
|
|
|
- <page-main v-if="state.oam" :title="state.oam.oamTitle">
|
|
|
- <div class="question">
|
|
|
- <ol class="answer">
|
|
|
- <li><span>编码:</span><br>{{ state.oam.oamCode }}</li>
|
|
|
- <li><span>行为类型:</span><br>{{ oamType(state.oam.oamType) }}</li>
|
|
|
- <li><span>操作类型:</span><br>{{ sqlType(state.oam.sqlType) }}</li>
|
|
|
- <li v-if="state.oam.sqlType === 1">
|
|
|
- <span>Sql:</span><br>{{ state.oam.sqlStatement }}
|
|
|
- </li>
|
|
|
- <li v-if="state.oam.oamType === 3">
|
|
|
- <span>Count</span><br>{{ state.oam.sqlCount }}
|
|
|
- </li>
|
|
|
- <li><span>说明</span><br>{{ state.oam.oamDesc }}</li>
|
|
|
- </ol>
|
|
|
- </div>
|
|
|
- </page-main>
|
|
|
- </div>
|
|
|
- </page-main>
|
|
|
-
|
|
|
- <page-main v-show="tabIndex === 2">
|
|
|
- <tool-bar>
|
|
|
- <template #right>
|
|
|
- <el-input v-model="state.conditions.keywords" placeholder="请输入名称,支持模糊查询" style="padding-right: 10px;" clearable />
|
|
|
- <el-button type="primary" @click="onObjectOAMRuleSearch">
|
|
|
- <template #icon>
|
|
|
- <el-icon>
|
|
|
- <svg-icon name="i-ep:search" />
|
|
|
- </el-icon>
|
|
|
+ </ElTree>
|
|
|
+ </el-scrollbar>
|
|
|
+ </template>
|
|
|
+
|
|
|
+ <div class="container">
|
|
|
+ <el-tabs v-model="activeName" class="demo-tabs" @tab-click="handleClick">
|
|
|
+ <el-tab-pane label="行为定义" name="first">
|
|
|
+ <el-descriptions
|
|
|
+ :title="state.oam.oamTitle"
|
|
|
+ :column="1"
|
|
|
+ border
|
|
|
+ >
|
|
|
+ <template #extra>
|
|
|
+ <el-button type="primary" @click="onEditOAM">
|
|
|
+ 编辑
|
|
|
+ </el-button>
|
|
|
</template>
|
|
|
- </el-button>
|
|
|
|
|
|
- <el-button type="primary" size="default" @click.stop="onObjectOAMRuleAdd">
|
|
|
- <template #icon>
|
|
|
- <el-icon>
|
|
|
- <svg-icon name="i-ep:plus" />
|
|
|
- </el-icon>
|
|
|
+ <el-descriptions-item
|
|
|
+ label-align="right"
|
|
|
+ label="编码"
|
|
|
+ width="150px"
|
|
|
+ >
|
|
|
+ {{ state.oam.oamCode }}
|
|
|
+ </el-descriptions-item>
|
|
|
+
|
|
|
+ <el-descriptions-item
|
|
|
+ label="行为类型"
|
|
|
+ width="150px"
|
|
|
+ label-align="right"
|
|
|
+ >
|
|
|
+ {{ oamType(state.oam.oamType) }}
|
|
|
+ </el-descriptions-item>
|
|
|
+
|
|
|
+ <el-descriptions-item
|
|
|
+ label-align="right"
|
|
|
+ width="150px"
|
|
|
+ label="操作类型"
|
|
|
+ >
|
|
|
+ {{ sqlType(state.oam.sqlType) }}
|
|
|
+ </el-descriptions-item>
|
|
|
+
|
|
|
+ <el-descriptions-item
|
|
|
+ v-if="state.oam.sqlType === 1"
|
|
|
+ label-align="right"
|
|
|
+ width="150px"
|
|
|
+ label="Sql"
|
|
|
+ >
|
|
|
+ {{ state.oam.sqlStatement }}
|
|
|
+ </el-descriptions-item>
|
|
|
+
|
|
|
+ <el-descriptions-item
|
|
|
+ v-if="state.oam.oamType === 3"
|
|
|
+ label-align="right"
|
|
|
+ width="150px"
|
|
|
+ label="Count"
|
|
|
+ >
|
|
|
+ {{ state.oam.sqlCount }}
|
|
|
+ </el-descriptions-item>
|
|
|
+
|
|
|
+ <el-descriptions-item
|
|
|
+ label-align="right"
|
|
|
+ width="150px"
|
|
|
+ label="说明"
|
|
|
+ >
|
|
|
+ {{ state.oam.oamDesc }}
|
|
|
+ </el-descriptions-item>
|
|
|
+ </el-descriptions>
|
|
|
+ </el-tab-pane>
|
|
|
+
|
|
|
+ <el-tab-pane label="查询参数" name="second">
|
|
|
+
|
|
|
+ </el-tab-pane>
|
|
|
+
|
|
|
+ <el-tab-pane label="业务规则" name="three">
|
|
|
+ <tool-bar>
|
|
|
+ <template #left>
|
|
|
+ <h4>业务规则</h4>
|
|
|
</template>
|
|
|
- 业务规则
|
|
|
- </el-button>
|
|
|
- </template>
|
|
|
- </tool-bar>
|
|
|
-
|
|
|
- <el-table ref="objectRuleTableRef" v-loading="state.loading" class="list-table" :data="state.objectOamRuleList" border stripe highlight-current-row height="100%">
|
|
|
- <el-table-column type="index" label="序号" header-align="center" align="center" width="70" />
|
|
|
|
|
|
- <el-table-column prop="objectTitle" label="名称" header-align="center" align="center" width="200">
|
|
|
- <template #default="scope">
|
|
|
- <el-icon>
|
|
|
- <svg-icon name="lucide:clipboard-check" />
|
|
|
- </el-icon>
|
|
|
- <span> {{ scope.row.objectTitle }}</span>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
-
|
|
|
- <el-table-column prop="attrTitle" label="属性" header-align="center" align="center" width="250">
|
|
|
- <template #default="scope">
|
|
|
- <span> {{ scope.row.targetAttrTitle }}-{{ scope.row.targetAttrCode }}</span>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
-
|
|
|
- <el-table-column prop="ruleTitle" label="规则" header-align="center" align="center" width="150" />
|
|
|
-
|
|
|
- <el-table-column label="操作" header-align="center" align="center" width="230">
|
|
|
- <template #default="scope">
|
|
|
- <el-button type="warning" size="small" plain @click="onObjectOAMRuleEdit(scope.row)">
|
|
|
- 编辑
|
|
|
- </el-button>
|
|
|
- <el-button type="danger" size="small" plain @click="onObjectOAMRuleDelete(scope.row)">
|
|
|
- 删除
|
|
|
- </el-button>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- </el-table>
|
|
|
- </page-main>
|
|
|
- </div>
|
|
|
- </LayoutContainer>
|
|
|
+ <template #right>
|
|
|
+ <el-input v-model="state.search.keywords" placeholder="请输入名称,支持模糊查询" style="padding-right: 10px;" clearable />
|
|
|
+ <el-button type="primary" @click="onObjectOAMRuleSearch">
|
|
|
+ <template #icon>
|
|
|
+ <el-icon>
|
|
|
+ <svg-icon name="i-ep:search" />
|
|
|
+ </el-icon>
|
|
|
+ </template>
|
|
|
+ </el-button>
|
|
|
+
|
|
|
+ <el-button type="primary" size="default" @click.stop="onObjectOAMRuleAdd">
|
|
|
+ <template #icon>
|
|
|
+ <el-icon>
|
|
|
+ <svg-icon name="i-ep:plus" />
|
|
|
+ </el-icon>
|
|
|
+ </template>
|
|
|
+ 业务规则
|
|
|
+ </el-button>
|
|
|
+ </template>
|
|
|
+ </tool-bar>
|
|
|
+
|
|
|
+ <el-table ref="objectRuleTableRef" v-loading="state.loading" class="list-table" :data="state.objectOamRuleList" border stripe highlight-current-row height="100%">
|
|
|
+ <el-table-column type="index" label="序号" header-align="center" align="center" width="70" />
|
|
|
+
|
|
|
+ <el-table-column prop="objectTitle" label="名称" header-align="center" align="center" width="200">
|
|
|
+ <template #default="scope">
|
|
|
+ <el-icon>
|
|
|
+ <svg-icon name="lucide:clipboard-check" />
|
|
|
+ </el-icon>
|
|
|
+ <span> {{ scope.row.objectTitle }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+
|
|
|
+ <el-table-column prop="ruleTitle" label="规则" header-align="center" align="center" width="150" />
|
|
|
+
|
|
|
+ <el-table-column label="操作" header-align="center" align="center" width="230">
|
|
|
+ <template #default="scope">
|
|
|
+ <el-button type="warning" size="small" plain @click="onObjectOAMRuleEdit(scope.row)">
|
|
|
+ 编辑
|
|
|
+ </el-button>
|
|
|
+ <el-button type="danger" size="small" plain @click="onObjectOAMRuleDelete(scope.row)">
|
|
|
+ 删除
|
|
|
+ </el-button>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ </el-table>
|
|
|
+ </el-tab-pane>
|
|
|
+ </el-tabs>
|
|
|
+ </div>
|
|
|
+ </LayoutContainer>
|
|
|
+ </div>
|
|
|
+ <ObjectOAMComponent ref="objectOAMRef" @success="getOAMTree" />
|
|
|
+ <ObjectOAMRuleComponent ref="objectOAMRuleRef" @success="getObjectOAMRuleList" />
|
|
|
</div>
|
|
|
- <ObjectOAMComponent ref="objectOAMRef" @success="getOAMTree" />
|
|
|
- <ObjectOAMRuleComponent ref="objectOAMRuleRef" @success="getObjectOAMRuleList" />
|
|
|
</template>
|
|
|
|
|
|
<style lang="scss" scoped>
|
|
|
.absolute-container {
|
|
|
+ position: absolute;
|
|
|
+ width: 100%;
|
|
|
+ height: 100%;
|
|
|
+ display: flex;
|
|
|
+ flex-direction: column;
|
|
|
+
|
|
|
.page-header {
|
|
|
margin-bottom: 0;
|
|
|
}
|
|
|
|
|
|
+ .page-main {
|
|
|
+ // 让 page-main 的高度自适应
|
|
|
+ flex: 1;
|
|
|
+ overflow: auto;
|
|
|
+ display: flex;
|
|
|
+ flex-direction: column;
|
|
|
+
|
|
|
+ .flex-container {
|
|
|
+ position: static;
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+.flex-container{
|
|
|
:deep(.left-side) {
|
|
|
display: flex;
|
|
|
flex-direction: column;
|
|
|
height: 100%;
|
|
|
-
|
|
|
- .btns {
|
|
|
+ .search{
|
|
|
+ margin: 15px 0;
|
|
|
+ }
|
|
|
+ .btns {
|
|
|
display: inline-flex;
|
|
|
width: 100%;
|
|
|
|
|
|
@@ -343,7 +430,7 @@ const onObjectOAMRuleDelete = (row: { bizId: number; objectId: number; oamId: nu
|
|
|
|
|
|
.el-tree {
|
|
|
.el-tree-node__content {
|
|
|
- height: 40px;
|
|
|
+ height: 60px;
|
|
|
}
|
|
|
|
|
|
.is-current > .el-tree-node__content {
|
|
|
@@ -360,33 +447,30 @@ const onObjectOAMRuleDelete = (row: { bizId: number; objectId: number; oamId: nu
|
|
|
justify-content: center;
|
|
|
|
|
|
.label {
|
|
|
- display: inline-flex;
|
|
|
- align-items: center;
|
|
|
width: calc(100% - 10px);
|
|
|
color: var(--el-text-color-primary);
|
|
|
+ padding: 10px;
|
|
|
+
|
|
|
+ @include text-overflow;
|
|
|
|
|
|
- .text {
|
|
|
- @include text-overflow;
|
|
|
+ .el-icon {
|
|
|
+ padding-top: 5px;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ .code {
|
|
|
+ padding-left: 20px;
|
|
|
+ width: calc(100% - 10px);
|
|
|
+ color: var(--el-text-color-placeholder);
|
|
|
+
|
|
|
+ @include text-overflow;
|
|
|
+ }
|
|
|
+
|
|
|
&:hover {
|
|
|
.actions {
|
|
|
display: block;
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
- .actions {
|
|
|
- display: none;
|
|
|
- position: absolute;
|
|
|
- right: 10px;
|
|
|
- top: 50%;
|
|
|
- transform: translateY(-50%);
|
|
|
-
|
|
|
- .el-button {
|
|
|
- padding: 5px 8px;
|
|
|
- }
|
|
|
- }
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
@@ -414,11 +498,4 @@ const onObjectOAMRuleDelete = (row: { bizId: number; objectId: number; oamId: nu
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
-.demo-tabs > .el-tabs__content {
|
|
|
- padding: 22px;
|
|
|
- color: #6b778c;
|
|
|
- font-size: 32px;
|
|
|
- font-weight: 600;
|
|
|
-}
|
|
|
</style>
|