From d5129a9d3f2be1d73adbe0e4a7478e8f7e8fc9bc Mon Sep 17 00:00:00 2001
From: 田源 <lastanimals@163.com>
Date: 星期三, 06 十二月 2023 16:18:46 +0800
Subject: [PATCH] 菜单管理-从其它模板克隆对话框优化

---
 Source/UBCS-WEB/src/components/Theme/ThemeClassifyTrees.vue |  167 ++++++++++++++++++++++++++++++-------------------------
 1 files changed, 90 insertions(+), 77 deletions(-)

diff --git a/Source/UBCS-WEB/src/components/Theme/ThemeClassifyTrees.vue b/Source/UBCS-WEB/src/components/Theme/ThemeClassifyTrees.vue
index 32f60ef..8cbc96c 100644
--- a/Source/UBCS-WEB/src/components/Theme/ThemeClassifyTrees.vue
+++ b/Source/UBCS-WEB/src/components/Theme/ThemeClassifyTrees.vue
@@ -2,45 +2,49 @@
 <template>
   <el-container>
     <!--    宸︿晶鑿滃崟-->
-    <el-aside>
+    <el-aside style="width: 20%;">
       <basic-container>
-        <div>
-          <div>
-            <div style="display: flex; flex-direction: column;">
-              <div style="display: flex;">
-                <el-button v-if="permissionList.TreeAddStatus" plain size="small" type="primary" @click="TreeAdd">娣诲姞
+        <el-collapse accordion>
+          <el-collapse-item style="padding-left: 3px;">
+            <template slot="title">
+              <div style="display: flex;justify-content: space-around;">
+                <el-button v-if="permissionList.TreeAddStatus" plain size="mini" type="primary" @click="TreeAdd">娣诲姞
                 </el-button>
-                <el-button v-if="permissionList.TreeEditStatus" plain size="small" type="primary" @click="TreeEdit">淇敼
+                <el-button v-if="permissionList.TreeEditStatus" plain size="mini" type="primary" @click="TreeEdit">淇敼
                 </el-button>
-                <el-button v-if="permissionList.TreeDelStatus" plain size="small" type="primary" @click="TreeDel">鍒犻櫎
+                <el-button v-if="permissionList.TreeDelStatus" plain size="mini" type="primary" @click="TreeDel">鍒犻櫎
                 </el-button>
-                <el-button v-if="permissionList.flushedStatus" plain size="small" type="primary" @click="flushed">鍒锋柊
+                <el-button v-if="permissionList.flushedStatus" plain size="mini" type="primary" @click="flushed">鍒锋柊
                 </el-button>
               </div>
-              <div style="display: flex; margin-top: 10px">
-                <el-button v-if="permissionList.EnableStatus" plain size="small" type="primary" @click="Enable">鍚敤
-                </el-button>
-                <el-button v-if="permissionList.DeactivateStatus" plain size="small" type="primary" @click="Deactivate">
-                  鍋滅敤
-                </el-button>
-                <el-button v-if="permissionList.ImportExcelStatus" plain size="small" type="primary"
-                           @click.native="ImportExcel">瀵煎叆
-                </el-button>
-                <el-button v-if="permissionList.ExportExcelStatus" plain size="small" type="primary"
-                           @click="ExportExcel">瀵煎嚭
-                </el-button>
-              </div>
+            </template>
+            <div>
+              <el-button v-if="permissionList.EnableStatus" plain size="mini" type="primary" @click="Enable">鍚敤
+              </el-button>
+              <el-button v-if="permissionList.DeactivateStatus" plain size="mini" type="primary" @click="Deactivate">
+                鍋滅敤
+              </el-button>
+              <el-button v-if="permissionList.ImportExcelStatus" plain size="mini" type="primary"
+                         @click.native="ImportExcel">瀵煎叆
+              </el-button>
+              <el-button v-if="permissionList.ExportExcelStatus" plain size="mini" type="primary"
+                         @click="ExportExcel">瀵煎嚭
+              </el-button>
             </div>
-            <div style="display: flex;justify-content: space-around;margin-top: 5px;margin-bottom: 5px">
+            <div style="margin-top: 10px;margin-bottom: 10px">
+              <el-button v-if="permissionList.ExportExcelStatus" plain size="mini" type="primary" @click="testHandler">娴佹按澶勭悊
+              </el-button>
             </div>
-          </div>
+          </el-collapse-item>
+        </el-collapse>
+
           <!--          宸︿晶鏍�-->
-          <div style="height: calc(100vh - 230px);overflow: auto">
+          <div style="height: calc(100vh - 194px);overflow: auto;">
             <avue-tree ref="tree" v-model="CloneTreeAvueform" v-loading="loading" :data="CloneTreedata"
                        :defaultExpandAll="false"
                        :option="Treeoption"
                        class="classifyTree"
-                       style="height: calc(100vh - 280px)"
+                       style="height: calc(100vh - 280px);"
                        @node-click="nodeClick"
             >
             </avue-tree>
@@ -102,7 +106,6 @@
                               :nodeList="nodeList" @MasterHandler="MasterHandler" @flushed="flushed"
                               @referTreeForm="referTreeForm"></classifyTreeform>
           </el-dialog>
-        </div>
       </basic-container>
     </el-aside>
     <el-main>
@@ -423,7 +426,8 @@
   upVersion,
   stopLose,
   startRelease,
-  exportClassify
+  exportClassify,
+  flowingDependencyGen
 } from "@/api/template/templateAttr";
 import {defaultReferDataGrid, referDataGrid} from '@/api/MasterData/master'
 import func from "@/util/func";
