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

---
 src/views/technology/completeproductstructure/index.vue |   98 ++++++++++++++++++++++++++++++++++---------------
 1 files changed, 68 insertions(+), 30 deletions(-)

diff --git a/src/views/technology/completeproductstructure/index.vue b/src/views/technology/completeproductstructure/index.vue
index 6187aab..8af0091 100644
--- a/src/views/technology/completeproductstructure/index.vue
+++ b/src/views/technology/completeproductstructure/index.vue
@@ -10,21 +10,7 @@
         :ajaxFun="ajaxFun"
         ref="completeProductStructureTable"
       >
-        <template #toolbar>
-          <el-button type="primary" @click="addByStructureHandle" 
-          v-if="permissions.technology_completeproductstructure_bom">浜у搧缁撴瀯鐢熸垚BOM</el-button>
-          <el-button @click="() => {this.approveHandle('ACCEPT')}" 
-          :disabled="uniqueStateArr.includes('01draft')"
-          v-if="permissions.technology_completeproductstructure_accept">鎵瑰噯</el-button>
-          <el-button @click="() => {this.approveHandle('REVOKE')}" 
-          :disabled="uniqueStateArr.includes('02accepted')"
-          v-if="permissions.technology_completeproductstructure_revoke">鎾ゅ洖</el-button>
-          <el-button @click="() => {this.approveHandle('CANCEL')}"
-          :disabled="uniqueStateArr.includes('02accepted')"
-          v-if="permissions.technology_completeproductstructure_cancel">鎷掔粷</el-button>
-          <el-button @click="() => {this.deleteAll()}" type="primary" 
-          v-if="permissions.technology_completeproductstructure_batch_delete">鎵归噺鍒犻櫎</el-button>
-        </template>
+        <template #toolbar></template>
       </ttable>
     </basic-container>
   </div>
@@ -265,6 +251,48 @@
     this.getData()
   },
   created() {
+    if(this.permissions.technology_completeproductstructure_bom){
+      this.table.toolbar.push({
+        text: '浜у搧缁撴瀯鐢熸垚BOM',
+        disabled: false,
+        type: 'primary',
+        fun: ()=>{this.addByStructureHandle()},
+        permitArr: [],
+      })
+    }
+    if(this.permissions.technology_completeproductstructure_accept){
+      this.table.toolbar.push({
+        text: '鎵瑰噯',
+        disabled: true,
+        fun: ()=>{this.approveHandle('ACCEPT')},
+        permitArr: ['01draft'],
+      })
+    }
+    if(this.permissions.technology_completeproductstructure_revoke){
+      this.table.toolbar.push({
+        text: '鎾ゅ洖',
+        disabled: true,
+        fun: () => {this.approveHandle('REVOKE')},
+        permitArr: ['02accepted'],
+      })
+    }
+    if(this.permissions.technology_completeproductstructure_cancel){
+      this.table.toolbar.push({
+        text: '鎷掔粷',
+        disabled: true,
+        fun: ()=>{this.approveHandle('CANCEL')},
+        permitArr: ['02accepted'],
+      })
+    }
+    if(this.permissions.technology_completeproductstructure_batch_delete){
+      this.table.toolbar.push({
+        text: '鎵归噺鍒犻櫎',
+        type:'primary',
+        disabled: false,
+        permitArr: [],
+        fun: ()=>{this.deleteAll()},
+      })
+    }      
     if(this.permissions.technology_completeproductstructure_del){
         this.table.operator = [
           {
@@ -276,6 +304,17 @@
         ]
       }
     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: {
     getBomTypeDbOptions() {
@@ -422,22 +461,21 @@
           uniqueStateArr.push(stateArr[i])
         }
       }
-      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