From f7e33d69713a5145d19fde5792b422826bc14107 Mon Sep 17 00:00:00 2001
From: 田源 <lastanimals@163.com>
Date: 星期五, 09 六月 2023 18:10:12 +0800
Subject: [PATCH] 完善主题库定义

---
 Source/UBCS-WEB/src/components/Tree/classifyTrees.vue |  179 ++++++++++++++++++++++++++++++++++++++++-------------------
 1 files changed, 120 insertions(+), 59 deletions(-)

diff --git a/Source/UBCS-WEB/src/components/Tree/classifyTrees.vue b/Source/UBCS-WEB/src/components/Tree/classifyTrees.vue
index 4039188..13cd051 100644
--- a/Source/UBCS-WEB/src/components/Tree/classifyTrees.vue
+++ b/Source/UBCS-WEB/src/components/Tree/classifyTrees.vue
@@ -12,7 +12,6 @@
             <el-button plain size="small" type="primary" @click="flushed">鍒锋柊</el-button>
           </div>
           <div style="display: flex;justify-content: space-around;margin-top: 5px;margin-bottom: 5px">
-
           </div>
         </div>
         <!--        鏍戣妭鐐规坊鍔犲璇濇-->
@@ -50,9 +49,9 @@
         </el-dialog>
         <!--        淇敼瀵硅瘽妗�-->
         <el-dialog :visible.sync="TreeEditFormVisible" append-to-body title="淇敼鍒嗙被">
-          <classifyTreeform ref="childForm" :TreeNewForm="TreeList" :nodeList="nodeList"></classifyTreeform>
+          <classifyTreeform ref="childForm" :loneTreeNewForm="TreeList" :nodeList="nodeList"></classifyTreeform>
         </el-dialog>
-        <avue-tree ref="tree" v-model="TreeAvueform" v-loading="loading" :data="Treedata" :defaultExpandAll="false"
+        <avue-tree ref="tree" v-model="CloneTreeAvueform" v-loading="loading" :data="CloneTreedata" :defaultExpandAll="false"
                    :option="Treeoption"
                    style="height: 80.5vh;padding-top: 5px;padding-bottom: 30px"
                    @node-click=" nodeClick"
@@ -74,6 +73,8 @@
                           @row-save="CrudRowSave"
                           @row-del="CrudRowDel"
                           @row-update="CrudRowUpdata"
+                          :before-close="beforeClose"
+                          @select="selectHandle"
                >
             <template slot="menuLeft">
               <el-button plain size="small" type="primary" @click="FindFormVisible = true;">鏌ヨ</el-button>
@@ -118,12 +119,12 @@
                   <el-container>
                     <el-aside width="300px">
                       <div style="margin-bottom: 5px"><el-tag>涓婚搴撳垎绫�</el-tag></div>
+                      <!--                      鍏嬮殕妯℃澘鐨勬爲 娌跨敤棣栭〉鏍戠殑loading鍜宱ption锛屼絾鏄痙ata鍜寁-model缁戝畾鐨勬暟鎹垱寤轰竴涓柊鐨勫彉閲忥紝鍙﹀鐐瑰嚮鏂规硶涔熸槸閲嶆柊鑾峰彇鏉ユ搷浣滃厠闅嗘ā鏉跨殑鏁版嵁-->
                         <avue-tree ref="tree" v-model="TreeAvueform" v-loading="loading" :data="Treedata"
                                    :defaultExpandAll="false"
                                    :option="Treeoption"
                                    style="height: 50.5vh;margin-right: 10px"
-                                   @node-click=" nodeClick"
-                                   @check-change="checkChange"
+                                   @node-click="ClonenodeClick"
                         >
                         </avue-tree>
                     </el-aside>
@@ -168,7 +169,7 @@
           </avue-crud>
 
           </basic-container>
-          <templatePro :ProData="this.ProData"></templatePro>
+          <templatePro :ProData="this.ProData" :crudOid="this.crudOid" :crudArray="this.crudArray" :Formlist="this.Formlist"></templatePro>
         </span>
       </basic-container>
     </el-main>
@@ -187,7 +188,6 @@
   TreeObjcet,
   TreeEnable,
   TreeDeactivate,
-  importClassify,
   gridCodeClassifyTemplate,
   getObjectByOid,
   gridCodeClassifyTemplateAttr,
@@ -197,16 +197,50 @@
   editSave,
   copy
 } from "@/api/template/templateAttr";
