From 8d36dd0ec84133585443750e2001147d5bc127c8 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期日, 20 九月 2026 20:40:42 +0800
Subject: [PATCH] 新疆-融邦 1.油品出库要绑定销售订单

---
 src/views/inventoryManagement/dispatchLog/Record.vue |   38 ++++++++++++++++++++++++++------------
 1 files changed, 26 insertions(+), 12 deletions(-)

diff --git a/src/views/inventoryManagement/dispatchLog/Record.vue b/src/views/inventoryManagement/dispatchLog/Record.vue
index feb7bf5..5881142 100644
--- a/src/views/inventoryManagement/dispatchLog/Record.vue
+++ b/src/views/inventoryManagement/dispatchLog/Record.vue
@@ -307,11 +307,19 @@
                          width="110"
                          align="center">
           <template #default="scope">
-            <el-button v-if="isSalesOutRecord(scope.row)"
-                       link
-                       type="primary"
-                       @click="openResidualOil(scope.row)">褰曞叆娈嬫补
-            </el-button>
+            <!-- 瀹℃壒閫氳繃鎵嶈兘褰曞叆娈嬫补锛涙湭閫氳繃鏃剁疆鐏板苟鎻愮ず鍘熷洜 -->
+            <el-tooltip v-if="isSalesOutRecord(scope.row)"
+                        :disabled="isApprovedApproval(scope.row.approvalStatus)"
+                        content="瀹℃壒閫氳繃鍚庢墠鑳藉綍鍏ユ畫娌�"
+                        placement="top">
+              <span>
+                <el-button link
+                           type="primary"
+                           :disabled="!isApprovedApproval(scope.row.approvalStatus)"
+                           @click="openResidualOil(scope.row)">褰曞叆娈嬫补
+                </el-button>
+              </span>
+            </el-tooltip>
           </template>
         </el-table-column>
       </el-table>
@@ -477,15 +485,16 @@
     return approvalStatusLabelMap[status] || "寰呭鎵�";
   };
 
+  // 瀹℃壒閫氳繃鍒ゅ畾锛氭暟瀛�/瀛楃涓�/鑻辨枃鏋氫妇涓夌鍐欐硶鍚庣閮藉嚭鐜拌繃锛岀粺涓�鍦ㄨ繖閲屽厹浣�
+  const isApprovedApproval = status =>
+    status === 1 ||
+    status === "1" ||
+    status === "approved" ||
+    status === "APPROVED";
+
   // 閫氳繃/椹冲洖鍥哄畾鑹诧紱鍏朵綑锛堝惈寰呭鎵广�佺┖鍊笺�佹湭鏄犲皠浣嗘枃妗堜负寰呭鎵癸級缁熶竴鐢� warning 棰勮鑹�
   const getApprovalStatusTagType = status => {
-    if (
-      status === 1 ||
-      status === "1" ||
-      status === "approved" ||
-      status === "APPROVED"
-    )
-      return "success";
+    if (isApprovedApproval(status)) return "success";
     if (
       status === 2 ||
       status === "2" ||
@@ -602,6 +611,11 @@
   const isSalesOutRecord = row => row?.outCategory === "閿�鍞�";
 
   const openResidualOil = row => {
+    // 鎸夐挳宸茬疆鐏帮紝杩欓噷鍐嶅厹涓�灞傦紝闃叉鍏跺畠鍏ュ彛缁曡繃
+    if (!isApprovedApproval(row?.approvalStatus)) {
+      proxy.$modal.msgWarning("瀹℃壒閫氳繃鍚庢墠鑳藉綍鍏ユ畫娌�");
+      return;
+    }
     residualForm.value = {
       id: row.id,
       outboundBatches: row.outboundBatches || "",

--
Gitblit v1.9.3