From a48ded866d223f581944ea9043df1b296b3425e3 Mon Sep 17 00:00:00 2001
From: zouyu <2723363702@qq.com>
Date: 星期四, 21 十二月 2023 13:17:46 +0800
Subject: [PATCH] 	modified:   src/views/basic/company/index.vue 	modified:   src/views/basic/customizeparamtemplatetype/index.vue 	modified:   src/views/basic/division/index.vue 	modified:   src/views/basic/factory/index.vue 	modified:   src/views/basic/location/index.vue 	modified:   src/views/basic/param/index.vue 	modified:   src/views/basic/part/index.vue 	modified:   src/views/basic/post/index.vue 	modified:   src/views/basic/shift/index.vue 	modified:   src/views/basic/staff/index.vue 	modified:   src/views/basic/template/index.vue 	modified:   src/views/basic/warehouse/index.vue 	modified:   src/views/basic/workstation/index.vue 	modified:   src/views/plan/manufacturingorder/index.vue 	modified:   src/views/plan/masterproductionschedule/index.vue 	modified:   src/views/plan/operationtask/index.vue 	modified:   src/views/plan/productionschedul/index.vue 	modified:   src/views/quality/finishedProductInspection/index.vue 	modified:   src/views/quality/rawMaterial/index.vue 	modified:   src/views/technology/completeproductstructure/index.vue 	modified:   src/views/technology/document/index.vue 	modified:   src/views/technology/operation/index.vue 	modified:   src/views/technology/routing/index.vue 	modified:   src/views/technology/structure/index.vue 	modified:   src/views/warehouse/FinishedWarehousing/index.vue 	modified:   src/views/warehouse/changestock/index.vue 	modified:   src/views/warehouse/pallettransports/index.vue

---
 src/views/basic/location/index.vue                      |   24 
 src/views/quality/finishedProductInspection/index.vue   |  514 +++++++++++-----------
 src/views/basic/workstation/index.vue                   |   23 
 src/views/warehouse/changestock/index.vue               |    7 
 src/views/basic/factory/index.vue                       |   26 
 src/views/basic/param/index.vue                         |   25 
 src/views/plan/productionschedul/index.vue              |   22 
 src/views/plan/manufacturingorder/index.vue             |   59 --
 src/views/basic/part/index.vue                          |   23 
 src/views/technology/operation/index.vue                |   23 
 src/views/basic/warehouse/index.vue                     |   23 
 src/views/technology/routing/index.vue                  |   31 
 src/views/basic/shift/index.vue                         |   27 
 src/views/technology/structure/index.vue                |   23 
 src/views/basic/customizeparamtemplatetype/index.vue    |   23 
 src/views/basic/template/index.vue                      |   27 
 src/views/technology/document/index.vue                 |   25 
 src/views/basic/post/index.vue                          |   31 
 src/views/basic/division/index.vue                      |   25 
 src/views/plan/masterproductionschedule/index.vue       |   87 +--
 src/views/warehouse/FinishedWarehousing/index.vue       |   10 
 src/views/basic/staff/index.vue                         |   23 
 src/views/warehouse/pallettransports/index.vue          |   26 
 src/views/plan/operationtask/index.vue                  |   25 
 src/views/basic/company/index.vue                       |   37 
 src/views/quality/rawMaterial/index.vue                 |   63 +-
 src/views/technology/completeproductstructure/index.vue |   23 
 27 files changed, 600 insertions(+), 675 deletions(-)

diff --git a/src/views/basic/company/index.vue b/src/views/basic/company/index.vue
index c821434..8c3ba69 100644
--- a/src/views/basic/company/index.vue
+++ b/src/views/basic/company/index.vue
@@ -77,23 +77,13 @@
 
           ],
           toolbar: [],
-          operator:[
-            {
-              text: '鍒犻櫎',
-              type: 'text',
-              size: 'small',
-              fun: this.deleteHandle
-            }
-          ],
+          operator: null,
           operatorConfig:{
             fixed:'right',
             label:'鎿嶄綔',
             width:100,
             minWidth:100
           },
-          isCopy:{
-            fun:this.hello
-          }
         },
       }
     },
@@ -104,12 +94,25 @@
     computed: {
       ...mapGetters(['permissions'])
     },
