From 9ec715d2deb18a269dd49c48da91a36632d08c81 Mon Sep 17 00:00:00 2001
From: wangxinhui <wangxinhui@hnkhzn.com>
Date: 星期三, 18 六月 2025 00:56:26 +0800
Subject: [PATCH] 最新代码上传,优化功能等

---
 代码管理/WMS/WIDESEA_WMSClient/src/extension/outbound/extend/outOrderDetail.vue |  136 +++++++++++++++++++++++++++++++++++++-------
 1 files changed, 113 insertions(+), 23 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 9f0e8c5..141bacc 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"
@@ -1,6 +1,12 @@
 <template>
   <div>
-    <vol-box v-model="showDetialBox" :lazy="true" width="75%" :padding="15" title="鍗曟嵁鏄庣粏淇℃伅">
+    <vol-box
+      v-model="showDetialBox"
+      :lazy="true"
+      width="75%"
+      :padding="15"
+      title="鍗曟嵁鏄庣粏淇℃伅"
+    >
       <div class="box-head">
         <el-alert :closable="false" style="width: 100%">
           <el-row>
@@ -8,27 +14,73 @@
               <span>宸查�変腑 {{ selection.length }} 椤�</span>
             </el-col>
             <el-col :span="8">
-              <el-link type="primary" size="small" style="float: right; height: 20px" @click="lockstocks">閿佸畾搴撳瓨</el-link>
-              <el-link type="primary" size="small" style="float: right; height: 20px; margin-right: 10px"
-                @click="outbound">鐩存帴鍑哄簱</el-link>
-              <el-link type="primary" size="small" style="float: right; height: 20px; margin-right: 10px"
-                @click="getData">鍒锋柊</el-link></el-col>
+              <!-- <el-link
+                type="primary"
+                size="small"
+                style="float: right; height: 20px"
+                @click="lockstocks"
+                >閿佸畾搴撳瓨</el-link
+              > -->
+              <el-link
+                type="primary"
+                size="small"
+                style="float: right; height: 20px; margin-right: 10px"
+                @click="outbound"
+                >鐩存帴鍑哄簱</el-link
+              >
+              <el-link
+                type="primary"
+                size="small"
+                style="float: right; height: 20px; margin-right: 10px"
+                @click="getData"
+                >鍒锋柊</el-link
+              ></el-col
+            >
           </el-row>
         </el-alert>
       </div>
       <div class="box-table" style="margin-top: 1%">
-        <el-table ref="singleTable" :data="tableData" style="width: 100%; height: 100%" highlight-current-row
-          @current-change="handleCurrentChange" height="500px" @row-click="handleRowClick"
-          @selection-change="handleSelectionChange">
+        <el-table
+          ref="singleTable"
+          :data="tableData"
+          :summary-method="getSummaries"
+          show-summary
+          style="width: 100%; height: 100%"
+          highlight-current-row
+          @current-change="handleCurrentChange"
+          height="500px"
+          @row-click="handleRowClick"
+          @selection-change="handleSelectionChange"
+        >
           <el-table-column type="selection" width="55"> </el-table-column>
-          <el-table-column label="搴忓彿" type="index" fixed="left" width="55" align="center"></el-table-column>
-          <el-table-column v-for="(item, index) in tableColumns.filter((x) => !x.hidden)" :key="index" :prop="item.prop"
-            :label="item.title" :width="item.width" align="center">
+          <el-table-column
+            label="搴忓彿"
+            type="index"
+            fixed="left"
+            width="55"
+            align="center"
+          ></el-table-column>
+          <el-table-column
+            v-for="(item, index) in tableColumns.filter((x) => !x.hidden)"
+            :key="index"
+            :prop="item.prop"
+            :label="item.title"
+            :width="item.width"
+            align="center"
+          >
             <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>
+                <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'">
@@ -42,7 +94,10 @@
       </div>
     </vol-box>
     <stock-select ref="child" @parentCall="parentCall"></stock-select>
-    <selected-stock ref="selectedStock" @parentCall="parentCall"></selected-stock>
+    <selected-stock
+      ref="selectedStock"
+      @parentCall="parentCall"
+    ></selected-stock>
   </div>
 </template>
 <script>
@@ -112,11 +167,17 @@
           width: 90,
         },
         {
+          prop: "unit",
+          title: "鍗曚綅",
+          type: "string",
+          width: 90,
+        },
+        {
           prop: "orderDetailStatus",
           title: "璁㈠崟鏄庣粏鐘舵��",
           type: "tag",
           width: 180,
-          bindKey: "orderDetailStatusEnum"
+          bindKey: "orderDetailStatusEnum",
         },
         {
           prop: "assignStock",
@@ -168,11 +229,11 @@
         Foots: "",
         total: 0,
         // 2020.08.29澧炲姞鑷畾涔夊垎椤垫潯澶у皬
-        sizes: [30, 60, 100, 120],
-        size: 30, // 榛樿鍒嗛〉澶у皬
+        sizes: [60, 100, 120],
+        size: 60, // 榛樿鍒嗛〉澶у皬
         Wheres: [],
         page: 1,
-        rows: 30,
+        rows: 60,
       },
       searchFormOptions: [
         [
@@ -211,6 +272,34 @@
       this.showDetialBox = true;
       this.getDictionaryData();
       this.getData();
+    },
+    getSummaries(param) {
+      const { columns, data } = param
+      const sums = []
+      
+      columns.forEach((column, index) => {
+        if (index === 0) {
+          sums[index] = '鍚堣'
+          return
+        }
+        
+        // 浠呭鏁板�煎垪姹傚拰
+        // 浠呭鏌愪竴鍒楁眰鍜�
+        if (column.property === 'lockQuantity' || column.property === 'overOutQuantity' || column.property === 'orderQuantity') {
+          const values = data.map(item => Number(item[column.property]))
+        console.log(values);
+        if (!values.every(value => isNaN(value))) {
+          sums[index] = values.reduce((prev, curr) => {
+            return prev + (isNaN(curr) ? 0 : curr)
+          }, 0)
+        } else {
+          sums[index] = '-'
+        }
+        }
+        
+      })
+
+      return sums
     },
     getData() {
       var wheres = [{ name: "orderId", value: this.row.id }];
@@ -279,7 +368,8 @@
         if (
           row.orderDetailStatus !== 0 &&
           row.orderDetailStatus !== 60 &&
-          row.orderDetailStatus !== 70
+          row.orderDetailStatus !== 70 &&
+          row.orderDetailStatus !== 80
         ) {
           return true;
         } else {
@@ -352,12 +442,12 @@
   background: oldlace;
 }
 
-.box-table .el-table tbody tr:hover>td {
+.box-table .el-table tbody tr:hover > td {
   background-color: #d8e0d4 !important;
   /* color: #ffffff; */
 }
 
-.box-table .el-table tbody tr.current-row>td {
+.box-table .el-table tbody tr.current-row > td {
   background-color: #f0f9eb !important;
   /* color: #ffffff; */
 }

--
Gitblit v1.9.3