@@ -433,6 +437,7 @@
   name: "classifyTrees.vue",
   data() {
     return {
+      activeName: 'first',
       masterRow: null,
       AddLoading: false,
       // 瀹氫箟涓�涓彉閲忔潵淇濆瓨鏍戣姹傜殑鏁伴噺
@@ -879,6 +884,21 @@
   created() {
   },
   methods: {
+    handleTabClick(){
+
+    },
+    testHandler(){
+      if(this.nodeClickList.length <=0 ){
+        this.$message.warning('璇疯嚦灏戦�夋嫨涓�鏉℃暟鎹紒')
+        return;
+      }
+      console.log(this.nodeClickList.oid)
+      flowingDependencyGen(this.nodeClickList.oid).then(res => {
+        this.$message.success('鎿嶄綔鎴愬姛')
+      }).catch(res => {
+        this.$message.error(res)
+      })
+    },
     // switch
     switchChange() {
       this.TreeAddform.isParticipateCheck = this.TreeAddform.codeKeyAttrValue === true ? 1 : 0;
@@ -1114,6 +1134,7 @@
     },
     //鍒嗙被鏍戞暟鎹鐞�
     getAttr() {
+      this.loading = true;
       return new Promise((resolve, reject) => {
         getAtrrList()
           .then(res => {
@@ -1132,6 +1153,7 @@
               }
               return item;
             });
+            this.loading = false;
             resolve(); // 瀹屾垚璇锋眰锛岃皟鐢╮esolve鏂规硶
           })
           .catch(error => {
@@ -1185,35 +1207,31 @@
       this.$refs.myForm.clearValidate();
     },
     //鏍戣妭鐐规坊鍔犱簨浠�
-    TreeAddHandler() {
+    async TreeAddHandler() {
       if ((!this.TreeAddform.id || !this.TreeAddform.name) || (this.TreeFlagCode && !this.TreeAddform.btmTypeName)) {
         this.$message.warning('璇疯緭鍏ュ唴瀹癸紒');
-      } else {
+        return;
+      }
+      try {
         const data = this.TreeAddform;
         this.$set(data, "parentCodeClassifyOid", this.nodeClickList.oid);
-        TreeSave(data)
-          .then(() => {
-            this.$message({
-              type: "success",
-              message: "娣诲姞鎴愬姛!",
-            });
-            Object.keys(this.TreeAddform).forEach(key => {
-              this.TreeAddform[key] = "";
-              this.TreeAddform.codeKeyAttrValue = true;
-              this.TreeAddform.isParticipateCheck = 1;
-            });
-            this.getAttr();
-            this.TreeAddFormVisible = false;
-            //娣诲姞瀹屾垚鍚庡彸渚ф竻绌�
-            this.ProData = [];
-            this.Formlist = [];
-          })
-          .catch((res) => {
-            this.$message({
-              type: "warning",
-              message: res,
-            });
-          });
+        await TreeSave(data)
+        this.$message.success("娣诲姞鎴愬姛!");
+        Object.keys(this.TreeAddform).forEach(key => {
+          this.TreeAddform[key] = "";
+        });
+        this.TreeAddform.codeKeyAttrValue = true;
+        this.TreeAddform.isParticipateCheck = 1;
+        this.getAttr();
+        this.TreeAddFormVisible = false;
+        //娣诲姞瀹屾垚鍚庡彸渚ф竻绌�
+        this.ProData = [];
+        this.Formlist = [];
+      } catch (res) {
+        this.$message({
+          type: "warning",
+          message: res,
+        });
       }
     },
     //鏍戣妭鐐瑰垹闄ゆ寜閽�
@@ -1284,20 +1302,12 @@
       }
     },
     //鏍戝埛鏂�
-    flushed() {
-      this.loading = true;
-      this.getAttr()
-        .then(() => {
-          this.loading = false;
-          this.$refs.tree.setCurrentKey(null);
-          this.nodeClickList = {}
-          this.TreeList = []
-          this.TreeFlagCode = true;
-        })
-        .catch(error => {
-          this.loading = false;
-          console.error(error);
-        });
+    async flushed() {
+        await this.getAttr()
+        this.$refs.tree.setCurrentKey(null);
+        this.nodeClickList = {}
+        this.TreeList = []
+        this.TreeFlagCode = true;
     },
     //鍚敤鍜屽仠鐢ㄩ兘鍏堝垽鏂姸鎬�
     //鍚敤
@@ -1321,12 +1331,14 @@
           type: 'warning'
         });
         if (confirmResult) {
-          await TreeEnable(this.nodeClickList);
-          this.$message({
-            type: 'success',
-            message: '鍚敤鎴愬姛!'
-          });
+          await TreeEnable(this.nodeClickList).then(res => {
+            this.$message({
+              type: 'success',
+              message: '鍚敤鎴愬姛!'
+            });
+          })
           await this.getAttr();
+
         } else {
           this.$message({
             type: 'info',
@@ -1362,11 +1374,12 @@
           type: 'warning'
         });
         if (confirmResult) {
-          await TreeDeactivate(this.nodeClickList);
-          this.$message({
-            type: 'success',
-            message: '鍋滅敤鎴愬姛!'
-          });
+          await TreeDeactivate(this.nodeClickList).then(res => {
+            this.$message({
+              type: 'success',
+              message: '鍋滅敤鎴愬姛!'
+            });
+          })
           this.nodeClickList['flag'] = true;
           await this.getAttr();
         } else {

--
Gitblit v1.9.3