From 09d9c957b47c488c4b25c3a14c82ea71623be670 Mon Sep 17 00:00:00 2001
From: 王震 <10952869+daywangzhen@user.noreply.gitee.com>
Date: 星期二, 26 十二月 2023 11:03:48 +0800
Subject: [PATCH] Merge branch 'master' of http://114.132.189.42:9002/r/mes-ocea-before

---
 src/views/technology/routing/index.vue |  141 ++++++++++++++++++++++++++++++----------------
 1 files changed, 92 insertions(+), 49 deletions(-)

diff --git a/src/views/technology/routing/index.vue b/src/views/technology/routing/index.vue
index 113abba..ba7ee5c 100644
--- a/src/views/technology/routing/index.vue
+++ b/src/views/technology/routing/index.vue
@@ -12,23 +12,7 @@
         :ajaxFun="ajaxFun"
         ref="routingTable"
       >
-        <template #toolbar>
-          <el-button v-if="permissions.technology_routing_add"
-          type="primary" @click="addOrUpdateHandle">鏂板</el-button>
-          <el-button @click="() => {this.approveHandle('ACCEPT')}" 
-          :disabled="uniqueStateArr.includes('01draft')"
-          v-if="permissions.technology_routing_accept">鎵瑰噯</el-button>
-          <el-button @click="() => {this.approveHandle('REVOKE')}" 
-          :disabled="uniqueStateArr.includes('02accepted')"
-          v-if="permissions.technology_routing_revoke">鎾ゅ洖</el-button>
-          <el-button @click="() => {this.approveHandle('CANCEL')}"
-          :disabled="uniqueStateArr.includes('02accepted')"
-          v-if="permissions.technology_routing_cancel">鎷掔粷</el-button>
-          <el-button @click="copyRouting"
-          v-if="permissions.technology_routing_cancel">澶嶅埗</el-button>
-          <el-button @click="() => {this.deleteAll()}" type="primary" 
-          v-if="permissions.technology_routing_batch_del">鎵归噺鍒犻櫎</el-button>
-        </template>
+        <template #toolbar></template>
       </ttable>
       <el-dialog title="瀵煎叆" :visible.sync="importRoutingVisible" width="50%">
         <span>
@@ -132,7 +116,6 @@
   data() {
     return {
       ids: [],
-      uniqueStateArr: [],
       ajaxFun: fetchList,
       multipleSelection: [],
       isShowQuery: false,
@@ -358,18 +341,7 @@
           }
         ],
         toolbar: [],
-        operator: [
-          {
-            text: '鍒犻櫎',
-            type: 'text',
-            size: 'small',
-            fun: this.deleteHandle
-            // show: {
-            //   val: ['01draft'],
-            //   key: 'state'
-            // }
-          }
-        ],
+        operator: null,
         operatorConfig: {
           fixed: 'right',
           label: '鎿嶄綔',
@@ -446,7 +418,82 @@
     this.getData()
   },
   created() {
+    if(this.permissions.technology_routing_add){
+      this.table.toolbar.push({
+        text: '鏂板',
+        disabled: false,
+        type: 'primary',
+        fun: ()=>{this.addOrUpdateHandle()},
+        permitArr: []
+      })
+    }
+    if(this.permissions.technology_routing_accept){
+      this.table.toolbar.push({
+        text: '鎵瑰噯',
+        disabled: true,
+        fun: ()=>{this.approveHandle('ACCEPT')},
+        permitArr: ['01draft'],
+      })
+    }
+    if(this.permissions.technology_routing_revoke){
+      this.table.toolbar.push({
+        text: '鎾ゅ洖',
+        disabled: true,
+        fun: () => {this.approveHandle('REVOKE')},
+        permitArr: ['02accepted'],
+      })
+    }
+    if(this.permissions.technology_routing_cancel){
+      this.table.toolbar.push({
+        text: '鎷掔粷',
+        disabled: true,
+        fun: ()=>{this.approveHandle('CANCEL')},
+        permitArr: ['02accepted'],
+      })
+    }
+    if(this.permissions.technology_routing_copy){
+      this.table.toolbar.push({
+        text: '澶嶅埗',
+        disabled: false,
+        fun: ()=>{this.copyRouting()},
+        permitArr: []
+      })
+    }
+    if(this.permissions.technology_routing_batch_del){
+      this.table.toolbar.push({
+        text: '鎵归噺鍒犻櫎',
+        type:'primary',
+        disabled: false,
+        permitArr: [],
+        fun: ()=>{this.copyRouting()},
+      })
+    }
+    if(this.permissions.technology_routing_del){
+      this.table.operator = [
+          {
+            text: '鍒犻櫎',
+            type: 'text',
+            size: 'small',
+            fun: this.deleteHandle
+            // show: {
+            //   val: ['01draft'],
+            //   key: 'state'
+            // }
+          }
+        ]
+    }
     this.getBomTypeDbOptions()
+  },
+  watch:{
+    multipleSelection(newVal){
+      if(newVal.length==0){
+        this.table.toolbar.forEach(ele=>{
+          if(ele.text=='鎷掔粷' || ele.text=='鎵瑰噯' || ele.text=='鎾ゅ洖'){
+            ele.disabled = true
+          }
+        })
+      }
+    }
   },
   methods: {
     getData() {
@@ -474,10 +521,6 @@
     },
     // 鍒犻櫎
     deleteHandle(row) {
-      if(!this.permissions.technology_routing_del){
-        this.$message.error("璇ヨ鑹叉病鏈夋搷浣滄潈闄�")
-        return
-      }
       this.$confirm('鏄惁纭鍒犻櫎宸ヨ壓缂栧彿锛�' + row.routingNo + '鎻愮ず', {
         confirmButtonText: '纭畾',
         cancelButtonText: '鍙栨秷',
@@ -576,22 +619,22 @@
           uniqueStateArr.push(stateArr[i])
         }
       }
-      this.uniqueStateArr = uniqueStateArr
+      // this.uniqueStateArr = uniqueStateArr
       // 寰幆琛ㄥご鎸夐挳锛屽垽鏂瘡涓寜閽殑permitArr鏄惁瀹屽叏鍖呭惈閫変腑鐘舵�侊紝鑻ュ畬鍏ㄥ寘鍚紝鍒欐寜閽寒锛屽惁鍒欐寜閽伆
-      // var toolbar = this.table.toolbar
-      // for (var j = 0; j < toolbar.length; j++) {
-      //   if (
-      //     uniqueStateArr.every((val) =>
-      //       toolbar[j].permitArr.length <= 0
-      //         ? true
-      //         : toolbar[j].permitArr.includes(val)
-      //     )
-      //   ) {
-      //     toolbar[j].disabled = false
-      //   } else {
-      //     toolbar[j].disabled = true
-      //   }
-      // }
+      var toolbar = this.table.toolbar
+      for (var j = 0; j < toolbar.length; j++) {
+        if (
+          uniqueStateArr.every((val) =>
+            toolbar[j].permitArr.length <= 0
+              ? true
+              : toolbar[j].permitArr.includes(val)
+          )
+        ) {
+          toolbar[j].disabled = false
+        } else {
+          toolbar[j].disabled = true
+        }
+      }
       // 灏嗛�変腑璁板綍璧嬪�肩粰multipleSelection
       this.multipleSelection = val
     },

--
Gitblit v1.9.3