From 3901a1e90bdeb25a53bba1f86361b37fe157a914 Mon Sep 17 00:00:00 2001
From: zouyu <2723363702@qq.com>
Date: 星期五, 28 十一月 2025 11:07:14 +0800
Subject: [PATCH] 原材料下单:待下单的订单批次号重复的高亮显示

---
 src/views/business/materialOrder/index.vue |  105 +++++++++++++++++++++++++++++++++++-----------------
 1 files changed, 71 insertions(+), 34 deletions(-)

diff --git a/src/views/business/materialOrder/index.vue b/src/views/business/materialOrder/index.vue
index 7cb87e6..3ee3dcf 100644
--- a/src/views/business/materialOrder/index.vue
+++ b/src/views/business/materialOrder/index.vue
@@ -48,7 +48,7 @@
               <el-option v-for="(a, i) in inspectStatusList" :key="i" :label="a.label" :value="a.value"></el-option>
             </el-select>
           </el-form-item>
-          <el-form-item label="涓嬪彂鏃堕棿" prop="date" v-if="(tabIndex === 2 || tabIndex === 3 || tabIndex === 4) && more">
+          <el-form-item label="鎶ユ鏃堕棿" prop="date" v-if="(tabIndex === 2 || tabIndex === 3 || tabIndex === 4) && more">
             <el-date-picker v-model="entity.date" end-placeholder="缁撴潫鏃ユ湡" format="yyyy-MM-dd" placeholder="閫夋嫨鏃ユ湡" @change="goSearch"
               range-separator="鑷�" size="small" start-placeholder="寮�濮嬫棩鏈�" type="daterange" value-format="yyyy-MM-dd">
             </el-date-picker>
@@ -67,7 +67,7 @@
             </ul>
           </div>
           <div>
-            <el-button v-show="tabIndex === 3 || tabIndex === 2" :loading="outLoading" size="small" type="primary"
+            <el-button v-show="tabIndex === 3" :loading="outLoading" size="small" type="primary"
               @click="handleOut">瀵煎嚭</el-button>
             <el-button v-if="tabIndex === 0" size="small" type="primary" @click="copper">閾滄潗鏂欎笅鍗�</el-button>
             <el-button v-if="tabIndex !== 0" size="small" type="primary" @click="openPrint">鏍囩鎵撳嵃</el-button>
@@ -82,25 +82,25 @@
         <!--妫�楠屼腑-->
         <div class="table">
           <lims-table :tableData="tableData1" :column="column1" v-if="tabIndex === 1" :isSelection="true"
-            :rowClassName="changeRowClass" :handleSelectionChange="selectMethod" @pagination="pagination1"
+            :rowClassName="changeRowClass2" :handleSelectionChange="selectMethod" @pagination="pagination1"
             :height="'calc(100vh - 290px)'" key="tableData1" :page="page1" :tableLoading="tableLoading1"></lims-table>
         </div>
         <!--宸叉楠�-->
         <div class="table">
           <lims-table :tableData="tableData2" :column="column2" v-if="tabIndex === 2" :isSelection="true"
-            :rowClassName="changeRowClass" :handleSelectionChange="selectMethod" @pagination="pagination2"
+            :rowClassName="changeRowClass2" :handleSelectionChange="selectMethod" @pagination="pagination2"
             :height="'calc(100vh - 290px)'" key="tableData2" :page="page2" :tableLoading="tableLoading2"></lims-table>
         </div>
         <!--鍏ㄩ儴-->
         <div class="table">
           <lims-table :tableData="tableData3" :column="column3" v-if="tabIndex === 3" :isSelection="true"
-            :rowClassName="changeRowClass" :handleSelectionChange="selectMethod" @pagination="pagination3"
+            :rowClassName="changeRowClass2" :handleSelectionChange="selectMethod" @pagination="pagination3"
             :height="'calc(100vh - 290px)'" key="tableData3" :page="page3" :tableLoading="tableLoading3"></lims-table>
         </div>
         <!--瀛e害妫�楠�-->
         <div class="table">
           <lims-table :tableData="tableData4" :column="column4" v-if="tabIndex === 4" :isSelection="true"
-            :rowClassName="changeRowClass" :handleSelectionChange="selectMethod" @pagination="pagination4"
+            :rowClassName="changeRowClass2" :handleSelectionChange="selectMethod" @pagination="pagination4"
             :height="'calc(100vh - 290px)'" key="tableData4" :page="page4" :tableLoading="tableLoading4"></lims-table>
         </div>
       </div>
@@ -239,7 +239,7 @@
             }
           }
         },
-        { label: '鎶佃揪鐨勯噰璐暟閲�', prop: 'qtyArrived' },
+        { label: '鎶佃揪鐨勯噰璐暟閲�', prop: 'purQtyInStore' },
         { label: '鍗曚綅', prop: 'buyUnitMeas' },
         { label: '璁㈠崟鍙�', prop: 'orderNo' },
         { label: '鎺ユ敹鏃堕棿', prop: 'receiverDate' },
@@ -319,7 +319,7 @@
             }
           }
         },
-        { label: '鎶佃揪鐨勯噰璐暟閲�', prop: 'qtyArrived' },
+        { label: '鎶佃揪鐨勯噰璐暟閲�', prop: 'purQtyInStore' },
         { label: '鍗曚綅', prop: 'buyUnitMeas' },
         { label: '璁㈠崟鍙�', prop: 'orderNo' },
         { label: '鎺ユ敹鏃堕棿', prop: 'receiverDate' },
@@ -404,7 +404,7 @@
           }
         },
         { label: '璁㈠崟鍙�', prop: 'orderNo' },