+    created(){
+      if(this.permissions.basic_company_del){
+          this.table.operator = [
+            {
+              text: '鍒犻櫎',
+              type: 'text',
+              size: 'small',
+              fun: this.deleteHandle
+            }
+          ]
+      }
+      if(this.permissions.basic_company_copy){
+        this.table.isCopy = {
+            fun:this.hello
+          }
+      }
+    },
     methods: {
       hello(){
-        if(!this.permissions.basic_company_copy){
-          this.$message.error("璇ヨ鑹叉病鏈夋搷浣滄潈闄�")
-          return
-        }
         if(this.multipleSelection.length < 1){
           this.$message.error("璇峰厛閫夋嫨瑕佸鍒剁殑鏁版嵁!")
           return
@@ -135,10 +138,6 @@
       },
       // 鍒犻櫎鍏徃淇℃伅
       deleteHandle(row) {
-        if(!this.permissions.basic_company_del){
-          this.$message.error("璇ヨ鑹叉病鏈夋搷浣滄潈闄�")
-          return
-        }
         this.$confirm('鏄惁纭鍒犻櫎鍏徃鍚嶄负:"'+row.companyName+'"', '鎻愮ず', {
           confirmButtonText: '纭畾',
           cancelButtonText: '鍙栨秷',
diff --git a/src/views/basic/customizeparamtemplatetype/index.vue b/src/views/basic/customizeparamtemplatetype/index.vue
index 7882777..1be2b9e 100644
--- a/src/views/basic/customizeparamtemplatetype/index.vue
+++ b/src/views/basic/customizeparamtemplatetype/index.vue
@@ -92,14 +92,7 @@
           }
         ],
         toolbar: [],
-        operator: [
-          {
-            text: '鍒犻櫎',
-            type: 'text',
-            size: 'small',
-            fun: this.deleteHandle
-          }
-        ],
+        operator: null,
         operatorConfig: {
           fixed: 'right',
           label: '鎿嶄綔',
@@ -119,6 +112,16 @@
     TableForm
   },
   created() {
+    if(this.permissions.basic_templatetyperelation_del){
+      this.table.operator = [
+          {
+            text: '鍒犻櫎',
+            type: 'text',
+            size: 'small',
+            fun: this.deleteHandle
+          }
+        ]
+    }
     this.getParamApplyDict()
   },
   methods: {
@@ -135,10 +138,6 @@
     },
     // 鍒犻櫎
     deleteHandle(row) {
-      if(!this.permissions.basic_templatetyperelation_del){
-        this.$message.error("璇ヨ鑹叉病鏈夋搷浣滄潈闄�")
-        return
-      }
       this.$confirm('鏄惁纭鍒犻櫎绫诲瀷鍚嶇О涓�' + row.templateTypeName, '鎻愮ず', {
         confirmButtonText: '纭畾',
         cancelButtonText: '鍙栨秷',
diff --git a/src/views/basic/division/index.vue b/src/views/basic/division/index.vue
index 2ed0999..545c121 100644
--- a/src/views/basic/division/index.vue
+++ b/src/views/basic/division/index.vue
@@ -158,14 +158,7 @@
           }
         ],
         toolbar: [],
-        operator: [
-          {
-            text: '鍒犻櫎',
-            type: 'text',
-            size: 'small',
-            fun: this.deleteHandle
-          }
-        ],
+        operator: null,
         operatorConfig: {
           fixed: 'right',
           label: '鎿嶄綔',
@@ -178,6 +171,18 @@
   components: {
     TableForm,
     ttable
+  },
+  created(){
+    if(this.permissions.basic_division_del){
+      this.table.operator = [
+          {
+            text: '鍒犻櫎',
+            type: 'text',
+            size: 'small',
+            fun: this.deleteHandle
+          }
+        ]
+    }
   },
   computed: {
     ...mapGetters(['permissions'])
@@ -200,10 +205,6 @@
     },
     // 鍒犻櫎
     deleteHandle(row) {
-      if(!this.permissions.basic_division_del){
-        this.$message.error("璇ヨ鑹叉病鏈夋搷浣滄潈闄�")
-        return
-      }
       this.$confirm('鏄惁纭鍒犻櫎閮ㄩ棬鍚嶇О涓猴細' + row.divisionName, '鎻愮ず', {
         confirmButtonText: '纭畾',
         cancelButtonText: '鍙栨秷',
diff --git a/src/views/basic/factory/index.vue b/src/views/basic/factory/index.vue
index 8405e47..371a391 100644
--- a/src/views/basic/factory/index.vue
+++ b/src/views/basic/factory/index.vue
@@ -150,14 +150,7 @@
           }
         ],
         toolbar: [],
-        operator: [
-          {
-            text: '鍒犻櫎',
-            type: 'text',
-            size: 'small',
-            fun: this.deleteHandle
-          }
-        ],
+        operator: null,
         operatorConfig: {
           fixed: 'right',
           label: '鎿嶄綔',
@@ -174,6 +167,18 @@
   computed: {
     ...mapGetters(['permissions'])
   },
+  created(){
+    if(this.permissions.basic_factory_del){
+      this.table.operator = [
+          {
+            text: '鍒犻櫎',
+            type: 'text',
+            size: 'small',
+            fun: this.deleteHandle
+          }
+        ]
+    }
+  },
   methods: {
     // 鑾峰彇鏁版嵁鍒楄〃
     getData() {
@@ -183,6 +188,7 @@
     addOrUpdateHandle(row) {
       if(!this.permissions.basic_factory_edit && row.id!=null){
         this.$message.error("璇ヨ鑹叉病鏈夋搷浣滄潈闄�")
+        return
       }
       this.addOrUpdateVisible = true
       this.$nextTick(() => {
@@ -191,10 +197,6 @@
     },
     // 鍒犻櫎
     deleteHandle(row) {
-      if(!this.permissions.basic_factory_del){
-        this.$message.error("璇ヨ鑹叉病鏈夋搷浣滄潈闄�")
-        return
-      }
       this.$confirm('鏄惁纭鍒犻櫎宸ュ巶鍚嶇О涓猴細' + row.factoryName, '鎻愮ず', {
         confirmButtonText: '纭畾',
         cancelButtonText: '鍙栨秷',
diff --git a/src/views/basic/location/index.vue b/src/views/basic/location/index.vue
index fecfaa3..2212e67 100644
--- a/src/views/basic/location/index.vue
+++ b/src/views/basic/location/index.vue
@@ -210,14 +210,7 @@
           } */
         ],
         toolbar: [],
-        operator: [
-          {
-            text: '鍒犻櫎',
-            type: 'text',
-            size: 'small',
-            fun: this.deleteHandle
-          }
-        ],
+        operator: null,
         operatorConfig: {
           fixed: 'right',
           label: '鎿嶄綔',
@@ -243,6 +236,16 @@
     TableForm
   },
   created() {
+    if(this.permissions.basic_location_del){
+      this.table.operator = [
+          {
+            text: '鍒犻櫎',
+            type: 'text',
+            size: 'small',
+            fun: this.deleteHandle
+          }
+        ]
+    }
     this.getLocTypeCache('warehouse_type') // 鑾峰彇瀹氭椂浠诲姟杩愯鏃剁姸鎬�
     this.initWarehouseSelect()
     // this.getIFSLocationCache()
@@ -359,10 +362,7 @@
     },
     // 鍒犻櫎
     deleteHandle(row) {
-      if(!this.permissions.basic_location_del){
-        this.$message.error("璇ヨ鑹叉病鏈夋搷浣滄潈闄�")
-        return
-      }
+
       this.$confirm('鏄惁纭鍒犻櫎搴撲綅鍙蜂负' + row.locNo, '鎻愮ず', {
         confirmButtonText: '纭畾',
         cancelButtonText: '鍙栨秷',
diff --git a/src/views/basic/param/index.vue b/src/views/basic/param/index.vue
index 12f1ce7..89608c3 100644
--- a/src/views/basic/param/index.vue
+++ b/src/views/basic/param/index.vue
@@ -152,15 +152,7 @@
           }
         ],
         toolbar: [],
-        operator: [
-          {
-            text: '鍒犻櫎',
-            icon: 'el-icon-delete',
-            type: 'text',
-            size: 'small',
-            fun: this.deleteHandle
-          }
-        ],
+        operator: null,
         operatorConfig: {
           fixed: 'right',
           label: '鎿嶄綔',
@@ -179,6 +171,17 @@
     ...mapGetters(['permissions'])
   },
   created() {
+    if(this.permissions.technology_param_del){
+      this.table.operator = [
+          {
+            text: '鍒犻櫎',
+            icon: 'el-icon-delete',
+            type: 'text',
+            size: 'small',
+            fun: this.deleteHandle
+          }
+        ]
+    }
     this.getParamType()
   },
   methods: {
@@ -219,10 +222,6 @@
     },
     // 鍒犻櫎
     deleteHandle(row) {
-      if(!this.permissions.technology_param_del){
-        this.$message.error("璇ヨ鑹叉病鏈夋搷浣滄潈闄�")
-        return
-      }
       this.$confirm('鏄惁纭鍒犻櫎缂栧彿涓�' + row.code, '鎻愮ず', {
         confirmButtonText: '纭畾',
         cancelButtonText: '鍙栨秷',
diff --git a/src/views/basic/part/index.vue b/src/views/basic/part/index.vue
index ea71043..17fc30c 100644
--- a/src/views/basic/part/index.vue
+++ b/src/views/basic/part/index.vue
@@ -404,14 +404,7 @@
           //   loading: false
           // }
         ],
-        operator: [
-          {
-            text: '鍒犻櫎',
-            type: 'text',
-            size: 'small',
-            fun: this.deleteHandle
-          }
-        ],
+        operator: null,
         operatorConfig: {
           fixed: 'right',
           label: '鎿嶄綔',
@@ -441,6 +434,16 @@
     PrintLabelForm
   },
   created() {
+    if(this.permissions.basic_part_del){
+      this.table.operator = [
+          {
+            text: '鍒犻櫎',
+            type: 'text',
+            size: 'small',
+            fun: this.deleteHandle
+          }
+        ]
+    }
     this.uploadInfo.isShow = this.permissions.basic_part_upload
     this.table.column.find((e) => e.label === 'IFS鍚敤鎵规绠$悊').isTrue = false
     this.table.column.find((e) => e.label === '璁″垝鏂规硶').isTrue = false
@@ -476,10 +479,6 @@
     },
     // 鍒犻櫎
     deleteHandle(row) {
-      if(!this.permissions.basic_part_del){
-        this.$message.error("璇ヨ鑹叉病鏈夋搷浣滄潈闄�")
-        return
-      }
       this.$confirm('鏄惁纭闆朵欢鍚嶄负:' + row.partName, '鎻愮ず', {
         confirmButtonText: '纭畾',
         cancelButtonText: '鍙栨秷',
diff --git a/src/views/basic/post/index.vue b/src/views/basic/post/index.vue
index ec6a4f9..4961601 100644
--- a/src/views/basic/post/index.vue
+++ b/src/views/basic/post/index.vue
@@ -119,20 +119,12 @@
           }
         ],
         toolbar: [],
-        operator: [
-          {
-            text: '鍒犻櫎',
-            icon: 'el-icon-delete',
-            type: 'text',
-            size: 'small',
-            fun: this.deleteHandle
-          }
-        ],
+        operator: null,
         operatorConfig: {
           fixed: 'right',
           label: '鎿嶄綔',
-          width: 60,
-          minWidth: 60
+          width: 70,
+          minWidth: 70
         }
       },
 
@@ -199,6 +191,19 @@
     TableForm,
     ttable
   },
+  created(){
+    if(this.permissions.basic_staff_del){
+      this.table.operator = [
+          {
+            text: '鍒犻櫎',
+            icon: 'el-icon-delete',
+            type: 'text',
+            size: 'small',
+            fun: this.deleteHandle
+          }
+        ]
+    }
+  },
   computed: {
     ...mapGetters(['permissions'])
   },
@@ -219,10 +224,6 @@
     },
     // 鍒犻櫎
     deleteHandle(row) {
-      if(!this.permissions.basic_staff_del){
-        this.$message.error("璇ヨ鑹叉病鏈夋搷浣滄潈闄�")
-        return
-      }
       this.$confirm('鏄惁纭鍒犻櫎缂栧彿涓�' + row.postNo, '鎻愮ず', {
         confirmButtonText: '纭畾',
         cancelButtonText: '鍙栨秷',
diff --git a/src/views/basic/shift/index.vue b/src/views/basic/shift/index.vue
index 447367d..628efa1 100644
--- a/src/views/basic/shift/index.vue
+++ b/src/views/basic/shift/index.vue
@@ -62,15 +62,7 @@
             {minWidth:'140',prop:"name",label:"鐝",sort: true,isTrue:true,isSearch:true,searchInfoType:'text',render:{fun:this.addOrUpdateHandle}}
           ],
           toolbar: [],
-          operator: [
-            {
-              text: '鍒犻櫎',
-              icon: 'el-icon-delete',
-              type: 'text',
-              size: 'small',
-              fun: this.deleteHandle
-            }
-          ],
+          operator: null,
           operatorConfig: {
             fixed: 'right',
             label: '鎿嶄綔',
@@ -83,6 +75,19 @@
     components: {
       TableForm,
       ttable
+    },
+    created(){
+      if(this.permissions.basic_shift_del){
+        this.table.operator = [
+            {
+              text: '鍒犻櫎',
+              icon: 'el-icon-delete',
+              type: 'text',
+              size: 'small',
+              fun: this.deleteHandle
+            }
+          ]
+      }
     },
     computed: {
       ...mapGetters(['permissions'])
@@ -105,10 +110,6 @@
       },
       // 鍒犻櫎
       deleteHandle(row) {
-        if(!this.permissions.basic_shift_del){
-          this.$message.error("璇ヨ鑹叉病鏈夋搷浣滄潈闄�")
-          return
-        }
         this.$confirm('鏄惁纭鍒犻櫎鐝鍚嶇О涓猴細' + row.name, '鎻愮ず', {
           confirmButtonText: '纭畾',
           cancelButtonText: '鍙栨秷',
diff --git a/src/views/basic/staff/index.vue b/src/views/basic/staff/index.vue
index 981b800..9d052a8 100644
--- a/src/views/basic/staff/index.vue
+++ b/src/views/basic/staff/index.vue
@@ -211,14 +211,7 @@
           }
         ],
         toolbar: [],
-        operator: [
-          {
-            text: '鍒犻櫎',
-            type: 'text',
-            size: 'small',
-            fun: this.deleteHandle
-          }
-        ],
+        operator: null,
         operatorConfig: {
           fixed: 'right',
           label: '鎿嶄綔',
@@ -254,10 +247,6 @@
     },
     // 鍒犻櫎
     deleteHandle(row) {
-      if(!this.permissions.basic_staff_del){
-        this.$message.error("璇ヨ鑹叉病鏈夋搷浣滄潈闄�")
-        return
-      }
       this.$confirm('鏄惁纭鍒犻櫎浜哄憳鍚嶇О涓猴細' + row.staffName, '鎻愮ず', {
         confirmButtonText: '纭畾',
         cancelButtonText: '鍙栨秷',
@@ -290,6 +279,16 @@
   },
   created() {
     this.uploadInfo.isShow = this.permissions.basic_staff_upload
+    if(this.permissions.basic_staff_del){
+      this.table.operator = [
+          {
+            text: '鍒犻櫎',
+            type: 'text',
+            size: 'small',
+            fun: this.deleteHandle
+          }
+        ]
+    }
     this.initPersonNatureSelect()
   }
 }
diff --git a/src/views/basic/template/index.vue b/src/views/basic/template/index.vue
index 8f1de0a..4e04c9b 100644
--- a/src/views/basic/template/index.vue
+++ b/src/views/basic/template/index.vue
@@ -267,15 +267,7 @@
           }
         ],
         toolbar: [],
-        operator: [
-          {
-            text: '鍒犻櫎',
-            icon: 'el-icon-delete',
-            type: 'text',
-            size: 'small',
-            fun: this.deleteHandle
-          }
-        ],
+        operator: null,
         operatorConfig: {
           fixed: 'right',
           label: '鎿嶄綔',
@@ -290,6 +282,19 @@
     ttable,
     TableForm,
     ParamDialog
+  },
+  created(){
+    if(this.permissions.technology_operationtemplate_del){
+      this.table.operator = [
+          {
+            text: '鍒犻櫎',
+            icon: 'el-icon-delete',
+            type: 'text',
+            size: 'small',
+            fun: this.deleteHandle
+          }
+        ]
+    }
   },
   computed: {
     ...mapGetters(['permissions'])
@@ -432,10 +437,6 @@
     },
     // 鍒犻櫎
     deleteHandle(row) {
-      if(!this.permissions.technology_operationtemplate_del){
-        this.$message.error("璇ヨ鑹叉病鏈夋搷浣滄潈闄�")
-        return
-      }
       this.$confirm('鏄惁纭鍒犻櫎妯℃澘缂栧彿涓�' + row.templateNo, '鎻愮ず', {
         confirmButtonText: '纭畾',
         cancelButtonText: '鍙栨秷',
diff --git a/src/views/basic/warehouse/index.vue b/src/views/basic/warehouse/index.vue
index 65c2b6f..574c177 100644
--- a/src/views/basic/warehouse/index.vue
+++ b/src/views/basic/warehouse/index.vue
@@ -181,14 +181,7 @@
           }
         ],
         toolbar: [],
-        operator: [
-          {
-            text: '鍒犻櫎',
-            type: 'text',
-            size: 'small',
-            fun: this.deleteHandle
-          }
-        ],
+        operator: null,
         operatorConfig: {
           fixed: 'right',
           label: '鎿嶄綔',
@@ -214,6 +207,16 @@
     TableForm
   },
   created() {
+    if(this.permissions.basic_warehouse_del){
+      this.table.operator = [
+          {
+            text: '鍒犻櫎',
+            type: 'text',
+            size: 'small',
+            fun: this.deleteHandle
+          }
+        ]
+    }
     this.getWarehouseTypeCache('storehouse_type') // 鑾峰彇瀹氭椂浠诲姟杩愯鏃剁姸鎬�
   },
   computed: {
@@ -267,10 +270,6 @@
     },
     // 鍒犻櫎
     deleteHandle(row) {
-      if(!this.permissions.basic_warehouse_del){
-        this.$message.error("璇ヨ鑹叉病鏈夋搷浣滄潈闄�")
-        return
-      }
       this.$confirm('鏄惁纭鍒犻櫎浠撳簱鍚嶇О涓�' + row.warehouseName, '鎻愮ず', {
         confirmButtonText: '纭畾',
         cancelButtonText: '鍙栨秷',
diff --git a/src/views/basic/workstation/index.vue b/src/views/basic/workstation/index.vue
index cc84dcf..335c069 100644
--- a/src/views/basic/workstation/index.vue
+++ b/src/views/basic/workstation/index.vue
@@ -125,14 +125,7 @@
           }
         ],
         toolbar: [],
-        operator: [
-          {
-            text: '鍒犻櫎',
-            type: 'text',
-            size: 'small',
-            fun: this.deleteHandle
-          }
-        ],
+        operator: null,
         operatorConfig: {
           fixed: 'right',
           label: '鎿嶄綔',
@@ -152,6 +145,16 @@
     ...mapGetters(['permissions'])
   },
   created() {
+    if(this.permissions.basic_workstation_del){
+      this.table.operator = [
+          {
+            text: '鍒犻櫎',
+            type: 'text',
+            size: 'small',
+            fun: this.deleteHandle
+          }
+        ]
+    }
     this.getReportTypeDict()
   },
   methods: {
@@ -196,10 +199,6 @@
     },
     // 鍒犻櫎宸ヤ綔绔欑偣
     deleteHandle(row) {
-      if(!this.permissions.basic_workstation_del){
-        this.$message.error("璇ヨ鑹叉病鏈夋搷浣滄潈闄�")
-        return
-      }
       this.$confirm('鏄惁纭鍒犻櫎宸ヤ綔绔欎负' + row.name, '鎻愮ず', {
         confirmButtonText: '纭畾',
         cancelButtonText: '鍙栨秷',
diff --git a/src/views/plan/manufacturingorder/index.vue b/src/views/plan/manufacturingorder/index.vue
index d760c3e..0337ab1 100644
--- a/src/views/plan/manufacturingorder/index.vue
+++ b/src/views/plan/manufacturingorder/index.vue
@@ -101,6 +101,7 @@
           </el-button> -->
 
           <el-button
+          v-if="permissions.manufacturingorder_export"
             @click="exportExcel"
             type="primary"
             style="margin-left:10px;"
@@ -108,6 +109,7 @@
             >瀵煎嚭
           </el-button>
           <el-button
+          v-if="permissions.manufacturingorder_label_print"
             @click="labelPrint"
             type="primary"
             style="margin-left:10px;"
@@ -1017,21 +1019,6 @@
   },
   created() {
     this.getManufactureAttrs()
-    /**
- * {
-            text: '鏂板',
-            type: 'primary',
-            fun: this.addOrUpdateHandle
-          },
-          {
-            text: '鎸夊鎴疯鍗曟煡璇�',
-            fun: this.getOperationTaskByCustomer
-          },
-          {
-            text: '璁㈠崟鍚堝苟',
-            fun: this.openOrderMerge
-          }
- */
     if (this.permissions.plan_manufacturingorder_add) {
       this.table.toolbar.push({
         text: '鏂板',
@@ -1045,28 +1032,6 @@
         fun: this.getOperationTaskByCustomer
       })
     }
-    // if (this.permissions.manufacturingorder_order_merge) {
-    //   this.table.toolbar.push({
-    //     text: '璁㈠崟鍚堝苟',
-    //     fun: this.openOrderMerge
-    //   })
-    // }
-
-    /**
-     * {
-          label: '鎵嬪姩鏂板',
-          command: 'MANUAL',
-          disabled: false,
-          permitArr: ['01planned', '02issued']
-        },
-        {
-          label: '鑷姩鏂板',
-          command: 'AUTO',
-          disabled: false,
-          permitArr: ['01planned', '02issued']
-        }
-     */
-
     if (this.permissions.manufacturingorder_create_task_manual) {
       this.taskTypeArr.push({
         label: '鎵嬪姩鏂板',
@@ -1083,21 +1048,7 @@
         permitArr: ['01planned', '02issued']
       })
     }
-    // 鍒濆鍖杚ueryParam
-    // this.initSearchCondition()
-    // if (!this.options.cancelRunCreated) {
-    //   this.getDataList()
-    // }
-    // const queryParam = []
-    //       queryParam.push(
-    //         Object.assign({
-    //           prop: 'state',
-    //           searchInfoType: 'select',
-    //           propVal: '01planned'
-    //         })
-    //       )
-    //   this.$refs.manufacturingOrderTable.setQueryParam(queryParam)
-    //   this.getData()
+
     this.getBomTypeDbOptions()
 
     // 杞﹂棿璁㈠崟鏄惁鍚屾IFS
@@ -1301,6 +1252,10 @@
     },
     // 鏂板 / 淇敼
     addOrUpdateHandle(row) {
+      if(!this.permissions.plan_manufacturingorder_edit && row.id!=null){
+        this.$message.error("璇ヨ鑹叉病鏈夋搷浣滄潈闄�")
+        return
+      }
       this.$router.push({
         name: 'productorderForm',
         query: { id: row == null ? null : row.id }
diff --git a/src/views/plan/masterproductionschedule/index.vue b/src/views/plan/masterproductionschedule/index.vue
index 4476606..5aca1b1 100644
--- a/src/views/plan/masterproductionschedule/index.vue
+++ b/src/views/plan/masterproductionschedule/index.vue
@@ -591,38 +591,7 @@
           } */
         ],
         toolbar: [],
-        operator: [
-          // {
-          //   text: '璁㈠崟棰勭暀',
-          //   type: 'text',
-          //   size: 'small',
-          //   fun: this.customReserved
-          // },
-          // {
-          //   text: '鏌ョ湅搴撳瓨',
-          //   type: 'text',
-          //   size: 'small',
-          //   fun: this.stockHandle
-          // },
-          {
-            text: '鏉ユ簮',
-            type: 'text',
-            size: 'small',
-            fun: this.searchMasterPlanSourceHandle
-          },
-          {
-            text: '浣滃簾',
-            type: 'text',
-            size: 'small',
-            fun: this.deleteMainPlan
-          },
-          // {
-          //   text: '璁㈠崟',
-          //   type: 'text',
-          //   size: 'small',
-          //   fun: this.searchOrderHandle
-          // }
-        ],
+        operator: null,
         operatorConfig: {
           fixed: 'right',
           label: '鎿嶄綔',
@@ -668,40 +637,25 @@
   },
   created() {
     this.getManufactureAttrs()
-    /*
-          {
-            text: '鏂板',
-            type: 'primary',
-            fun: this.addMasterProductionSchedule,
-            disabled: false,
-            permitArr: []
-          },
-          {
-            text: '鍒涘缓濮斿璁㈠崟',
-            fun: this.createOutsourcingOrder
-          } */
-    if (this.permissions.plan_masterproductionschedule_add) {
-      /* this.table.toolbar.push({
-        text: '鏂板',
-        type: 'primary',
-        fun: this.addMasterProductionSchedule,
-        disabled: false,
-        permitArr: []
-      }) */
+    let optionList = []
+    if(this.permissions.masterproductionschedule_view_source){
+      optionList.push({
+            text: '鏉ユ簮',
+            type: 'text',
+            size: 'small',
+            fun: this.searchMasterPlanSourceHandle
+          })
     }
-    if (this.permissions.masterproductionschedule_create_outsourcing) {
-      // this.table.toolbar.push({
-      //   text: '鍒涘缓濮斿璁㈠崟',
-      //   fun: this.createOutsourcingOrder
-      // })
+    if(this.permissions.plan_masterproductionschedule_del){
+      optionList.push({
+            text: '浣滃簾',
+            type: 'text',
+            size: 'small',
+            fun: this.deleteMainPlan
+          })
     }
-    if (this.permissions.masterproductionschedule_create_order_manual) {
-      // this.orderTypeArr.push({
-      //   label: '鎵嬪姩鏂板',
-      //   command: 'MANUAL',
-      //   disabled: false,
-      //   permitArr: ['02processed']
-      // })
+    if(optionList.length>0){
+      this.table.operator = optionList
     }
     if (this.permissions.masterproductionschedule_create_order_auto) {
       this.orderTypeArr.push({
@@ -714,7 +668,6 @@
     this.getSysParam(sysParam.IS_REPORT_OPERATION)
   },
   methods: {
-    deleteMainPlan(row){},
     getSysParam(paramKey) {
       getSysParam(paramKey).then((response) => {
         var paramVal = response.data.data
@@ -756,6 +709,10 @@
     },
     // 淇敼
     addOrUpdateHandle(row) {
+      if(!this.permissions.plan_masterproductionschedule_edit && row.id!=null){
+        this.$message.error("璇ヨ鑹叉病鏈夋搷浣滄潈闄�");
+        return
+      }
       this.addOrUpdateVisible = true
       this.$nextTick(() => {
         this.$refs.addOrUpdate.init(row ? row.id : row, row ? row.state : row)
diff --git a/src/views/plan/operationtask/index.vue b/src/views/plan/operationtask/index.vue
index 89fba43..8186686 100644
--- a/src/views/plan/operationtask/index.vue
+++ b/src/views/plan/operationtask/index.vue
@@ -43,7 +43,9 @@
           >
             璐х洏杩愯緭
           </el-button>
-          <el-button style="margin-left:10px" @click="openTaskOrder">
+          <el-button 
+          v-if="permissions.operationTask_operationtask_priority"
+          style="margin-left:10px" @click="openTaskOrder">
             浼樺厛绾�
           </el-button>
         </template>
@@ -476,15 +478,7 @@
           }
         ],
         toolbar: [],
-        operator: [
-          {
-            text: '鍒犻櫎',
-            icon: 'el-icon-delete',
-            type: 'text',
-            size: 'small',
-            fun: this.deleteHandle
-          }
-        ],
+        operator: null,
         operatorConfig: {
           fixed: 'right',
           label: '鎿嶄綔',
@@ -539,6 +533,17 @@
     taskOrderDialog
   },
   created() {
+    if(this.permissions.operationTask_operationtask_del){
+      this.table.operator = [
+          {
+            text: '鍒犻櫎',
+            icon: 'el-icon-delete',
+            type: 'text',
+            size: 'small',
+            fun: this.deleteHandle
+          }
+        ]
+    }
     this.getManufactureAttrs()
   },
   mounted() {
diff --git a/src/views/plan/productionschedul/index.vue b/src/views/plan/productionschedul/index.vue
index 72fd3d4..8ff933b 100644
--- a/src/views/plan/productionschedul/index.vue
+++ b/src/views/plan/productionschedul/index.vue
@@ -16,8 +16,18 @@
             @selection-change="selectionRow"
             :table-loading="loading">
             <template #menu="{ row, index }">
-              <el-button type="text" icon="el-icon-edit" size="small" @click="editHandle(row, index)">缂栬緫</el-button>
-              <el-button type="text" icon="el-icon-delete" size="small" @click="deleteHandle(row, index)">鍒犻櫎</el-button>
+              <el-button 
+              v-if="permissions.plan_productionschedul_edit" 
+              type="text" 
+              icon="el-icon-edit" 
+              size="small" 
+              @click="editHandle(row, index)">缂栬緫</el-button>
+              <el-button 
+              v-if="permissions.plan_productionschedul_del" 
+              type="text" 
+              icon="el-icon-delete" 
+              size="small" 
+              @click="deleteHandle(row, index)">鍒犻櫎</el-button>
             </template>
           </avue-crud>
           </div>
@@ -27,7 +37,7 @@
             <el-card>
               <div slot="header" class="clearfix">
                 <span>璋冨害鏃堕棿绾�</span>
-                <el-button v-if="scheduleList.length>0" @click="openEditDialog" style="float: right; padding: 3px 0" type="text">缂栬緫</el-button>
+                <el-button v-if="permissions.plan_productionschedul_edit_line && scheduleList.length>0" @click="openEditDialog" style="float: right; padding: 3px 0" type="text">缂栬緫</el-button>
               </div>
               <div style="height:70vh;overflow-y: scroll;">
                 <el-timeline>
@@ -274,6 +284,9 @@
         ],
       },
       spanArr: [{
+        prop: 'id',
+        span: []
+      },{
         prop: 'projectName',
         span: []
       }, {
@@ -306,6 +319,9 @@
     ...mapGetters(['permissions']),
   },
   created(){
+    if(!this.permissions.plan_productionschedul_edit && !this.permissions.plan_productionschedul_del){
+      this.option.menu = false
+    }
     this.loading = true
     this.getData()
     this.getParamType()
diff --git a/src/views/quality/finishedProductInspection/index.vue b/src/views/quality/finishedProductInspection/index.vue
index b5a6c5a..6a959ab 100644
--- a/src/views/quality/finishedProductInspection/index.vue
+++ b/src/views/quality/finishedProductInspection/index.vue
@@ -35,272 +35,282 @@
 	import finishedProductInspectionAdd from './finishedProduct-form'
     import { page,deletePro,exportExaminationProducts,queryById } from '@/api/quality/finishedProduct'
     import { transform } from '@/util/fileTransform'
+    import { mapGetters } from 'vuex'
     import printTemplate from './finishedProducter-print.vue'
     import PrintJS from 'print-js'
-    import { title } from 'process'
 	export default {
-		components: {
-			finishedProductInspectionAdd,
-            ttable,
-            printTemplate
-		},
-		data() {
-			return {
-                printFormData: null,
-                printDialogVisible: false,
-                result:[{label:'鍏ㄩ儴',value: ''},{label:'鍚堟牸',value: '1'},{label:'涓嶅悎鏍�',value: '0'}],
-                type: [1],
-                prelang: 'finishedProduct',
-                ajaxFun: page,
-                options: {
-                    height: 300, // 榛樿楂樺害-涓轰簡琛ㄥご鍥哄畾
-                    stripe: true, // 鏄惁涓烘枒椹汗 table
-                    highlightCurrentRow: false, // 鏄惁瑕侀珮浜綋鍓嶈
-                    border: true, // 鏄惁鏈夌旱鍚戣竟妗�
-                    lazy: false, // 鏄惁闇�瑕佹噿鍔犺浇
-                    fit: true, // 鍒楃殑瀹藉害鏄惁鑷拺寮�
-                    multiSelect: true, //
-                    seqNo: true,
-                    isRefresh: true, // 鏄惁鏄剧ず鍒锋柊鎸夐挳
-                    isShowHide: true, // 鏄惁鏄剧ず鏄惧奖鎸夐挳H
-                    isSearch: true, // 楂樼骇鏌ヨ鎸夐挳
-                    defaultOrderBy: { column: 'createTime', direction: 'desc' },
-                },
-                table: {
-                    total: 0,
-                    currentPage: 1,
-                    pageSize: 20,
-                    data: [],
-                    // 鏍囬
-                    column: [
-                         {
-                            minWidth: '120',
-                            prop: 'finInsNo',
-                            label: '浜у搧妫�楠岀紪鍙�',
-                            isTrue: true,
-                            isSearch: true,
-                            searchInfoType: 'text',
-                            render: { fun: this.addOrUpdateHandle }
-                        },
+    components: {
+        finishedProductInspectionAdd,
+        ttable,
+        printTemplate
+    },
+    data() {
+        return {
+            printFormData: null,
+            printDialogVisible: false,
+            result:[{label:'鍏ㄩ儴',value: ''},{label:'鍚堟牸',value: '1'},{label:'涓嶅悎鏍�',value: '0'}],
+            type: [1],
+            prelang: 'finishedProduct',
+            ajaxFun: page,
+            options: {
+                height: 300, // 榛樿楂樺害-涓轰簡琛ㄥご鍥哄畾
+                stripe: true, // 鏄惁涓烘枒椹汗 table
+                highlightCurrentRow: false, // 鏄惁瑕侀珮浜綋鍓嶈
+                border: true, // 鏄惁鏈夌旱鍚戣竟妗�
+                lazy: false, // 鏄惁闇�瑕佹噿鍔犺浇
+                fit: true, // 鍒楃殑瀹藉害鏄惁鑷拺寮�
+                multiSelect: true, //
+                seqNo: true,
+                isRefresh: true, // 鏄惁鏄剧ず鍒锋柊鎸夐挳
+                isShowHide: true, // 鏄惁鏄剧ず鏄惧奖鎸夐挳H
+                isSearch: true, // 楂樼骇鏌ヨ鎸夐挳
+                defaultOrderBy: { column: 'createTime', direction: 'desc' },
+            },
+            table: {
+                total: 0,
+                currentPage: 1,
+                pageSize: 20,
+                data: [],
+                // 鏍囬
+                column: [
                         {
-                            minWidth: '120',
-                            prop: 'productNo',
-                            label: '鎶ュ伐鍗曞彿',
-                            isTrue: true,
-                            isSearch: true,
-                            searchInfoType: 'text'
-                        },
-                        {
-                            minWidth: '120',
-                            prop: 'orderNumber',
-                            label: '璁㈠崟鍙�',
-                            isTrue: true,
-                            isSearch: true,
-                            searchInfoType: 'text'
-                        },
-                        {
-                            minWidth: '120',
-                            prop: 'customerName',
-                            label: '瀹㈡埛鍚嶇О',
-                            isTrue: true,
-                            isSearch: true,
-                            searchInfoType: 'text'
-                        },
-                        {
-                            minWidth: '130',
-                            width: '150',
-                            prop: 'projectName',
-                            label: '宸ョ▼鍚嶇О',
-                            sort: true,
-                            isTrue: true,
-                            isSearch: true,
-                            searchInfoType: 'text',
-                        },
-                        {
-                            minWidth: '120',
-                            prop: 'outBatchNo',
-                            label: '鎵规鍙�',
-                            isTrue: true,
-                            isSearch: true,
-                            searchInfoType: 'text'
-                        },
-                        {
-                            minWidth: '120',
-                            prop: 'materialCode',
-                            label: '浜у搧缂栧彿',
-                            isTrue: true,
-                            isSearch: true,
-                            searchInfoType: 'text'
-                        },
-                        {
-                            minWidth: '120',
-                            prop: 'material',
-                            label: '浜у搧澶х被',
-                            isTrue: true,
-                            isSearch: true,
-                            searchInfoType: 'text'
-                        },
-                        {
-                            minWidth: '120',
-                            prop: 'specs',
-                            label: '瑙勬牸鍨嬪彿',
-                            isTrue: true,
-                            isSearch: true,
-                            searchInfoType: 'text'
-                        },
-                        {
-                            minWidth: '120',
-                            prop: 'unit',
-                            label: '鍗曚綅',
-                            isTrue: true,
-                            isSearch: true,
-                            searchInfoType: 'text'
-                        },
-                        {
-                            minWidth: '120',
-                            prop: 'quantity',
-                            label: '鏁伴噺',
-                            isTrue: true,
-                            isSearch: true,
-                            searchInfoType: 'text'
-                        },
-                        {
-                            minWidth: '120',
-                            prop: 'createTime',
-                            label: '妫�楠屾棩鏈�',
-                            sort: true,
-                            isTrue: true,
-                            isSearch: true,
-                            searchInfoType: 'datetimerange',
-                            formatter: this.formatDateTime,
-                        },
-                        {
-                            minWidth: '120',
-                            prop: 'result',
-                            label: '妫�娴嬬粨鏋�',
-                            isTrue: true,
-                            isSearch: true,
-                            searchInfoType: 'select',
-                            formatter: this.formatResult,
-                            optList: () => {
-                                return this.result
-                            }
-                        },
-                    ],
-                    toolbar: [
-                        {
-                            text: '涓嬭浇妫�楠屾姤鍛�',
-                            type: 'primary',
-                            fun: this.downloadProReport
-                        }
-                    ],
-                    operator: [{
-                        text: '浣滃簾',
-                        type: 'text',
-                        size: 'small',
-                        fun: this.deleteHandle
-                    }],
-                    operatorConfig: {
-                    fixed: 'right',
-                    label: '鎿嶄綔',
-                    width: 100,
-                    minWidth: 100
+                        minWidth: '120',
+                        prop: 'finInsNo',
+                        label: '浜у搧妫�楠岀紪鍙�',
+                        isTrue: true,
+                        isSearch: true,
+                        searchInfoType: 'text',
+                        render: { fun: this.addOrUpdateHandle }
                     },
+                    {
+                        minWidth: '120',
+                        prop: 'productNo',
+                        label: '鎶ュ伐鍗曞彿',
+                        isTrue: true,
+                        isSearch: true,
+                        searchInfoType: 'text'
+                    },
+                    {
+                        minWidth: '120',
+                        prop: 'orderNumber',
+                        label: '璁㈠崟鍙�',
+                        isTrue: true,
+                        isSearch: true,
+                        searchInfoType: 'text'
+                    },
+                    {
+                        minWidth: '120',
+                        prop: 'customerName',
+                        label: '瀹㈡埛鍚嶇О',
+                        isTrue: true,
+                        isSearch: true,
+                        searchInfoType: 'text'
+                    },
+                    {
+                        minWidth: '130',
+                        width: '150',
+                        prop: 'projectName',
+                        label: '宸ョ▼鍚嶇О',
+                        sort: true,
+                        isTrue: true,
+                        isSearch: true,
+                        searchInfoType: 'text',
+                    },
+                    {
+                        minWidth: '120',
+                        prop: 'outBatchNo',
+                        label: '鎵规鍙�',
+                        isTrue: true,
+                        isSearch: true,
+                        searchInfoType: 'text'
+                    },
+                    {
+                        minWidth: '120',
+                        prop: 'materialCode',
+                        label: '浜у搧缂栧彿',
+                        isTrue: true,
+                        isSearch: true,
+                        searchInfoType: 'text'
+                    },
+                    {
+                        minWidth: '120',
+                        prop: 'material',
+                        label: '浜у搧澶х被',
+                        isTrue: true,
+                        isSearch: true,
+                        searchInfoType: 'text'
+                    },
+                    {
+                        minWidth: '120',
+                        prop: 'specs',
+                        label: '瑙勬牸鍨嬪彿',
+                        isTrue: true,
+                        isSearch: true,
+                        searchInfoType: 'text'
+                    },
+                    {
+                        minWidth: '120',
+                        prop: 'unit',
+                        label: '鍗曚綅',
+                        isTrue: true,
+                        isSearch: true,
+                        searchInfoType: 'text'
+                    },
+                    {
+                        minWidth: '120',
+                        prop: 'quantity',
+                        label: '鏁伴噺',
+                        isTrue: true,
+                        isSearch: true,
+                        searchInfoType: 'text'
+                    },
+                    {
+                        minWidth: '120',
+                        prop: 'createTime',
+                        label: '妫�楠屾棩鏈�',
+                        sort: true,
+                        isTrue: true,
+                        isSearch: true,
+                        searchInfoType: 'datetimerange',
+                        formatter: this.formatDateTime,
+                    },
+                    {
+                        minWidth: '120',
+                        prop: 'result',
+                        label: '妫�娴嬬粨鏋�',
+                        isTrue: true,
+                        isSearch: true,
+                        searchInfoType: 'select',
+                        formatter: this.formatResult,
+                        optList: () => {
+                            return this.result
+                        }
+                    },
+                ],
+                toolbar: [],
+                operator: null,
+                operatorConfig: {
+                fixed: 'right',
+                label: '鎿嶄綔',
+                width: 100,
+                minWidth: 100
                 },
-			}
-		},
-		created() { },
-        watch:{
+            },
+        }
+    },
+    created() { 
+        if(this.permissions.quality_finishedProductInspection_download){
+            this.table.toolbar.push({
+                text: '涓嬭浇妫�楠屾姤鍛�',
+                type: 'primary',
+                fun: this.downloadProReport
+            })
+        }
+        if(this.permissions.quality_finishedProductInspection_del){
+            this.table.operator = [{
+                    text: '浣滃簾',
+                    type: 'text',
+                    size: 'small',
+                    fun: this.deleteHandle
+                }]
+        }
+    },
+    computed: {
+        ...mapGetters(['permissions'])
+    },
+    watch:{
         printFormData(newVal){
             if(newVal){
                 this.printFormData = newVal
             }
         }
     },
-		methods: {
-            downloadProReport(){
-                this.$message.info("寮�鍙戜腑...")
-            },
-            //鎵撳嵃鎸夐挳
-            printFun() {
-                const style = '@page {margin: 10mm 5mm; margin-bottom: 0;margin-top:0;} ' +'@media print {.title{font-size:30pt;font-weight: 400;font-family: 榛戜綋;!important;}' ;
-                PrintJS({
-                    printable: "printRaw",
-                    type: "html",
-                    scanStyles: false,
-                    maxWidth: 1200,
-                    header: "浜у搧妫�娴嬫姤鍛�",
-                    style:style,
-                    css:'./title.css',
-                    targetStyles: ["*"],
-                    ignoreElements: ["no-ignore"],
-                    orientation: 'portrait'
-                });
-            },
-            //鏌ョ湅鎶ュ憡鎸夐挳
-            showPrint(row){
-                queryById(row.id).then(res=>{
-                    this.printFormData = res.data.data
-                    this.printFormData.createTime = row.createTime
-                    this.printFormData.updateTime = row.updateTime
-                    this.printDialogVisible = true
-                }).catch(error=>{
-                })
-            },
-            exportExcel(){
-                let queryParam=this.$refs.finishedProduct.getQueryParam();
-                delete queryParam.criteria
-                exportExaminationProducts(queryParam).then((res)=>{
-                    transform(res)
-                })
-            },
-			deleteHandle(row){
-				this.$confirm('纭鍒犻櫎璇ユ暟鎹悧锛�', '鎻愮ず', {
-				confirmButtonText: '纭畾',
-				cancelButtonText: '鍙栨秷',
-				type: 'warning',
-				}).then(()=>{
-					deletePro(row.id).then(res=>{
-						if(res.data.code == 0){
-							this.$message.success("鍒犻櫎鎴愬姛")
-						}else{
-							this.$message.error("鍒犻櫎澶辫触")
-						}
-						this.getData()
-					})
-				})
-			},
-			// 鏂板 / 淇敼
-			addOrUpdateHandle(row) {
-				this.$router.push({
-					name: 'finishedProductForm',
-					query: { 
-                        id: row == null ? null : row.id,
-                    },
-                    params: {
-                        resultVal: row == null ? null : row.result 
+    methods: {
+        downloadProReport(){
+        },
+        //鎵撳嵃鎸夐挳
+        printFun() {
+            const style = '@page {margin: 10mm 5mm; margin-bottom: 0;margin-top:0;} ' +'@media print {.title{font-size:30pt;font-weight: 400;font-family: 榛戜綋;!important;}' ;
+            PrintJS({
+                printable: "printRaw",
+                type: "html",
+                scanStyles: false,
+                maxWidth: 1200,
+                header: "浜у搧妫�娴嬫姤鍛�",
+                style:style,
+                css:'./title.css',
+                targetStyles: ["*"],
+                ignoreElements: ["no-ignore"],
+                orientation: 'portrait'
+            });
+        },
+        //鏌ョ湅鎶ュ憡鎸夐挳
+        showPrint(row){
+            queryById(row.id).then(res=>{
+                this.printFormData = res.data.data
+                this.printFormData.createTime = row.createTime
+                this.printFormData.updateTime = row.updateTime
+                this.printDialogVisible = true
+            }).catch(error=>{
+            })
+        },
+        exportExcel(){
+            let queryParam=this.$refs.finishedProduct.getQueryParam();
+            delete queryParam.criteria
+            exportExaminationProducts(queryParam).then((res)=>{
+                transform(res)
+            })
+        },
+        deleteHandle(row){
+            this.$confirm('纭鍒犻櫎璇ユ暟鎹悧锛�', '鎻愮ず', {
+            confirmButtonText: '纭畾',
+            cancelButtonText: '鍙栨秷',
+            type: 'warning',
+            }).then(()=>{
+                deletePro(row.id).then(res=>{
+                    if(res.data.code == 0){
+                        this.$message.success("鍒犻櫎鎴愬姛")
+                    }else{
+                        this.$message.error("鍒犻櫎澶辫触")
                     }
-				})
-			},
-            formatResult(row, column, cellValue){
-                if(cellValue != undefined || cellValue != null){
-                    if(cellValue == 0){
-                        return "<span style='color:#E84738;'>涓嶅悎鏍�</span>"
-                    }else if(cellValue == 1){
-                        return "<span style='color:#34BD66;'>鍚堟牸</span>"
-                    }
+                    this.getData()
+                })
+            })
+        },
+        // 鏂板 / 淇敼
+        addOrUpdateHandle(row) {
+            if(!this.permissions.quality_finishedProductInspection_edit && row.id!=null){
+                this.$message.error("璇ヨ鑹叉病鏈夋搷浣滄潈闄�")
+                return
+            }
+            this.$router.push({
+                name: 'finishedProductForm',
+                query: { 
+                    id: row == null ? null : row.id,
+                },
+                params: {
+                    resultVal: row == null ? null : row.result 
                 }
-            },
-            formatDateTime(row, column, cellValue) {
-                return cellValue ? fecha.format(new Date(cellValue), 'yyyy-MM-dd') : ''
-            },
-            handleSelectionChange(){ },
-			getData() {
-				this.$refs.finishedProduct.getDataList()
-			},
-		}
-
-	}
+            })
+        },
+        formatResult(row, column, cellValue){
+            if(cellValue != undefined || cellValue != null){
+                if(cellValue == 0){
+                    return "<span style='color:#E84738;'>涓嶅悎鏍�</span>"
+                }else if(cellValue == 1){
+                    return "<span style='color:#34BD66;'>鍚堟牸</span>"
+                }
+            }
+        },
+        formatDateTime(row, column, cellValue) {
+            return cellValue ? fecha.format(new Date(cellValue), 'yyyy-MM-dd') : ''
+        },
+        handleSelectionChange(){ },
+        getData() {
+            this.$refs.finishedProduct.getDataList()
+        },
+    }
+}
 </script>
 
 <style scope="scope">
diff --git a/src/views/quality/rawMaterial/index.vue b/src/views/quality/rawMaterial/index.vue
index 267b919..3437c51 100644
--- a/src/views/quality/rawMaterial/index.vue
+++ b/src/views/quality/rawMaterial/index.vue
@@ -214,38 +214,8 @@
                             }
                     },
                 ],
-                toolbar: [
-                    {
-                        text: '鏂板',
-                        type: 'primary',
-                        fun: this.addOrUpdateHandle
-                    },
-                    {
-                        text: '涓嬭浇妫�楠屾姤鍛�',
-                        type: 'primary',
-                        fun: this.downloadReport
-                    }
-                ],
-                operator: [
-                //     {
-                //     text: '鎵撳嵃',
-                //     type: 'text',
-                //     size: 'small',
-                //     fun: this.previewFun,
-                //     show: {
-                //         val: [
-                //             '1',
-                //             '0'
-                //         ],
-                //         key: 'judgeState'
-                //     }
-                // },
-                {
-                    text: '浣滃簾',
-                    type: 'text',
-                    size: 'small',
-                    fun: this.deleteHandle
-                }],
+                toolbar: [],
+                operator: null,
                 operatorConfig: {
                 fixed: 'right',
                 label: '鎿嶄綔',
@@ -262,7 +232,30 @@
         RawMaterialForm,
         printTemplate,
     },
-    created() { },
+    created() { 
+        if(this.permissions.quality_rawMaterial_add){
+            this.table.toolbar.push({
+                text: '鏂板',
+                type: 'primary',
+                fun: this.addOrUpdateHandle
+            })
+        }
+        if(this.permissions.quality_rawMaterial_download){
+            this.table.toolbar.push({
+                text: '涓嬭浇妫�楠屾姤鍛�',
+                type: 'primary',
+                fun: this.downloadReport
+            })
+        }
+        if(this.permissions.quality_rawMaterial_del){
+            this.table.operator = [{
+                    text: '浣滃簾',
+                    type: 'text',
+                    size: 'small',
+                    fun: this.deleteHandle
+                }]
+        }
+     },
     computed: {
         ...mapGetters(['permissions'])
     },
@@ -375,6 +368,10 @@
         },
         // 鏂板 / 淇敼
         addOrUpdateHandle(row) {
+            if(!this.permissions.quality_rawMaterial_edit && row.id!=null){
+                this.$message.error("璇ヨ鑹叉病鏈夋搷浣滄潈闄�")
+                return
+            }
             this.$router.push({
                 name: 'rawMaterialForm',
                 query: { 
diff --git a/src/views/technology/completeproductstructure/index.vue b/src/views/technology/completeproductstructure/index.vue
index b1b962e..6187aab 100644
--- a/src/views/technology/completeproductstructure/index.vue
+++ b/src/views/technology/completeproductstructure/index.vue
@@ -229,14 +229,7 @@
           },
         ],
         toolbar: [],
-        operator: [
-          {
-            text: '鍒犻櫎',
-            type: 'text',
-            size: 'small',
-            fun: this.deleteHandle,
-          },
-        ],
+        operator: null,
         operatorConfig: {
           fixed: 'right',
           label: '鎿嶄綔',
@@ -272,6 +265,16 @@
     this.getData()
   },
   created() {
+    if(this.permissions.technology_completeproductstructure_del){
+        this.table.operator = [
+          {
+            text: '鍒犻櫎',
+            type: 'text',
+            size: 'small',
+            fun: this.deleteHandle,
+          },
+        ]
+      }
     this.getBomTypeDbOptions()
   },
   methods: {
@@ -328,10 +331,6 @@
     },
     // 鍒犻櫎
     deleteHandle(row) {
-      if(!this.permissions.technology_completeproductstructure_del){
-        this.$message.error("璇ヨ鑹叉病鏈夋搷浣滄潈闄�")
-        return
-      }
       this.$confirm('鏄惁纭鍒犻櫎缂栧彿涓�' + row.number, '鎻愮ず', {
         confirmButtonText: '纭畾',
         cancelButtonText: '鍙栨秷',
diff --git a/src/views/technology/document/index.vue b/src/views/technology/document/index.vue
index 7ba962f..d107579 100644
--- a/src/views/technology/document/index.vue
+++ b/src/views/technology/document/index.vue
@@ -371,7 +371,7 @@
             permitArr: []
           } */
         ],
-        operator: [],
+        operator: null,
         operatorConfig: {
           fixed: 'right',
           label: '鎿嶄綔',
@@ -442,9 +442,8 @@
     this.getData()
   },
   created() {
-    this.getBomTypeDbOptions()
     if (this.permissions.technology_document_del) {
-      this.table.operator.push({
+      this.table.operator = [{
         text: '鍒犻櫎',
         type: 'text',
         size: 'small',
@@ -453,19 +452,9 @@
           val: ['01draft'],
           key: 'state'
         }
-      })
-    } else {
-      this.table.operator.push({
-        text: '鍒犻櫎',
-        type: 'text',
-        size: 'small',
-        fun: this.deleteHandle,
-        show: {
-          val: [],
-          key: 'state'
-        }
-      })
-    }
+      }]
+    } 
+    this.getBomTypeDbOptions()
   },
   methods: {
     getBomTypeDbOptions() {
@@ -518,10 +507,6 @@
     },
     // 鍒犻櫎
     deleteHandle(row) {
-      if(!this.permissions.technology_document_del){
-        this.$message.error("璇ヨ鑹叉病鏈夋搷浣滄潈闄�")
-        return
-      }
       this.$confirm('鏄惁纭鍒犻櫎宸ヨ壓鏂囦欢缂栧彿锛�' + row.number + '鎻愮ず', {
         confirmButtonText: '纭畾',
         cancelButtonText: '鍙栨秷',
diff --git a/src/views/technology/operation/index.vue b/src/views/technology/operation/index.vue
index ec5239e..8bccd66 100644
--- a/src/views/technology/operation/index.vue
+++ b/src/views/technology/operation/index.vue
@@ -224,14 +224,7 @@
           }
         ],
         toolbar: [],
-        operator: [
-          {
-            text: '鍒犻櫎',
-            type: 'text',
-            size: 'small',
-            fun: this.deleteHandle
-          }
-        ],
+        operator: null,
         operatorConfig: {
           fixed: 'right',
           label: '鎿嶄綔',
@@ -254,6 +247,16 @@
     ...mapGetters(['permissions'])
   },
   created() {
+    if(this.permissions.technology_operation_del){
+      this.table.operator = [
+          {
+            text: '鍒犻櫎',
+            type: 'text',
+            size: 'small',
+            fun: this.deleteHandle
+          }
+        ]
+    }
     this.getReportTypeDict()
     this.getRunTimeCodeDbTypeDict()
     this.getLaborClassNoCache()
@@ -279,10 +282,6 @@
     },
     // 鍒犻櫎
     deleteHandle(row) {
-      if(!this.permissions.technology_operation_del){
-        this.$message.error("璇ヨ鑹叉病鏈夋搷浣滄潈闄�")
-        return
-      }
       this.$confirm('鏄惁纭鍒犻櫎缂栧彿涓�' + row.operationNo, '鎻愮ず', {
         confirmButtonText: '纭畾',
         cancelButtonText: '鍙栨秷',
diff --git a/src/views/technology/routing/index.vue b/src/views/technology/routing/index.vue
index 113abba..748d0bb 100644
--- a/src/views/technology/routing/index.vue
+++ b/src/views/technology/routing/index.vue
@@ -358,18 +358,7 @@
           }
         ],
         toolbar: [],
-        operator: [
-          {
-            text: '鍒犻櫎',
-            type: 'text',
-            size: 'small',
-            fun: this.deleteHandle
-            // show: {
-            //   val: ['01draft'],
-            //   key: 'state'
-            // }
-          }
-        ],
+        operator: null,
         operatorConfig: {
           fixed: 'right',
           label: '鎿嶄綔',
@@ -446,6 +435,20 @@
     this.getData()
   },
   created() {
+    if(this.permissions.technology_routing_del){
+      this.table.operator = [
+          {
+            text: '鍒犻櫎',
+            type: 'text',
+            size: 'small',
+            fun: this.deleteHandle
+            // show: {
+            //   val: ['01draft'],
+            //   key: 'state'
+            // }
+          }
+        ]
+    }
     this.getBomTypeDbOptions()
   },
   methods: {
@@ -474,10 +477,6 @@
     },
     // 鍒犻櫎
     deleteHandle(row) {
-      if(!this.permissions.technology_routing_del){
-        this.$message.error("璇ヨ鑹叉病鏈夋搷浣滄潈闄�")
-        return
-      }
       this.$confirm('鏄惁纭鍒犻櫎宸ヨ壓缂栧彿锛�' + row.routingNo + '鎻愮ず', {
         confirmButtonText: '纭畾',
         cancelButtonText: '鍙栨秷',
diff --git a/src/views/technology/structure/index.vue b/src/views/technology/structure/index.vue
index 17fed50..256c93c 100644
--- a/src/views/technology/structure/index.vue
+++ b/src/views/technology/structure/index.vue
@@ -231,14 +231,7 @@
           }
         ],
         toolbar: [],
-        operator: [
-          {
-            text: '鍒犻櫎',
-            type: 'text',
-            size: 'small',
-            fun: this.deleteHandle
-          }
-        ],
+        operator: null,
         operatorConfig: {
           fixed: 'right',
           label: '鎿嶄綔',
@@ -298,6 +291,16 @@
     this.getData()
   },
   created() {
+    if(this.permissions.technology_structure_del){
+      this.table.operator = [
+          {
+            text: '鍒犻櫎',
+            type: 'text',
+            size: 'small',
+            fun: this.deleteHandle
+          }
+        ]
+    }
     this.uploadInfo.isShow = this.permissions.technology_structure_upload
     this.table.column.find((e) => e.label === '宸插悓姝ヨ嚦ERP').isTrue = false
     this.getBomTypeDbOptions()
@@ -329,10 +332,6 @@
     },
     // 鍒犻櫎
     deleteHandle(row) {
-      if(!this.permissions.technology_structure_del){
-        this.$message.error("璇ヨ鑹叉病鏈夋搷浣滄潈闄�")
-        return
-      }
       this.$confirm('鏄惁纭鍒犻櫎ID涓�' + row.id, '鎻愮ず', {
         confirmButtonText: '纭畾',
         cancelButtonText: '鍙栨秷',
diff --git a/src/views/warehouse/FinishedWarehousing/index.vue b/src/views/warehouse/FinishedWarehousing/index.vue
index 2e9b959..3afc521 100644
--- a/src/views/warehouse/FinishedWarehousing/index.vue
+++ b/src/views/warehouse/FinishedWarehousing/index.vue
@@ -5,7 +5,8 @@
         :table="table"
         :isShowHide="true"
         :prelang="prelang"
-        :options="options" 
+        :options="options"
+        :dataListLoading="false" 
         ref="processconfiguration"
         >
         <template #toolbar></template>
@@ -20,7 +21,6 @@
     data(){
         return {
             prelang: 'operation',
-            dataListLoading: false,
             options: {
                 height: 300, // 榛樿楂樺害-涓轰簡琛ㄥご鍥哄畾
                 stripe: true, // 鏄惁涓烘枒椹汗 table
@@ -128,9 +128,9 @@
        }
     },
     medthods: {},
-//     computed: {
-//     ...mapGetters(['permissions'])
-//   },
+    computed: {
+    // ...mapGetters(['permissions'])
+    },
     components: {
     ttable
     },
diff --git a/src/views/warehouse/changestock/index.vue b/src/views/warehouse/changestock/index.vue
index 22c7325..5ed304a 100644
--- a/src/views/warehouse/changestock/index.vue
+++ b/src/views/warehouse/changestock/index.vue
@@ -94,11 +94,12 @@
             <span>瀹炴椂搴撳瓨</span>
           </div>
           <el-button size="mini" type="primary" @click="addOrUpdateHandle()"
-            >鏂板</el-button
+            v-if="permissions.warehouse_changestock_add">鏂板</el-button
           >
-          <el-button size="mini" type="primary" @click="addStockSubmit()">鎺ユ敹</el-button>
+          <el-button size="mini" type="primary" @click="addStockSubmit()"
+          v-if="permissions.warehouse_changestock_receive">鎺ユ敹</el-button>
           <el-button size="mini" type="primary" @click="deleteStockSubmit()"
-            >鍙戞斁</el-button
+          v-if="permissions.warehouse_changestock_grant">鍙戞斁</el-button
           >
 
           <el-table
diff --git a/src/views/warehouse/pallettransports/index.vue b/src/views/warehouse/pallettransports/index.vue
index 5303f6a..5353e18 100644
--- a/src/views/warehouse/pallettransports/index.vue
+++ b/src/views/warehouse/pallettransports/index.vue
@@ -81,7 +81,7 @@
               </el-table-column>
               <el-table-column prop="toIfsLocationNo" label="绉昏嚦搴撲綅" align="center">
               </el-table-column>
-              <el-table-column label="鎿嶄綔" align="center" width="100">
+              <el-table-column label="鎿嶄綔" align="center" width="100" v-if="permissions.warehouse_pallettransports_demand_edit">
                 <template slot-scope="scope">
                   <!-- <el-button v-show="!scope.row.canEdit" type="text" :disabled="scope.row.detailExistState"
                     @click="scope.row.canEdit = true">缂栬緫</el-button> -->
@@ -151,7 +151,7 @@
                   }}</span>
                 </template>
               </el-table-column>
-              <el-table-column label="鎿嶄綔" align="center" width="85">
+              <el-table-column label="鎿嶄綔" align="center" width="85" v-if="permissions.warehouse_pallettransports_detail_edit">
                 <template slot-scope="scope">
                   <!-- <el-button type="text" @click="openEditStockDialog(scope.row)"
                     :disabled="scope.row.state === '01initial' ? false : true">缂栬緫</el-button> -->
@@ -303,14 +303,7 @@
           }
         ],
         toolbar: [],
-        operator: [
-          {
-            text: '鍒犻櫎',
-            type: 'text',
-            size: 'small',
-            fun: this.deleteHandle
-          }
-        ],
+        operator: null,
         operatorConfig: {
           fixed: 'right',
           label: '鎿嶄綔',
@@ -363,7 +356,18 @@
       }
     }
   },
-  created() { },
+  created() {
+     if(this.permissions.warehouse_pallettransports_edit){
+        this.table.operator = [
+          {
+            text: '鍒犻櫎',
+            type: 'text',
+            size: 'small',
+            fun: this.deleteHandle
+          }
+        ]
+     }
+   },
   methods: {
     			// 鍗曡閫変腑
 			handleCurrentChange(row) {

--
Gitblit v1.9.3