From 4f39dcc195f28fa275fc2d065fbf1bf6a46c21b7 Mon Sep 17 00:00:00 2001
From: dengjunjie <dengjunjie@hnkhzn.com>
Date: 星期二, 17 六月 2025 00:41:18 +0800
Subject: [PATCH] 优化出入库逻辑

---
 代码管理/WMS/WIDESEA_WMSClient/src/extension/outbound/extend/outOrderDetail.vue |   78 +++++++++++++++++++++++++++++++--------
 1 files changed, 62 insertions(+), 16 deletions(-)

diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSClient/src/extension/outbound/extend/outOrderDetail.vue" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSClient/src/extension/outbound/extend/outOrderDetail.vue"
index da17d3b..da4d861 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSClient/src/extension/outbound/extend/outOrderDetail.vue"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSClient/src/extension/outbound/extend/outOrderDetail.vue"
@@ -66,18 +66,26 @@
             :width="item.width"
             align="center"
           >
-            <template #default="scoped" v-if="item.type == 'icon'">
-              <el-tooltip
-                class="item"
-                effect="dark"
-                :content="item.title"
-                placement="bottom"
-                ><el-link
-                  type="primary"
-                  :disabled="getButtonEnable(item.prop, scoped.row)"
-                  @click="tableButtonClick(scoped.row, item)"
-                  ><i :class="item.icon" style="font-size: 22px"></i></el-link
-              ></el-tooltip>
+            <template #default="scoped">
+              <div v-if="item.type == 'icon'">
+                <el-tooltip
+                  class="item"
+                  effect="dark"
+                  :content="item.title"
+                  placement="bottom"
+                  ><el-link
+                    type="primary"
+                    :disabled="getButtonEnable(item.prop, scoped.row)"
+                    @click="tableButtonClick(scoped.row, item)"
+                    ><i :class="item.icon" style="font-size: 22px"></i></el-link
+                ></el-tooltip>
+              </div>
+
+              <div v-else-if="item.type == 'tag'">
+                <el-tag size="small">
+                  {{ getDictionary(scoped.row, item) }}
+                </el-tag>
+              </div>
             </template>
           </el-table-column>
         </el-table>
@@ -135,7 +143,7 @@
         {
           prop: "batchNo",
           title: "鎵规鍙�",
-          type: "tag",
+          type: "string",
           width: 90,
         },
         {
@@ -159,8 +167,9 @@
         {
           prop: "orderDetailStatus",
           title: "璁㈠崟鏄庣粏鐘舵��",
-          type: "string",
+          type: "tag",
           width: 180,
+          bindKey: "orderDetailStatusEnum",
         },
         {
           prop: "assignStock",
@@ -246,12 +255,14 @@
         allocation_type: "",
         allocation_state: "",
       },
+      dictionaryList: null,
     };
   },
   methods: {
     open(row) {
       this.row = row;
       this.showDetialBox = true;
+      this.getDictionaryData();
       this.getData();
     },
     getData() {
@@ -319,8 +330,7 @@
       if (propName == "assignStock") {
         if (
           row.orderDetailStatus !== 0 &&
-          row.orderDetailStatus !== 60 &&
-          row.orderDetailStatus !== 70
+          row.orderDetailStatus !== 60 
         ) {
           return true;
         } else {
@@ -341,6 +351,40 @@
     handleSelectionChange(val) {
       this.selection = val;
     },
+    getDictionaryData() {
+      if (this.dictionaryList) {
+        return;
+      }
+      var param = [];
+      this.tableColumns.forEach((x) => {
+        if (x.type == "tag" && x.bindKey != "") {
+          param.push(x.bindKey);
+        }
+      });
+      this.http
+        .post("api/Sys_Dictionary/GetVueDictionary", param, "鏌ヨ涓�")
+        .then((x) => {
+          if (x.length > 0) {
+            this.dictionaryList = x;
+          }
+        });
+    },
+    getDictionary(row, column) {
+      if (this.dictionaryList) {
+        var item = this.dictionaryList.find((x) => x.dicNo == column.bindKey);
+        if (item) {
+          var dicItem = item.data.find((x) => x.key == row[column.prop]);
+          console.log(dicItem);
+          if (dicItem) {
+            return dicItem.value;
+          } else {
+            return row[column.prop];
+          }
+        } else {
+          return row[column.prop];
+        }
+      }
+    },
   },
 };
 </script>
@@ -354,9 +398,11 @@
 .text-button:hover {
   background-color: #f0f9eb !important;
 }
+
 .el-table .warning-row {
   background: oldlace;
 }
+
 .box-table .el-table tbody tr:hover > td {
   background-color: #d8e0d4 !important;
   /* color: #ffffff; */

--
Gitblit v1.9.3