-        { label: '鎶佃揪鐨勯噰璐暟閲�', prop: 'qtyArrived' },
+        { label: '鎶佃揪鐨勯噰璐暟閲�', prop: 'purQtyInStore' },
         { label: '涓嬪彂鏃堕棿', prop: 'sendTime' },
         { label: '鎵瑰彿', prop: 'updateBatchNo' },
         { label: '闆朵欢鍙�', prop: 'partNo' },
@@ -590,7 +590,7 @@
           }
         },
         { label: '璁㈠崟鍙�', prop: 'orderNo' },
-        { label: '鎶佃揪鐨勯噰璐暟閲�', prop: 'qtyArrived' },
+        { label: '鎶佃揪鐨勯噰璐暟閲�', prop: 'purQtyInStore' },
         { label: '涓嬪彂鏃堕棿', prop: 'sendTime' },
         { label: '鎵瑰彿', prop: 'updateBatchNo' },
         { label: '闆朵欢鍙�', prop: 'partNo' },
@@ -714,7 +714,7 @@
           }
         },
         { label: '璁㈠崟鍙�', prop: 'orderNo' },
-        { label: '鎶佃揪鐨勯噰璐暟閲�', prop: 'qtyArrived' },
+        { label: '鎶佃揪鐨勯噰璐暟閲�', prop: 'purQtyInStore' },
         { label: '涓嬪彂鏃堕棿', prop: 'sendTime' },
         { label: '鎵瑰彿', prop: 'updateBatchNo' },
         { label: '闆朵欢鍙�', prop: 'partNo' },
@@ -1108,31 +1108,57 @@
       let inspectorList = []
       inspectorList.push(this.nickName)
       this.InspectInfoDialog = false
-      this.$router.push({
-        name: "Inspection",
-        query: {
-          sonLaboratory: '鍘熸潗鏂�',
-          state: 3,
-          typeSource: this.insInfo.typeSource,
-          orderId: this.insInfo.enterOrderId,
-          inspectorList: inspectorList,
-        },
-      })
+      if (this.checkPermi(['business:inspectionView'])) {
+        this.$router.push({
+          name: "InspectionView",
+          query: {
+            sonLaboratory: '鍘熸潗鏂�',
+            state: 3,
+            typeSource: this.insInfo.typeSource,
+            orderId: this.insInfo.enterOrderId,
+            inspectorList: inspectorList,
+          },
+        })
+      } else {
+        this.$router.push({
+          path: "/inspectionTask/inspection",
+          query: {
+            sonLaboratory: '鍘熸潗鏂�',
+            state: 3,
+            typeSource: this.insInfo.typeSource,
+            orderId: this.insInfo.enterOrderId,
+            inspectorList: inspectorList,
+          },
+        })
+      }
     },
     viewInsInfo1() {
       let inspectorList = []
       inspectorList.push(this.nickName)
       this.InspectInfoDialog = false
-      this.$router.push({
-        name: "Inspection",
-        query: {
-          sonLaboratory: '鍘熸潗鏂�',
-          state: 3,
-          typeSource: this.insInfo.typeSource,
-          orderId: this.insInfo.quarterOrderId,
-          inspectorList: inspectorList,
-        },
-      })
+      if (this.checkPermi(['business:inspectionView'])) {
+        this.$router.push({
+          name: "InspectionView",
+          query: {
+            sonLaboratory: '鍘熸潗鏂�',
+            state: 3,
+            typeSource: this.insInfo.typeSource,
+            orderId: this.insInfo.quarterOrderId,
+            inspectorList: inspectorList,
+          },
+        })
+      } else {
+        this.$router.push({
+          path: "/inspectionTask/inspection",
+          query: {
+            sonLaboratory: '鍘熸潗鏂�',
+            state: 3,
+            typeSource: this.insInfo.typeSource,
+            orderId: this.insInfo.quarterOrderId,
+            inspectorList: inspectorList,
+          },
+        })
+      }
     },
     goback() {
       this.state = 0
@@ -1324,10 +1350,14 @@
     },
     // 瀵煎嚭
     handleOut() {
-      let entity = this.tabIndex === 3 ? { ...this.entity, isInspect: 2 } : { ...this.entity, state: 2, orderState: 4, }
-      delete entity.orderBy
       this.outLoading = true
-      rawAllExport({ entity: entity }).then(res => {
+      let params = {}
+      if (this.multipleSelection.length > 0) {
+        params.ids = this.multipleSelection.map(item => item.id).join(',');
+      } else {
+        params = {...this.entity}
+      }
+      rawAllExport(params).then(res => {
         this.outLoading = false
         const blob = new Blob([res], { type: 'application/octet-stream' });
         this.$download.saveAs(blob, '鍘熸潗鏂欐娴嬩俊鎭鍑�.xlsx');
@@ -1355,6 +1385,7 @@
     // 鍒囨崲涓嬪崟tab琛ㄦ牸
     handleTab(m) {
       this.tabIndex = m;
+      this.multipleSelection = []
       this.refreshTable()
     },
     // 琛ㄦ牸閫夋嫨鏂规硶
@@ -1362,6 +1393,12 @@
       this.multipleSelection = val
     },
     changeRowClass({ row, rowIndex }) {
+      if (row.isFirst != 1 && row.lotBatchNoHasRepeat) {
+        return 'highlight-danger-row-border'
+      }
+      return ''
+    },
+    changeRowClass2({ row, rowIndex }) {
       if (row.isFirst == 1) {
         return 'highlight-danger-row-border'
       }

--
Gitblit v1.9.3