|
@@ -74,7 +74,7 @@
|
|
|
check-strictly
|
|
|
empty-text="暂无分类"
|
|
|
lazy
|
|
|
- :load="handleTreeLoad"
|
|
|
+ :load="getLazyTreeData"
|
|
|
@node-expand="handleNodeExpand"
|
|
|
@node-collapse="handleNodeCollapse"
|
|
|
@current-change="nodeChange"
|
|
@@ -119,7 +119,7 @@
|
|
|
alt=""
|
|
|
style="width: 14px; height: 14px; margin-right: 8px"
|
|
|
@click.stop="addNode(node, data)"
|
|
|
- v-if="node.level === 1 && role === 'admin'"
|
|
|
+ v-if="(node.level === 1||node.level === 2) && role === 'admin'"
|
|
|
/>
|
|
|
<img
|
|
|
src="~@/assets/img/set_m/edit.png"
|
|
@@ -897,7 +897,7 @@ export default {
|
|
|
(item) => item.ChartInfoId === newval
|
|
|
);
|
|
|
// 查找图表的父级id
|
|
|
- let arr = this.findParentNodeForClassifyId(search_obj.ChartClassifyId,search_obj.UniqueCode);
|
|
|
+ let arr = this.findParentNodeHandle(this.treeData,search_obj.ChartClassifyId);
|
|
|
this.defaultShowNodes = arr;
|
|
|
this.select_node = search_obj.UniqueCode;
|
|
|
|
|
@@ -1165,7 +1165,7 @@ export default {
|
|
|
: node.level === 2
|
|
|
? data.ChartClassifyName
|
|
|
: node.parent.data.ChartClassifyName,
|
|
|
- // level_3: node.level === 3 ? data.ChartClassifyName : '',
|
|
|
+ level_3: node.level === 3 ? data.ChartClassifyName : '',
|
|
|
classify_id: data.ChartClassifyId,
|
|
|
level: node.level,
|
|
|
};
|
|
@@ -1267,7 +1267,7 @@ export default {
|
|
|
return item === code;
|
|
|
});
|
|
|
// console.log(flag)
|
|
|
- !flag && this.defaultShowNodes.push(code);
|
|
|
+ !flag && code && this.defaultShowNodes.push(code);
|
|
|
sessionStorage.removeItem('expandCode');
|
|
|
}
|
|
|
},
|
|
@@ -1295,12 +1295,18 @@ export default {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- //三级指标层
|
|
|
+ //三级目录
|
|
|
if(draggingNode.level===3){
|
|
|
if((dropNode.level===2&&type==='inner')||(dropNode.level===3&&type!=='inner')){
|
|
|
canDrop=true
|
|
|
}
|
|
|
}
|
|
|
+ //四级指标层
|
|
|
+ if(draggingNode.level===4){
|
|
|
+ if((dropNode.level===3&&type==='inner')||(dropNode.level===4&&type!=='inner')){
|
|
|
+ canDrop=true
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
return canDrop;
|
|
|
},
|
|
@@ -1309,17 +1315,17 @@ export default {
|
|
|
// console.log(i, a);
|
|
|
// 被拖拽节点对应的 Node、结束拖拽时最后进入的节点、被拖拽节点的放置位置
|
|
|
// 一/二级目录
|
|
|
- if (b.level === 1 || b.level === 2) {
|
|
|
+ if (b.level === 1 || b.level === 2||b.level===3) {
|
|
|
this.handleMoveCatalogue(b, a, i, e)
|
|
|
}
|
|
|
|
|
|
// 指标层
|
|
|
- if (b.level === 3) {
|
|
|
+ if (b.level === 4) {
|
|
|
this.handleMoveChart(b, a, i, e)
|
|
|
}
|
|
|
},
|
|
|
|
|
|
- // 移动的为一、二级目录
|
|
|
+ // 移动的为一、二、三级目录
|
|
|
handleMoveCatalogue(b,a,i,e){
|
|
|
let list=a.parent.childNodes,targetIndex=0,PrevClassifyId=0,NextClassifyId=0,ParentClassifyId=0;
|
|
|
|
|
@@ -1350,6 +1356,15 @@ export default {
|
|
|
ParentClassifyId=a.data.ParentId
|
|
|
}
|
|
|
}
|
|
|
+ if(b.level===3){
|
|
|
+ if(i==='inner'){
|
|
|
+ ParentClassifyId=a.data.ChartClassifyId
|
|
|
+ PrevClassifyId=0
|
|
|
+ NextClassifyId=a.data.Children.length>1?a.data.Children[1].ChartClassifyId:0
|
|
|
+ }else{
|
|
|
+ ParentClassifyId=a.data.ParentId
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
dataBaseInterface.chartClassifyMove({
|
|
|
ClassifyId: b.data.ChartClassifyId,
|
|
@@ -1364,7 +1379,7 @@ export default {
|
|
|
});
|
|
|
},
|
|
|
|
|
|
- // 移动的为指标层 三级
|
|
|
+ // 移动的为指标层 四级
|
|
|
handleMoveChart(b,a,i,e){
|
|
|
let PrevChartInfoId=0,NextChartInfoId=0,targetIndex=0, list=a.parent.childNodes.map(_ => _.data)
|
|
|
if(i==='inner'){
|
|
@@ -1453,7 +1468,7 @@ export default {
|
|
|
},
|
|
|
// 树节点关闭
|
|
|
handleNodeCollapse(data) {
|
|
|
- this.defaultShowNodes.forEach((item, index) => {
|
|
|
+ this.defaultShowNodes.some((item, index) => {
|
|
|
if (item === data.UniqueCode) {
|
|
|
// 删除关闭节点
|
|
|
this.defaultShowNodes.length = index;
|
|
@@ -1500,6 +1515,40 @@ export default {
|
|
|
resolve([])
|
|
|
}
|
|
|
},
|
|
|
+ //绑定el-tree的load属性
|
|
|
+ getLazyTreeData (node,resolve,maxLevel=3){
|
|
|
+ if(node.level===0){
|
|
|
+ resolve(this.treeData)
|
|
|
+ }
|
|
|
+ if(node.level>0&&node.level<=maxLevel){
|
|
|
+ //获取对应层级的Child
|
|
|
+ resolve(node.data.Children||[])
|
|
|
+ }
|
|
|
+ if(node.level===maxLevel){
|
|
|
+ //调接口获取该分类下图表的数据
|
|
|
+ dataBaseInterface.getChartListForClassify({
|
|
|
+ ChartClassifyId:node.data.ChartClassifyId,
|
|
|
+ IsShowMe:this.isOnlyMe
|
|
|
+ }).then(res=>{
|
|
|
+ if(res.Ret===200){
|
|
|
+ let arr=res.Data.AllNodes||[]
|
|
|
+ arr=arr.map(item=>{
|
|
|
+ return {
|
|
|
+ ...item,
|
|
|
+ isLeaf:true
|
|
|
+ }
|
|
|
+ })
|
|
|
+ resolve(arr)
|
|
|
+ }else{
|
|
|
+ resolve([])
|
|
|
+ }
|
|
|
+ this.changeTreeNode()
|
|
|
+ })
|
|
|
+ }
|
|
|
+ if(node.level>maxLevel){
|
|
|
+ resolve([])
|
|
|
+ }
|
|
|
+ },
|
|
|
|
|
|
/* 获取图表详情信息 type为refresh刷新指标不存储时间 */
|
|
|
getChartInfo(type) {
|
|
@@ -1577,7 +1626,7 @@ export default {
|
|
|
//将指标添加进标签列表中
|
|
|
const {ChartNameEn,ChartName,ChartInfoId,UniqueCode,ChartClassifyId}=res.Data.ChartInfo
|
|
|
this.addLabel({code:UniqueCode,id:ChartInfoId,classifyId:ChartClassifyId,EdbName:ChartName,EdbNameEn:ChartNameEn,chartData:res.Data.ChartInfo})
|
|
|
- this.defaultShowNodes=this.findParentNodeForClassifyId(ChartClassifyId,UniqueCode)
|
|
|
+ this.defaultShowNodes=this.findParentNodeHandle(this.treeData,ChartClassifyId)
|
|
|
this.changeTreeNode()
|
|
|
}
|
|
|
|
|
@@ -1915,7 +1964,7 @@ export default {
|
|
|
// 查找选中的节点信息
|
|
|
let select_obj = chartData?chartData:await this.findNode(deep_arr, id);
|
|
|
// 查找图表的分类父级id
|
|
|
- let arr = this.findParentNodeForClassifyId(select_obj.ChartClassifyId, code); // 父的父的父-父的父-父
|
|
|
+ let arr = this.findParentNodeHandle(this.treeData,select_obj.ChartClassifyId); // 父的父的父-父的父-父
|
|
|
this.defaultShowNodes = arr;
|
|
|
this.select_node = code;
|
|
|
|
|
@@ -2001,7 +2050,7 @@ export default {
|
|
|
findParentNodeHandle(arr, id) {
|
|
|
// 遍历取父级code push数组
|
|
|
for (let i of arr) {
|
|
|
- if (i.UniqueCode === id) {
|
|
|
+ if (i.ChartClassifyId === id) {
|
|
|
return [i.UniqueCode];
|
|
|
}
|
|
|
if (i.Children) {
|