From ca24e514400e386de5066ec6e423d7fd2de43f65 Mon Sep 17 00:00:00 2001
From: zss <zss@example.com>
Date: 星期三, 31 一月 2024 16:30:17 +0800
Subject: [PATCH] 不合格状态

---
 src/views/plan/customerorder/index.vue |  112 +++++++++++++++++++++++++++++---------------------------
 1 files changed, 58 insertions(+), 54 deletions(-)

diff --git a/src/views/plan/customerorder/index.vue b/src/views/plan/customerorder/index.vue
index 159596c..7990386 100644
--- a/src/views/plan/customerorder/index.vue
+++ b/src/views/plan/customerorder/index.vue
@@ -53,8 +53,7 @@
             style="margin-left:10px;"
             type="primary"
             @click="()=>exportDialogVisible=true"
-            >瀵煎嚭鍙拌处</el-button
-          >
+            >瀵煎嚭鍙拌处</el-button>
         </template>
       </ttable>
       <!-- 寮圭獥, 鏃ユ湡閫夋嫨 -->
@@ -273,7 +272,8 @@
   exportCustomerOrder,
   exportCustomerOrderSplit,
   syncOrder,
-  dropByContractNo
+  dropByContractNo,
+  downloadWordFile
 } from '../../../api/plan/customerorder'
 import DocumentTable from '@/views/common/document.vue'
 import { remote } from '@/api/admin/dict'
@@ -285,6 +285,7 @@
 export default {
   data() {
     return {
+      uniqueStateArr: [],
       dataForm: {
         selectTime: null,
         exportTime: null
@@ -414,6 +415,7 @@
             width: '100px',
             prop: 'contractNo',
             label: '鍚堝悓缂栧彿',
+            sort: true,
             isTrue: true,
             isSearch: true,
             searchInfoType: 'text',
@@ -818,36 +820,6 @@
   created() {
     // this.getManufactureAttrs()
     this.getTitles()
-    /**
-     * {
-            text: '鑾峰彇閿�鍞鍗�',
-            type: 'primary',
-            fun: this.pullCustomerOrder,
-            disabled: false,
-            permitArr: []
-          },
-          {
-            text: '鑾峰彇IFS琛屽彿',
-            type: 'primary',
-            fun: this.pullIfsLineNo,
-            disabled: false,
-            permitArr: [],
-            loading: false
-          },
-          {
-            text: '鎻愪氦瀹℃牳',
-            type: 'primary',
-            fun: this.auditCustomerOrder,
-            disabled: false,
-            permitArr: [],
-            loading: false
-          },
-          {
-            text: '涓荤敓浜ц鍒�',
-            disabled: false,
-            fun: this.masterPlanHandle
-          }
-     */
     this.table.toolbar.push({
       text: '鏂板閿�鍞鍗�',
       type: 'primary',
@@ -855,14 +827,6 @@
       disabled: false,
       permitArr: []
     })
-    // this.table.toolbar.push({
-    //   text: '鍚屾ERP',
-    //   type: 'primary',
-    //   fun: this.syncERP,
-    //   loading: false,
-    //   disabled: false,
-    //   permitArr: []
-    // })
     if (this.permissions.customerorder_from_otc) {
       this.table.toolbar.push({
         text: '鑾峰彇閿�鍞鍗�',
@@ -872,16 +836,6 @@
         permitArr: []
       })
     }
-    // if (this.permissions.customerorder_ifs_line) {
-    //   this.table.toolbar.push({
-    //     text: '鑾峰彇ERP琛屽彿',
-    //     type: 'primary',
-    //     fun: this.pullIfsLineNo,
-    //     disabled: false,
-    //     permitArr: [],
-    //     loading: false
-    //   })
-    // }
     if (this.permissions.customerorder_submit_oa) {
       this.table.toolbar.push({
         text: '鎻愪氦瀹℃牳',
@@ -897,18 +851,52 @@
         text: '璁剧疆閿�鍞欢',
         type: 'primary',
         fun: this.setSalesPart,
-        disabled: false
+        disabled: false,
+        permitArr: []
       })
     }
+    this.table.toolbar.push({
+        text: '涓嬭浇Word',
+        disabled: false,
+        type: 'primary',
+        fun: this.downloadWord,
+        permitArr: ['03plan','04planed'],
+    })
     if (this.permissions.customerorder_create_masterplan) {
       this.table.toolbar.push({
         text: '涓荤敓浜ц鍒�',
         disabled: false,
-        fun: this.masterPlanHandle
+        fun: this.masterPlanHandle,
+        permitArr: []
       })
     }
   },
   methods: {
+    //涓嬭浇word
+    downloadWord(){
+        let ids = this.multipleSelection.map(ele=>ele.id)
+        if(ids.length<1){
+            this.$message.error("璇烽�夋嫨涓�鏉℃暟鎹�")
+            return
+        }
+        downloadWordFile(ids).then(response=>{
+          // 澶勭悊杩斿洖鐨勬枃浠舵祦
+          const blob = response.data
+          const link = document.createElement('a')
+          link.href = URL.createObjectURL(blob)
+          const disposition = response.headers["content-disposition"]
+          let temp = disposition.substring(disposition.lastIndexOf('=') + 1)
+          link.download = decodeURI(temp)
+          document.body.appendChild(link)
+          link.click()
+          window.setTimeout(function() {
+            URL.revokeObjectURL(blob)
+            document.body.removeChild(link)
+          }, 0)
+        }).catch(error=>{
+            console.error(error);
+        })
+    },
     getOtcPartSyncOptionList() {
       return this.otcPartSyncOptionList
     },
@@ -1061,7 +1049,8 @@
             }
           })
           if (flag) {
-            checkOA(this.multipleSelection.map((e) => e.id)).then((res) => {
+
+            checkOA(this.multipleSelection.map((e) => e.id),{}).then((res) => {
               if (!res.data.data.success) {
                 this.$confirm(`${res.data.data.message}`, '鎻愮ず', {
                   confirmButtonText: '纭畾',
@@ -1225,6 +1214,21 @@
           this.stateTagArr[i].disabled = true
         }
       }
+      // 寰幆琛ㄥご鎸夐挳锛屽垽鏂瘡涓寜閽殑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
+        }
+      }
       this.multipleSelection = val
     },
     getCustomerCoState(row, column, cellValue) {

--
Gitblit v1.9.3