Authored by 鲁尚清

【614】【资产视图】小型机整机类型属性配置--CMDB资源类型不能对其属性修改-确定保存配置后刷新树数据,设置当前选中的节点高亮显示 #1

... ... @@ -5,7 +5,8 @@
<div style="text-align: left;padding-left: 10px;padding-top: 3px;font-weight: bold">
<el-link type="info" :underline="false"><i class="iconfont icon-liebiao"></i> 资源类型</el-link>
</div>
<el-tree :data="treeData" :props="props" @node-click="handleConfigNodeClick">
<el-tree ref="resTree" node-key="id" :current-node-key="checkedKeys" :highlight-current="true"
:data="treeData" :props="props" @node-click="handleConfigNodeClick">
<template #default="{ node, data }">
{{node.label }}
</template>
... ...
... ... @@ -197,10 +197,21 @@ const treeNodeConfig = (currentNode) => {
/**
* 保存树节点配置
*/
//lsq 保存配置后刷新树数据 2022-06-17
//保存树节点配置前点击树节点的数据
let saveTreeNodeData=Vue.ref();
//选中的树节点数据
let checkedKeys=Vue.ref('');
let saveTreeNodeConfig = () => {
proxy.$http.get(`/api-web/v32/res/config/saveTreeConfig`, treeNodeForm.value, function (res) {
if (res && res.success) {
proxy.$global.showMsg("保存成功!")
proxy.$global.showMsg("保存成功!");
showTreeNodeDialog(false)
proxy.loadTree();
setTimeout(function (){
proxy.$refs.resTree.setCurrentKey(saveTreeNodeData.value);
checkedKeys.value=saveTreeNodeData.value.id;
},300)
}
});
}
... ... @@ -213,7 +224,9 @@ const treeNodeConfig = (currentNode) => {
treeNodeFormRules,
cmdbResTypeList,
getCmdbResTypeList,
cmdbSystemIsOpen
cmdbSystemIsOpen,
saveTreeNodeData,
checkedKeys
}
}
... ... @@ -340,7 +353,9 @@ export default {
treeNodeFormRules,
cmdbResTypeList,
getCmdbResTypeList,
cmdbSystemIsOpen
cmdbSystemIsOpen,
saveTreeNodeData,
checkedKeys
} = treeNodeConfig(currentNode);
const {
... ... @@ -367,12 +382,39 @@ export default {
treeData.value = arr
//treeData.value = res.data;
//lsq 是否是保存了树节点配置后 2022-06-17
if( saveTreeNodeData.value && res.data){
let arr=res.data;
arr.map(item=>{
if(item.id==saveTreeNodeData.value.id){
currentNode.value = item;
}
if(item.children && item.children.length>0){
let obj=getTreeData(item.children,saveTreeNodeData.value.id)
currentNode.value=obj;
}
})
}else{
currentNode.value = res.data[0];
}
getConfigData();
}
});
}
//lsq 循环比对树数据中的id 2022-06-17
let getTreeData=(children,id)=>{
let obj='';
children.map(item=>{
if(item.children && item.children.length>0){
getTreeData(item.children,id)
}
if(item.id==id){
obj= item
}
})
return obj;
}
let getConfigData = () => {
if (currentNode.value) {
... ... @@ -422,6 +464,7 @@ export default {
return;
}
currentNode.value = data;
saveTreeNodeData.value=data;
getConfigData();
getColType({});
}
... ... @@ -585,13 +628,17 @@ export default {
cmdbResTypeList,
getCmdbResTypeList,
cmdbSystemIsOpen,
saveTreeNodeData,
checkedKeys,
// 机房配置
machineRoomInfo,
getConfigList,
machineRoomDialog,
showMachineRoomDialog,
saveMachineRoomConfig
saveMachineRoomConfig,
loadTree
}
}
}
... ...