-import done from "@/views/work/done";
 
 export default {
   name: "classifyTrees.vue",
   //浣跨敤inject鎺ユ敹鍙傛暟
   //Treeoption宸︿晶鏍戞柊澧炶〃鍗曢」 Treedata宸︿晶鏍戣妭鐐� 閰嶇疆椤� crudTreeOption鍙充晶琛ㄦ牸閰嶇疆椤� crudTreeData鍙充晶琛ㄦ牸鏄剧ず鍐呭
   //Treeform鍙充晶琛ㄥ崟閰嶇疆椤�
-  inject: ['crudTreeOption', "crudTreeData"],
+  inject: [, "crudTreeData"],
   data() {
     return {
+      //琛ㄦ牸option閰嶇疆椤�
+      crudTreeOption: {
+        index: true,
+        border: true,
+        height:180,
+        selection:true,
+        addBtn:this.addFlag,
+        column: [
+          {
+            label: "妯℃澘缂栧彿",
+            prop: "id"
+          },
+          {
+            label:"妯℃澘鍚嶇О",
+            prop:"name"
+          },
+          {
+            label: "妯℃澘鎻忚堪",
+            prop:"description"
+          },
+          {
+            label:"鐗堟湰鍙�",
+            prop:"revisionSeq"
+          },
+          {
+            label:"鐘舵��",
+            prop:"lcStatusText"
+          }
+        ]
+      },
+      addFlag:false,
+      // 琛ㄦ牸褰撳墠琛宨d
+      crudOid:"",
+      //琛ㄦ牸褰撳墠閫夋嫨鏁扮粍
+      crudArray:[],
       //妯℃澘灞炴�у睍绀哄唴瀹�
       ProData: [],
       //鍥炶溅閿悳绱㈢粦瀹氬��
@@ -244,6 +278,7 @@
       TreeAddFormVisible: false,
       //褰撳墠鐐瑰嚮椤�
       nodeClickList: "",
+      ClonenodeClickList:"",
       //鍒嗙被鍜屼富棰樺簱鐘舵��
       TreeFlag: false,
       //鏍戝姞杞�
@@ -264,7 +299,10 @@
       },
       //avue-tree鏁版嵁锛屾殏鏃舵病鏈変綔鐢紝閲岄潰鍔熻兘鐢╡lement鍐欎簡锛屽彧鐢╝vue鐨勪竴涓爲缁勪欢涓嶇敤鍐呯疆琛ㄥ崟浜嗐��
       TreeAvueform: {},
+      //鍏嬮殕鏍�
+      CloneTreeAvueform:{},
       Treedata: [],
+      CloneTreedata:[],
       Treeoption: {
         addBtn: false,
         editBtn: false,
@@ -290,7 +328,7 @@
       CloneSelectOptions: [{
         value: '0',
         label: '妯℃澘缂栧彿'
-        },
+      },
         {
           value: '1',
           label: '妯℃澘鍚嶇О'
@@ -343,7 +381,7 @@
           },
           {
             label: "妯℃澘鍚嶇О",
-            prop: "name"
+            prop: "name",
           },
           {
             label: "妯℃澘鎻忚堪",
@@ -397,22 +435,28 @@
     this.getAttr();
   },
   methods: {
+    //琛屽崟閫変簨浠�
+    selectHandle(selection,row){
+      this.crudOid=row.oid
+      this.crudArray=selection
+    },
     //鍒嗙被鏍戞暟鎹鐞�
     getAttr() {
       getAtrrList().then(res => {
         this.Treedata = res.data;
+        this.CloneTreedata = res.data;
         this.Treedata.forEach(() => {
           for (let i = 0; i < this.Treedata.length; i++) {
             this.Treedata[i].value = i;
           }
         })
         //璋冪敤淇敼灞炴�у悕鏂规硶
-        this.ModifyProperties(this.Treedata, 'text', 'label');
+        this.ModifyProperties(this.CloneTreedata, 'name', 'label');
       }).catch(res => {
         this.$message.error(res)
       })
     },
-    //瀹氫箟涓�涓慨鏀瑰璞″睘鎬у悕鐨勬柟娉� 杩欓噷鍒敼锛侊紒锛佸ソ鍍忔槸鍚庡彴鎺ュ彛鏁版嵁瀛楁涓嶄竴鑷达紝娣诲姞鐨勬柟娉曘�傚叿浣撲粈涔堝師鍥犳垜涔熷繕璁颁簡
+    //瀹氫箟涓�涓慨鏀规暟鎹睘鎬у悕鐨勬柟娉�
     ModifyProperties(obj, oldName, newName) {
       for (let key in obj) {
         if (key === oldName) {
@@ -541,7 +585,7 @@
           cancelButtonText: '鍙栨秷',
           type: 'warning'
         }).then(() => {
-          TreeEnable(this.nodeClickList).then((res) => {
+          TreeEnable(this.nodeClickList).then(() => {
             this.$message({
               type: 'success',
               message: '鍚敤鎴愬姛!'
@@ -569,7 +613,7 @@
           cancelButtonText: '鍙栨秷',
           type: 'warning'
         }).then(() => {
-          TreeDeactivate(this.nodeClickList).then((res) => {
+          TreeDeactivate(this.nodeClickList).then(() => {
             this.$message({
               type: 'success',
               message: '鍋滅敤鎴愬姛!'
@@ -598,34 +642,26 @@
         })
         //妯℃澘绠$悊琛ㄦ牸鏁版嵁
         await gridCodeClassifyTemplate({'conditionMap[codeclassifyoid]': data.oid}).then(res => {
-          if (this.CloneVisible != true) {
-            this.Formlist = res.data.data.filter(item => {
-              if (item.codeclassifyoid != "") {
-                this.codeClassifyOid = item.codeclassifyoid
-                return item.codeclassifyoid == this.nodeClickList.oid
-              }
-            })
-          } else {
-            this.CloneFormlist = res.data.data.filter(item => {
-              if (item.codeclassifyoid != "") {
-                this.codeClassifyOid = item.codeclassifyoid
-                return item.codeclassifyoid == this.nodeClickList.oid
-              }
+          this.Formlist = res.data.data.filter(item => {
+            if (item.codeclassifyoid != "") {
+              this.codeClassifyOid = item.codeclassifyoid
+              return item.codeclassifyoid == this.nodeClickList.oid
+            }
+          })
+          if(this.Formlist.length >0){
+            gridCodeClassifyTemplateAttr({'conditionMap[classifyTemplateOid]': this.Formlist[0].oid}).then(res => {
+              this.ProData = res.data.data;
+              console.log(this.ProData)
+            }).catch(res => {
+              this.$message.error(res)
             })
           }
-          gridCodeClassifyTemplateAttr({'conditionMap[classifyTemplateOid]': this.Formlist[0].oid}).then(res => {
-            this.ProData = res.data.data
-            console.log(this.ProData)
-          }).catch(res => {
-            this.$message.error(res)
-          })
         }).catch(res => {
           console.log(res)
         })
         //  鍩烘湰淇℃伅琛ㄥ崟鏁版嵁
         await getObjectByOid(this.nodeClickList.oid).then(res => {
-          this.TreeList = res.data.data
-          // eslint-disable-next-line no-const-assig
+          this.TreeList = res.data.data;
         }).catch(res => {
           this.$message.error(res)
         })
@@ -633,9 +669,22 @@
         console.log(error)
       }
     },
+    //鍏嬮殕妯℃澘鏍戠殑鐐瑰嚮鍒囨崲鏁版嵁
+    async ClonenodeClick(data){
+      this.ClonenodeClickList=data;
+      console.log("aaa",this.ClonenodeClickList.oid)
+      await gridCodeClassifyTemplate({'conditionMap[codeclassifyoid]': data.oid}).then(res=>{
+        this.CloneFormlist = res.data.data.filter(item => {
+          if (item.codeclassifyoid != "") {
+            this.codeClassifyOid = item.codeclassifyoid
+            return item.codeclassifyoid == this.ClonenodeClickList.oid
+          }
+        })
+      })
+    },
     //tab鏍忓垏鎹�
     handleChange(column) {
-      this.type = column
+      this.type = column;
     },
     // //楂樼骇鏌ヨ鎸夐挳
     // handleSelectChange(key) {
@@ -702,22 +751,24 @@
         this.Formlist = res.data.data
       })
     },
+
     //妯℃澘绠$悊琛ㄦ牸娣诲姞
     CrudRowSave(row,done) {
-      debugger
-      console.log(nodeClickList.length)
       if (this.nodeClickList.length <= 0) {
         this.$message({
           type: 'warning',
           message: '璇峰厛浠庢爲涓婇�夋嫨涓�鏉℃暟鎹�!'
         });
       } else {
-        console.log(this.nodeClickList)
         let codeClassifyOid = this.codeClassifyOid
         this.$set(row, "codeclassifyoid", codeClassifyOid)
-        addSave(row).then(res => {
+        addSave(row).then(() => {
+          this.$message({
+            type: "success",
+            message: "娣诲姞鎴愬姛!"
+          });
+          done(row)
           this.CrudRend()
-          done()
         }).catch(res => {
           this.$message({
             type: 'info',
@@ -727,19 +778,21 @@
       }
     },
     //妯℃澘绠$悊淇敼
-    CrudRowUpdata(row) {
+    CrudRowUpdata(row,index,done) {
       editSave(row).then(() => {
         this.CrudRend()
-      }).catch(res => {
         this.$message({
-          type: 'info',
-          message: res
+          type: "success",
+          message: "鎿嶄綔鎴愬姛!"
         });
+        done()
+      }).catch(res => {
+        console.log(res)
       })
     },
     //妯℃澘绠$悊鍒犻櫎
     CrudRowDel(row) {
-      deleteData(row).then(res => {
+      deleteData(row).then(()=> {
         this.CrudRend()
       }).catch(res => {
         this.$message({
@@ -777,7 +830,7 @@
     },
     //鍏嬮殕妯℃澘閫夋嫨纭畾
     Clonehandler(){
-      if(this.CloneFormlist.length <= 0){
+      if(this.CloneSelect.length <= 0){
         this.$message({
           type: 'warning',
           message: '璇烽�夋嫨瑕佸厠闅嗙殑妯℃澘!'
@@ -788,7 +841,8 @@
           message: '鍙兘閫夋嫨涓�鏉℃暟鎹�!'
         });
       } else {
-        this.CloneinnerVisible=true
+        this.CloneinnerVisible=true;
+
       }
     },
     //鐐瑰嚮浠庡叾瀹冩ā鏉垮厠闅�
@@ -804,16 +858,27 @@
     },
     //鍏嬮殕妯℃澘鍗曢�夋鏀瑰彉
     selectionChange(row){
-      console.log(row)
-      this.CloneSelect=row
+      this.CloneSelect=row;
+      //鍙屽悜缁戝畾锛屾彁浜よ〃鍗曡緭鍏ユ鍥炲~涓婂綋鍓嶉�夋嫨鐨勬暟鎹�
       this.CloneModel.id=row[0].id;
       this.CloneModel.name=row[0].name;
+      //杩欓噷鏈夌偣缁曪紝CloneSelect鏄垜閫夋嫨妗嗛�夋嫨鐨勬暟鎹�傜瓑浜巘his.nodeClickList.oid鏄洜涓猴紝鍏嬮殕妯℃澘浼犻�掓暟鎹鎶婂綋鍓嶉�夋嫨鏍戠殑oid浼犻�掔粰鍚庣銆傝�屼笉鏄綋鍓嶈鍏嬮殕妯℃澘鐨刼id
+      this.CloneSelect[0].codeclassifyoid=this.nodeClickList.oid
     },
     //鍏嬮殕琛ㄥ崟鎻愪氦
-    Clonesubmit(done){
-      copy(this.CloneSelect[0]).then(res=>{
-        console.log(res)
-        done()
+    Clonesubmit(row,done){
+      //閲嶆柊璧嬪�糃loneSelect浼犻�掔殑鏁版嵁涓鸿緭鍏ユ鍙互淇敼鐨勬暟鎹紝CloneModel鎻愪氦琛ㄥ崟杈撳叆妗嗗弻鍚戠粦瀹氭暟鎹�
+      this.CloneSelect[0].id=this.CloneModel.id;
+      this.CloneSelect[0].name=this.CloneModel.name;
+      copy(this.CloneSelect[0]).then(()=>{
+        //鍥犱负鏄祵濂楀脊绐楁墍浠ユ墜鍔ㄥ叧闂瑿loneinnerVisible锛孋loneVisible涓や釜寮圭獥銆�
+        this.CloneinnerVisible=false
+        this.CloneVisible=false
+        this.$message.success("澶嶅埗鎴愬姛")
+        this.CrudRend()
+        done(row)
+      }).catch(res=>{
+        done(res)
       })
     },
     //鍒锋柊
@@ -831,10 +896,6 @@
       setTimeout(() => {
         this.FormLoing = false
       }, 600);
-    },
-    // 宸︽爲澶氶��
-    checkChange(val) {
-      console.log(val)
     },
   }
 }

--
Gitblit v1.9.3