From c2ded572eff614cf2a259e263e60a5e8feb3e676 Mon Sep 17 00:00:00 2001
From: gongchunyi <deslre0381@gmail.com>
Date: 星期四, 23 四月 2026 16:52:30 +0800
Subject: [PATCH] fix: 销售订单发货状态修改

---
 src/views/salesManagement/receiptPayment/index.vue |   24 ++++++++++++++++++------
 1 files changed, 18 insertions(+), 6 deletions(-)

diff --git a/src/views/salesManagement/receiptPayment/index.vue b/src/views/salesManagement/receiptPayment/index.vue
index a2a0b2f..1354591 100644
--- a/src/views/salesManagement/receiptPayment/index.vue
+++ b/src/views/salesManagement/receiptPayment/index.vue
@@ -40,6 +40,7 @@
       <el-table
         :data="tableData"
         border
+        ref="tableRef"
         v-loading="tableLoading"
         @selection-change="handleSelectionChange"
         :row-key="(row) => row.id"
@@ -101,7 +102,6 @@
                   <el-button
                     link
                     type="primary"
-                    size="small"
                     @click="changeEditType(scope.row)"
                     v-if="!scope.row.editType"
                     >缂栬緫</el-button
@@ -109,7 +109,6 @@
                   <el-button
                     link
                     type="primary"
-                    size="small"
                     @click="saveReceiptPayment(scope.row)"
                     v-if="scope.row.editType"
                     >淇濆瓨</el-button
@@ -117,7 +116,6 @@
                   <el-button
                     link
                     type="primary"
-                    size="small"
                     @click="delReceiptRecord(scope.row)"
                     >鍒犻櫎</el-button
                   >
@@ -206,6 +204,8 @@
         border
         style="width: 100%"
         size="small"
+        show-summary
+        :summary-method="summarizeFormTable"
       >
         <el-table-column type="index" label="搴忓彿" width="50" align="center"/>
         <el-table-column label="閿�鍞悎鍚屽彿" prop="salesContractNo" show-overflow-tooltip />
@@ -313,6 +313,7 @@
 });
 const total = ref(0);
 const expandedRowKeys = ref([]);
+const tableRef = ref(null);
 
 // 鐢ㄦ埛淇℃伅琛ㄥ崟寮规鏁版嵁
 const dialogFormVisible = ref(false);
@@ -335,7 +336,7 @@
 const getStatusTagType = (statusName = '') => {
   const normalized = statusName.trim();
   if (!normalized) return 'info';
-  return normalized === '鏈畬鎴愬洖娆�' ? 'danger' : 'success';
+  return normalized === '鏈畬鎴愪粯娆�' ? 'danger' : 'success';
 };
 // 鏌ヨ鍒楄〃
 /** 鎼滅储鎸夐挳鎿嶄綔 */
@@ -404,7 +405,7 @@
 const summarizeMainTable = (param) => {
   return proxy.summarizeTable(
     param,
-    ["receiptPaymentAmountTotal", "noReceiptAmount"],
+    ["invoiceTotal", "pendingInvoiceTotal"],
     {
       ticketsNum: { noDecimal: true }, // 涓嶄繚鐣欏皬鏁�
       futureTickets: { noDecimal: true }, // 涓嶄繚鐣欏皬鏁�
@@ -415,13 +416,21 @@
 const summarizeChildrenTable = (param) => {
   return proxy.summarizeTable(param, ["receiptPaymentAmount"]);
 };
+// 鏂板鍥炴寮圭獥琛ㄥ悎璁℃柟娉�
+const summarizeFormTable = (param) => {
+  return proxy.summarizeTable(param, ["pendingInvoiceTotal", "receiptPaymentAmount"]);
+};
 // 鎵撳紑寮规
 const openForm = () => {
   if (selectedRows.value.length === 0) {
     proxy.$modal.msgError("璇烽�夋嫨鑷冲皯涓�鏉℃暟鎹�");
     return;
   }
-  const validRows = selectedRows.value.filter((item) => item.noReceiptAmount !== 0);
+  // 浠呭厑璁糕�滃緟鍥炴閲戦 > 0鈥濈殑璁板綍杩涘叆鏂板鍥炴寮圭獥锛屽苟杩囨护鎺夊彲鑳芥贩鍏ョ殑绌哄璞�
+  const validRows = selectedRows.value.filter((item) => {
+    if (!item || !item.id) return false;
+    return Number(item.pendingInvoiceTotal ?? 0) > 0;
+  });
   if (validRows.length === 0) {
     proxy.$modal.msgWarning("鎵�閫夎褰曞潎鏃犻渶鍥炴");
     return;
@@ -485,6 +494,9 @@
 const closeDia = () => {
   forms.value = [];
   dialogFormVisible.value = false;
+  // 閬垮厤浜屾鎵撳紑寮圭獥鏃朵粛鎼哄甫涓婁竴娆$殑閫夋嫨瀵艰嚧鈥滃鍑轰竴琛�/鑴忔暟鎹��
+  selectedRows.value = [];
+  tableRef.value?.clearSelection();
 };
 
 // 鍒犻櫎鍥炴璁板綍

--
Gitblit v1.9.3