|
@@ -67,7 +67,7 @@
|
|
:allow-drop="canDropHandle"
|
|
:allow-drop="canDropHandle"
|
|
:current-node-key="select_node"
|
|
:current-node-key="select_node"
|
|
:default-expanded-keys="defaultShowNodes"
|
|
:default-expanded-keys="defaultShowNodes"
|
|
- draggable
|
|
|
|
|
|
+ :draggable="!isEdbBtnShow('moveCatalog')"
|
|
:expand-on-click-node="false"
|
|
:expand-on-click-node="false"
|
|
check-strictly
|
|
check-strictly
|
|
empty-text="暂无目录"
|
|
empty-text="暂无目录"
|
|
@@ -119,7 +119,7 @@
|
|
alt=""
|
|
alt=""
|
|
style="width: 14px; height: 14px; margin-right: 8px"
|
|
style="width: 14px; height: 14px; margin-right: 8px"
|
|
@click.stop="addNode(node,data)"
|
|
@click.stop="addNode(node,data)"
|
|
- v-if="data.Button.AddButton&&isEdbBtnShow('editCatalog')"
|
|
|
|
|
|
+ v-if="data.Button.AddButton&&isEdbBtnShow('editCatalog')&&node.level<6"
|
|
/>
|
|
/>
|
|
<!-- 编辑节点 如果是分类,判断data.Button.OpButton不变;如果是指标,不显示(ETA1.0.3) -->
|
|
<!-- 编辑节点 如果是分类,判断data.Button.OpButton不变;如果是指标,不显示(ETA1.0.3) -->
|
|
<img
|
|
<img
|
|
@@ -485,7 +485,6 @@ import EdbLabelList from '@/components/edbLabelList.vue';
|
|
import chartTrendRender from './databaseComponents/chartTrendRender.vue';
|
|
import chartTrendRender from './databaseComponents/chartTrendRender.vue';
|
|
import edbDetailData from './databaseComponents/edbDetailData.vue';
|
|
import edbDetailData from './databaseComponents/edbDetailData.vue';
|
|
import SmoothEdbDialog from './databaseComponents/smoothEdbDialog.vue';
|
|
import SmoothEdbDialog from './databaseComponents/smoothEdbDialog.vue';
|
|
-import targetTree from './components/targetTree.vue';
|
|
|
|
export default {
|
|
export default {
|
|
name: '',
|
|
name: '',
|
|
components: {
|
|
components: {
|
|
@@ -510,7 +509,6 @@ export default {
|
|
chartTrendRender,
|
|
chartTrendRender,
|
|
edbDetailData,
|
|
edbDetailData,
|
|
SmoothEdbDialog,
|
|
SmoothEdbDialog,
|
|
- targetTree
|
|
|
|
},
|
|
},
|
|
directives: {
|
|
directives: {
|
|
drag(el, bindings) {
|
|
drag(el, bindings) {
|
|
@@ -791,6 +789,7 @@ export default {
|
|
|
|
|
|
'editCatalog':edbDataPermission.edbData_classifyOpt_add,//添加编辑目录
|
|
'editCatalog':edbDataPermission.edbData_classifyOpt_add,//添加编辑目录
|
|
'deleteCatalog':edbDataPermission.edbData_classifyOpt_delete,//删除目录
|
|
'deleteCatalog':edbDataPermission.edbData_classifyOpt_delete,//删除目录
|
|
|
|
+ 'moveCatalog':edbDataPermission.edbData_classifyOpt_move,//删除目录
|
|
'checkRelatedChart':edbDataPermission.edbData_checkRelatedChart,//查看关联图表
|
|
'checkRelatedChart':edbDataPermission.edbData_checkRelatedChart,//查看关联图表
|
|
'checkRelatedEdb':edbDataPermission.edbData_checkRelatedEdb,//查看关联指标
|
|
'checkRelatedEdb':edbDataPermission.edbData_checkRelatedEdb,//查看关联指标
|
|
'checkCalcChart':edbDataPermission.edbData_checkCalcChart,//查看计算指标
|
|
'checkCalcChart':edbDataPermission.edbData_checkCalcChart,//查看计算指标
|
|
@@ -855,11 +854,15 @@ export default {
|
|
//将指标添加进标签列表中
|
|
//将指标添加进标签列表中
|
|
const {EdbNameEn,EdbName,EdbInfoId,UniqueCode,ClassifyId}=res.Data.Item
|
|
const {EdbNameEn,EdbName,EdbInfoId,UniqueCode,ClassifyId}=res.Data.Item
|
|
this.addLabel({code:UniqueCode,id:EdbInfoId,classifyId:ClassifyId,EdbName,EdbNameEn})
|
|
this.addLabel({code:UniqueCode,id:EdbInfoId,classifyId:ClassifyId,EdbName,EdbNameEn})
|
|
- this.defaultShowNodes=["82b85be0c8273579d9f3fb7f6e49335f","bda0a4909f21a54c418a9e5b541a0c16","f373231b9ac9fc5b077acabdd7bce2ea"]
|
|
|
|
- // let deep_arr = _.cloneDeep(this.treeData);
|
|
|
|
- // this.defaultShowNodes=this.findParentNodeHandle(deep_arr,ClassifyId).reverse()||[]
|
|
|
|
|
|
+ // 展开目录
|
|
|
|
+ this.defaultShowNodes=classify_arr.reverse().map(item=>item.UniqueCode)
|
|
//设置tree高亮
|
|
//设置tree高亮
|
|
- this.$refs.menuTree.setCurrentKey(UniqueCode);
|
|
|
|
|
|
+ this.$nextTick(()=>{
|
|
|
|
+ setTimeout(() => {
|
|
|
|
+ this.$refs.menuTree.setCurrentKey(UniqueCode);
|
|
|
|
+ }, 1000);
|
|
|
|
+ })
|
|
|
|
+
|
|
|
|
|
|
}else {
|
|
}else {
|
|
this.tableData = [];
|
|
this.tableData = [];
|
|
@@ -895,7 +898,7 @@ export default {
|
|
if(overBottom){
|
|
if(overBottom){
|
|
parent.scrollTop = node.offsetTop - parent.offsetHeight/2
|
|
parent.scrollTop = node.offsetTop - parent.offsetHeight/2
|
|
}
|
|
}
|
|
- },400)
|
|
|
|
|
|
+ },1500)
|
|
})
|
|
})
|
|
|
|
|
|
}
|
|
}
|
|
@@ -1153,7 +1156,7 @@ export default {
|
|
},
|
|
},
|
|
/* 添加节点 */
|
|
/* 添加节点 */
|
|
addNode(node,data) {
|
|
addNode(node,data) {
|
|
- // console.log(node);
|
|
|
|
|
|
+ console.log(node);
|
|
this.dialog_title = '添加';
|
|
this.dialog_title = '添加';
|
|
let arr=[]
|
|
let arr=[]
|
|
arr=this.getNodeParentData(node,arr)
|
|
arr=this.getNodeParentData(node,arr)
|
|
@@ -1173,6 +1176,7 @@ export default {
|
|
},
|
|
},
|
|
/* 编辑节点 */
|
|
/* 编辑节点 */
|
|
editNode(node,data) {
|
|
editNode(node,data) {
|
|
|
|
+ // console.log(node);
|
|
this.dialog_title = '编辑';
|
|
this.dialog_title = '编辑';
|
|
if(data.EdbCode) {
|
|
if(data.EdbCode) {
|
|
/* 编辑指标 */
|
|
/* 编辑指标 */
|
|
@@ -1180,15 +1184,15 @@ export default {
|
|
EdbInfoId: data.EdbInfoId
|
|
EdbInfoId: data.EdbInfoId
|
|
}).then(res => {
|
|
}).then(res => {
|
|
if(res.Ret === 200) {
|
|
if(res.Ret === 200) {
|
|
|
|
+ // 处理所在目录
|
|
|
|
+ let menuArrId=res.Data.ClassifyList&&res.Data.ClassifyList.map(item=>{
|
|
|
|
+ return item.ClassifyId
|
|
|
|
+ }).reverse()
|
|
this.dialogForm = {
|
|
this.dialogForm = {
|
|
parentArr:[],
|
|
parentArr:[],
|
|
level: 0,
|
|
level: 0,
|
|
levelVal: res.Data.EdbName,
|
|
levelVal: res.Data.EdbName,
|
|
- level_menu:[
|
|
|
|
- // node.parent.parent.parent.data.ClassifyId,
|
|
|
|
- // node.parent.parent.data.ClassifyId,
|
|
|
|
- // node.parent.data.ClassifyId
|
|
|
|
- ],
|
|
|
|
|
|
+ level_menu:menuArrId||[],
|
|
edbinfo_id: res.Data.EdbInfoId,
|
|
edbinfo_id: res.Data.EdbInfoId,
|
|
frequency:res.Data.Frequency,
|
|
frequency:res.Data.Frequency,
|
|
unit:res.Data.Unit,
|
|
unit:res.Data.Unit,
|
|
@@ -1347,16 +1351,14 @@ export default {
|
|
/* 判断节点是否能被拖入 */
|
|
/* 判断节点是否能被拖入 */
|
|
canDropHandle(draggingNode, dropNode, type) {
|
|
canDropHandle(draggingNode, dropNode, type) {
|
|
let canDrop=false
|
|
let canDrop=false
|
|
- console.log(dropNode,type);
|
|
|
|
-
|
|
|
|
|
|
|
|
// 如果拖动的是指标
|
|
// 如果拖动的是指标
|
|
if(draggingNode.data.EdbCode){
|
|
if(draggingNode.data.EdbCode){
|
|
- if(dropNode.level!==0){
|
|
|
|
|
|
+ if(!(dropNode.level===1&&type!=='inner')){
|
|
canDrop=true
|
|
canDrop=true
|
|
}
|
|
}
|
|
}else{//拖动的是目录
|
|
}else{//拖动的是目录
|
|
- console.log(dropNode.level,draggingNode.level);
|
|
|
|
|
|
+ // console.log(dropNode.level,draggingNode.level);
|
|
//目录只能拖动到层级比他大的里面去
|
|
//目录只能拖动到层级比他大的里面去
|
|
if(dropNode.level<draggingNode.level||(dropNode.level===draggingNode.level&&type!=='inner')){
|
|
if(dropNode.level<draggingNode.level||(dropNode.level===draggingNode.level&&type!=='inner')){
|
|
canDrop=true
|
|
canDrop=true
|
|
@@ -1367,119 +1369,75 @@ export default {
|
|
/* 拖拽完成 */
|
|
/* 拖拽完成 */
|
|
dropOverHandle(b,a,i,e) {
|
|
dropOverHandle(b,a,i,e) {
|
|
// 被拖拽节点对应的 Node、结束拖拽时最后进入的节点、被拖拽节点的放置位置
|
|
// 被拖拽节点对应的 Node、结束拖拽时最后进入的节点、被拖拽节点的放置位置
|
|
- if(b.data.EdbCode){//指标
|
|
|
|
- this.handleMoveEdb(b,a,i,e)
|
|
|
|
- }else{
|
|
|
|
- this.handleMoveCatalogue(b,a,i,e)
|
|
|
|
- }
|
|
|
|
- // if(b.level===1||b.level===2||b.level===3){
|
|
|
|
- // this.handleMoveCatalogue(b,a,i,e)
|
|
|
|
- // }
|
|
|
|
-
|
|
|
|
- // // 指标层
|
|
|
|
- // if(b.level===4){
|
|
|
|
- // this.handleMoveEdb(b,a,i,e)
|
|
|
|
- // }
|
|
|
|
- },
|
|
|
|
-
|
|
|
|
- // 移动的为一、二、三级目录
|
|
|
|
- handleMoveCatalogue(b,a,i,e){
|
|
|
|
- let list=a.parent.childNodes,targetIndex=0,PrevClassifyId=0,NextClassifyId=0,ParentClassifyId=0;
|
|
|
|
-
|
|
|
|
- list.forEach((item,index)=>{
|
|
|
|
- if(item.data.ClassifyId===b.data.ClassifyId){
|
|
|
|
- targetIndex=index
|
|
|
|
- return
|
|
|
|
- }
|
|
|
|
- })
|
|
|
|
-
|
|
|
|
- if(targetIndex===0){
|
|
|
|
- PrevClassifyId=0
|
|
|
|
- NextClassifyId=list[targetIndex+1].data.ClassifyId
|
|
|
|
- }else if(targetIndex===list.length-1){
|
|
|
|
- PrevClassifyId=list[targetIndex-1].data.ClassifyId
|
|
|
|
- NextClassifyId=0
|
|
|
|
- }else{
|
|
|
|
- PrevClassifyId=list[targetIndex-1].data.ClassifyId
|
|
|
|
- NextClassifyId=list[targetIndex+1].data.ClassifyId
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- if(b.level===2){
|
|
|
|
- if(i==='inner'){
|
|
|
|
- ParentClassifyId=a.data.ClassifyId
|
|
|
|
- PrevClassifyId=0
|
|
|
|
- NextClassifyId=a.data.Children.length>1?a.data.Children[1].ClassifyId:0
|
|
|
|
- }else{
|
|
|
|
- ParentClassifyId=a.data.ParentId
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- if(b.level===3){
|
|
|
|
- if(i==='inner'){
|
|
|
|
- ParentClassifyId=a.data.ClassifyId
|
|
|
|
- PrevClassifyId=0
|
|
|
|
- NextClassifyId=a.data.Children.length>1?a.data.Children[1].ClassifyId:0
|
|
|
|
- }else{
|
|
|
|
- ParentClassifyId=a.data.ParentId
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
|
|
+ console.log(b,a,i);
|
|
|
|
+ const isEDB=b.data.EdbCode?true:false
|
|
|
|
+ let list=a.parent.childNodes;
|
|
|
|
+ let targetIndex=0,PrevClassifyId=0,NextClassifyId=0,ParentClassifyId=0;
|
|
|
|
+ let ClassifyId=0,EdbInfoId=0,PrevEdbInfoId=0,NextEdbInfoId=0;
|
|
|
|
|
|
- dataBaseInterface.classifyMove({
|
|
|
|
- ClassifyId:b.data.ClassifyId,
|
|
|
|
- ParentClassifyId:ParentClassifyId,
|
|
|
|
- PrevClassifyId:PrevClassifyId,
|
|
|
|
- NextClassifyId:NextClassifyId
|
|
|
|
- }).then(res=>{
|
|
|
|
- if(res.Ret===200){
|
|
|
|
- this.$message.success('移动成功!')
|
|
|
|
- }
|
|
|
|
- this.getTreeData();
|
|
|
|
- })
|
|
|
|
- },
|
|
|
|
|
|
+ ClassifyId=isEDB?0:b.data.ClassifyId
|
|
|
|
+ EdbInfoId=isEDB?b.data.EdbInfoId:0
|
|
|
|
+ ParentClassifyId=a.parent.data.ClassifyId||0
|
|
|
|
|
|
- // 移动的为指标层 四级
|
|
|
|
- handleMoveEdb(b,a,i,e){
|
|
|
|
- let PrevEdbInfoId=0,NextEdbInfoId=0,targetIndex=0,list=a.parent.childNodes.map(_ => _.data)
|
|
|
|
- if(i==='inner'){
|
|
|
|
- PrevEdbInfoId=0
|
|
|
|
- NextEdbInfoId=a.data.Children.length>1?a.data.Children[1].EdbInfoId:0
|
|
|
|
- }else{
|
|
|
|
|
|
+ if(i!=='inner'){
|
|
list.forEach((item,index)=>{
|
|
list.forEach((item,index)=>{
|
|
- if(item.EdbInfoId===b.data.EdbInfoId){
|
|
|
|
- targetIndex=index
|
|
|
|
- return
|
|
|
|
|
|
+ if(isEDB){
|
|
|
|
+ if(item.data.EdbInfoId===b.data.EdbInfoId){
|
|
|
|
+ targetIndex=index
|
|
|
|
+ }
|
|
|
|
+ }else{
|
|
|
|
+ if(item.data.ClassifyId===b.data.ClassifyId){
|
|
|
|
+ targetIndex=index
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
+
|
|
})
|
|
})
|
|
|
|
|
|
|
|
+ console.log(targetIndex);
|
|
|
|
+
|
|
|
|
+
|
|
if(targetIndex===0){
|
|
if(targetIndex===0){
|
|
- PrevEdbInfoId=0
|
|
|
|
- NextEdbInfoId=list[targetIndex+1].EdbInfoId
|
|
|
|
|
|
+ const data=list[targetIndex+1].data
|
|
|
|
+ NextClassifyId=data.EdbCode?0:data.ClassifyId
|
|
|
|
+ NextEdbInfoId=data.EdbCode?data.EdbInfoId:0
|
|
}else if(targetIndex===list.length-1){
|
|
}else if(targetIndex===list.length-1){
|
|
- PrevEdbInfoId=list[targetIndex-1].EdbInfoId
|
|
|
|
- NextEdbInfoId=0
|
|
|
|
|
|
+ const data=list[targetIndex-1].data
|
|
|
|
+ PrevClassifyId=data.EdbCode?0:data.ClassifyId
|
|
|
|
+ PrevEdbInfoId=data.EdbCode?data.EdbInfoId:0
|
|
}else{
|
|
}else{
|
|
- PrevEdbInfoId=list[targetIndex-1].EdbInfoId
|
|
|
|
- NextEdbInfoId=list[targetIndex+1].EdbInfoId
|
|
|
|
|
|
+ const pData=list[targetIndex-1].data
|
|
|
|
+ PrevClassifyId=pData.EdbCode?0:pData.ClassifyId
|
|
|
|
+
|
|
|
|
+ PrevEdbInfoId=pData.EdbCode?pData.EdbInfoId:0
|
|
|
|
+
|
|
|
|
+ const nData=list[targetIndex+1].data
|
|
|
|
+ NextClassifyId=nData.EdbCode?0:nData.ClassifyId
|
|
|
|
+ NextEdbInfoId=nData.EdbCode?nData.EdbInfoId:0
|
|
}
|
|
}
|
|
- }
|
|
|
|
-
|
|
|
|
- dataBaseInterface.targetMove({
|
|
|
|
- ClassifyId: a.data.ClassifyId,
|
|
|
|
- EdbInfoId: b.data.EdbInfoId,
|
|
|
|
- PrevEdbInfoId:PrevEdbInfoId,
|
|
|
|
- NextEdbInfoId:NextEdbInfoId
|
|
|
|
- }).then(res => {
|
|
|
|
- if(res.Ret === 200) {
|
|
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ const params={
|
|
|
|
+ ClassifyId,
|
|
|
|
+ ParentClassifyId,
|
|
|
|
+ EdbInfoId,
|
|
|
|
+ PrevClassifyId,
|
|
|
|
+ NextClassifyId,
|
|
|
|
+ PrevEdbInfoId,
|
|
|
|
+ NextEdbInfoId
|
|
|
|
+ }
|
|
|
|
+ console.log(params);
|
|
|
|
+ dataBaseInterface.classifyMoveSort(params).then(res=>{
|
|
|
|
+ if(res.Ret===200){
|
|
this.$message.success('移动成功!')
|
|
this.$message.success('移动成功!')
|
|
}
|
|
}
|
|
- this.getTreeData();
|
|
|
|
|
|
+ this.getTreeData()
|
|
})
|
|
})
|
|
},
|
|
},
|
|
|
|
|
|
/* 拖拽覆盖添加背景色 */
|
|
/* 拖拽覆盖添加背景色 */
|
|
dropMouseOver(node1,node2,e) {
|
|
dropMouseOver(node1,node2,e) {
|
|
// 被拖拽节点对应的 Node、所进入节点对应的 Node、event
|
|
// 被拖拽节点对应的 Node、所进入节点对应的 Node、event
|
|
- if(((node1.level===2&&node2.level === 1)||(node1.level===3&&node2.level === 2)) && (e.target.childNodes[0].className.includes('el-tree-node__content')
|
|
|
|
|
|
+ if((node1.level>=node2.level) && (e.target.childNodes[0].className.includes('el-tree-node__content')
|
|
|| e.target.className.includes('el-tree-node__content'))) {
|
|
|| e.target.className.includes('el-tree-node__content'))) {
|
|
// console.log(e.target.childNodes[0])
|
|
// console.log(e.target.childNodes[0])
|
|
e.target.childNodes[0].className.includes('el-tree-node__content')
|
|
e.target.childNodes[0].className.includes('el-tree-node__content')
|
|
@@ -1646,6 +1604,12 @@ export default {
|
|
/* 设置回显计算指标的表单 */
|
|
/* 设置回显计算指标的表单 */
|
|
setComputedDialogForm(type,node,data,res,view=false) {
|
|
setComputedDialogForm(type,node,data,res,view=false) {
|
|
//指标运算 or 其他计算类型指标
|
|
//指标运算 or 其他计算类型指标
|
|
|
|
+
|
|
|
|
+ // 处理所在目录
|
|
|
|
+ let menuArrId=res.EdbInfoDetail.ClassifyList&&res.EdbInfoDetail.ClassifyList.map(item=>{
|
|
|
|
+ return item.ClassifyId
|
|
|
|
+ }).reverse()
|
|
|
|
+
|
|
if( type === 4 ) {
|
|
if( type === 4 ) {
|
|
/* 回显指标和表单 */
|
|
/* 回显指标和表单 */
|
|
const list = res.CalculateList;
|
|
const list = res.CalculateList;
|
|
@@ -1664,11 +1628,7 @@ export default {
|
|
this.calulateForm = {
|
|
this.calulateForm = {
|
|
edb_id:res.EdbInfoDetail.EdbInfoId,
|
|
edb_id:res.EdbInfoDetail.EdbInfoId,
|
|
formula: res.EdbInfoDetail.CalculateFormula,
|
|
formula: res.EdbInfoDetail.CalculateFormula,
|
|
- menu: [
|
|
|
|
- node.parent.parent.parent.data.ClassifyId,
|
|
|
|
- node.parent.parent.data.ClassifyId,
|
|
|
|
- data.ClassifyId
|
|
|
|
- ],
|
|
|
|
|
|
+ menu: menuArrId||[],
|
|
targetName: res.EdbInfoDetail.EdbName,
|
|
targetName: res.EdbInfoDetail.EdbName,
|
|
unit: res.EdbInfoDetail.Unit,
|
|
unit: res.EdbInfoDetail.Unit,
|
|
frequency: res.EdbInfoDetail.Frequency,
|
|
frequency: res.EdbInfoDetail.Frequency,
|
|
@@ -1683,11 +1643,7 @@ export default {
|
|
targetName: dataInfo.EdbName,
|
|
targetName: dataInfo.EdbName,
|
|
frequency: dataInfo.Frequency,
|
|
frequency: dataInfo.Frequency,
|
|
unit: dataInfo.Unit,
|
|
unit: dataInfo.Unit,
|
|
- menu: [
|
|
|
|
- node.parent.parent.parent.data.ClassifyId,
|
|
|
|
- node.parent.parent.data.ClassifyId,
|
|
|
|
- data.ClassifyId
|
|
|
|
- ],
|
|
|
|
|
|
+ menu: menuArrId||[],
|
|
view
|
|
view
|
|
}
|
|
}
|
|
|
|
|