Jelajahi Sumber

根据接口需求修改传参

gangyj 2 tahun lalu
induk
melakukan
bc39fe5a2a
1 mengubah file dengan 50 tambahan dan 9 penghapusan
  1. 50 9
      src/views/manager/archivetree.vue

+ 50 - 9
src/views/manager/archivetree.vue

@@ -259,7 +259,7 @@
                     ref="settree"
                     class="filter-tree"
                     show-checkbox :check-strictly="true"
-                    @check-change="handleCheckChange"
+                    @check="handleCheckChange"
                   >
                    <div class="custom-tree-node" slot-scope="{ node, data }"   @mouseover="mouseOver(data)"
                     @mouseleave="mouseLeave(data)">
@@ -688,7 +688,7 @@
             </div>
           </template>
           <template v-else>
-            <el-tree :data="configInfo.data.tree" :props="{label: 'nodeName'}" show-checkbox :check-strictly="true" :default-checked-keys="checkedKeys" :default-expanded-keys="checkedKeys" node-key="id" ref="configtree" class="config-allname"></el-tree>
+            <el-tree :data="configInfo.data.tree" :props="{label: 'nodeName'}" show-checkbox :check-strictly="true" :default-checked-keys="checkedKeys" :default-expanded-keys="checkedKeys" node-key="id" ref="configtree" @check="configCheckChange" class="config-allname"></el-tree>
           </template>
         </div>
         <div style="text-align: center;font-size: 22px;" v-else>
@@ -980,6 +980,8 @@ export default {
 
         configInfo:null,
         checkedKeys:[],//分类并卷 回显 勾选数组
+
+        treeSelectId:'',//选中的划分树
     }
   },
 
@@ -1065,11 +1067,14 @@ export default {
     },
 
     async viewConfig(data){
-       //console.log(data,'查看配置');
+       console.log(data,'查看配置');
        this.configInfo = null;
        const { data: res } = await  getArchiveAutoRule({
         nodeId:data.id,//归档树节点的id 或者 挂载wbs节点的ID(具体哪个ID待定)
-        iswbsNode:false,//是否是wbs节点 flase 不是 true 是 (先false,具体怎么区分后面再看
+        iswbsNode:data.iswbsNode,//是否是wbs节点
+        projectId:0,//   系统级为0  项目级为项目id
+        wbsNode2ArchiveTreeNodeId:data.wbsNode2ArchiveTreeNodeId,// 这个树节点里面有(iswbsNode为true需传)
+        wbsId:this.treeSelectId // 这个就是一开始上面选择划分树的id(iswbsNode为true需传)
        })
 
        if (res.code == 200 && res.msg == "操作成功") {
@@ -1086,8 +1091,21 @@ export default {
         this.configVisible=true
       }
      },
-     handleCheckChange(data, checked, indeterminate) {
-        console.log(data, checked, indeterminate);
+     handleCheckChange(data, checks) {
+        //console.log(data, checks);
+        let array = checks.checkedNodes;
+        for (let index = 1; index < array.length; index++) {
+          const element = array[index];
+          if(element.iswbsNode !== array[0].iswbsNode){
+            //取消勾选
+            this.$refs.settree.setChecked(data.id,false,false)
+            this.$message({
+              message: '非wbs节点不能和wbs节点一起设置规则',
+              type: 'warning'
+            });
+            return;
+          }
+        }
       },
      handleentrybtn(){
        console.log(this.entrybtn,'entrybtn');
@@ -1607,6 +1625,7 @@ export default {
 
     //切换树
     async treeIdChange(id){
+      this.treeSelectId = id;
       this.rightTreeLoading = true;
       const { data: res } = await archiveTreetree({
         projectId:0,
@@ -1635,7 +1654,8 @@ export default {
       const { data: res } = await saveArchiveAutoRule({
         archiveAutoType:this.archiveAutoType,//最高1  分类2  独立3
         selectNodeIds:this.checkList.join(','),//鼠标选择的节点ID(只要鼠标选择的节点,选择节点的下级子节点那种不要),逗号拼接
-        iswbsNode:false,//是否是wbs节点   flase 不是 true 是 (先false,具体怎么区分后面再看)
+        iswbsNode:this.nodesList[0].iswbsNode,//是否是wbs节点 
+        projectId:0,//   系统级为0  项目级为项目id
       })
 
       if (res.code == 200 && res.msg == "操作成功") {
@@ -1647,14 +1667,34 @@ export default {
       }
     },
 
+    //立卷树勾选修改
+    configCheckChange(data, checks){
+      let array = checks.checkedNodes;
+        for (let index = 1; index < array.length; index++) {
+          const element = array[index];
+          if(element.iswbsNode !== array[0].iswbsNode){
+            //取消勾选
+            this.$refs.configtree.setChecked(data.id,false,false)
+            this.$message({
+              message: '非wbs节点不能和wbs节点一起设置规则',
+              type: 'warning'
+            });
+            return;
+          }
+        }
+    },
+
     //立卷规则修改
     async changeConfig(){
       let keys = this.$refs.configtree.getCheckedKeys(true);
+      let nodes = this.$refs.configtree.getCheckedNodes();
+      console.log(nodes)
       const { data: res } = await updateArchiveAutoRule({
         archiveAutoType:2,//最高1  分类2  独立3
         archiveAutoGroupId:this.configInfo.data.archiveAutoGroupId,
         selectNodeIds:keys.join(','),//鼠标选择的节点ID(只要鼠标选择的节点,选择节点的下级子节点那种不要),逗号拼接
-        iswbsNode:false,//是否是wbs节点   flase 不是 true 是 (先false,具体怎么区分后面再看)
+        iswbsNode:nodes[0].iswbsNode,//是否是wbs节点 
+        projectId:0,//   系统级为0  项目级为项目id
       })
 
       if (res.code == 200 && res.msg == "操作成功") {
@@ -1674,7 +1714,8 @@ export default {
         }).then(() => {
           removeArchiveAutoRule({
             nodeId:data.id,
-            iswbsNode:false,//是否是wbs节点   flase 不是 true 是 (先false,具体怎么区分后面再看)
+            iswbsNode:data.iswbsNode,//是否是wbs节点   flase 不是 true 是 (先false,具体怎么区分后面再看)
+            projectId:0,//   系统级为0  项目级为项目id
           }).then((res)=>{
             //console.log(res)
             if (res.data.code == 200 && res.data.msg == "操作成功") {