From 6ed28fe4e3536519ed5c59dcdb06264eb5c9866e Mon Sep 17 00:00:00 2001
From: gongchunyi <deslre0381@gmail.com>
Date: 星期一, 13 四月 2026 14:10:59 +0800
Subject: [PATCH] fix: 销售订单状态修改、发货审批修改
---
src/views/salesManagement/salesLedger/index.vue | 54 ++++++++++++++++++++++++++++++------------------------
1 files changed, 30 insertions(+), 24 deletions(-)
diff --git a/src/views/salesManagement/salesLedger/index.vue b/src/views/salesManagement/salesLedger/index.vue
index 09bd7fe..3790894 100644
--- a/src/views/salesManagement/salesLedger/index.vue
+++ b/src/views/salesManagement/salesLedger/index.vue
@@ -181,13 +181,14 @@
<el-table-column label="鍚堝悓閲戦(鍏�)" prop="contractAmount" width="220" show-overflow-tooltip
:formatter="formattedNumber" />
<el-table-column label="鍙戣揣鐘舵��" width="140" align="center">
- <template #default="scope">
- <el-tag v-if="Number(scope.row.deliveryStatus) === 1" type="info">鏈彂璐�</el-tag>
- <el-tag v-else-if="Number(scope.row.deliveryStatus) === 2" type="warning">瀹℃壒涓�</el-tag>
- <el-tag v-else-if="Number(scope.row.deliveryStatus) === 3" type="danger">瀹℃壒澶辫触</el-tag>
- <el-tag v-else-if="Number(scope.row.deliveryStatus) === 4" type="success">宸插彂璐�</el-tag>
- <el-tag v-else type="info">-</el-tag>
- </template>
+ <template #default="scope">
+ <el-tag v-if="Number(scope.row.deliveryStatus) === 1" type="info">鏈彂璐�</el-tag>
+ <el-tag v-else-if="Number(scope.row.deliveryStatus) === 2" type="warning">瀹℃壒涓�</el-tag>
+ <el-tag v-else-if="Number(scope.row.deliveryStatus) === 3" type="danger">瀹℃壒涓嶉�氳繃</el-tag>
+ <el-tag v-else-if="Number(scope.row.deliveryStatus) === 4" type="primary">瀹℃壒閫氳繃</el-tag>
+ <el-tag v-else-if="Number(scope.row.deliveryStatus) === 5" type="success">宸插彂璐�</el-tag>
+ <el-tag v-else type="info">-</el-tag>
+ </template>
</el-table-column>
<el-table-column label="褰曞叆浜�" prop="entryPersonName" width="100" show-overflow-tooltip />
<el-table-column label="褰曞叆鏃ユ湡" prop="entryDate" width="120" show-overflow-tooltip />
@@ -2635,14 +2636,21 @@
try {
const targets = [];
for (const ledger of selectedRows.value) {
- // 鍙拌处宸插彂璐э細涓嶅厑璁稿啀娆″彂璐�
- if (Number(ledger.deliveryStatus) === 1) continue;
+
+ //濡傛灉宸茬粡鏄�滃鎵逛腑(2)鈥濇垨鈥滃凡鍙戣揣(4)鈥濓紝鍒欒烦杩囷紝涓嶅厑璁搁噸澶嶆搷浣�
+ const status = Number(ledger.deliveryStatus);
+ if (status === 2 || status === 4) {
+ console.warn(`鍙拌处缂栧彿 ${ledger.salesContractNo} 鐘舵�佷负 ${status}锛岃烦杩囧彂璐);
+ continue;
+ }
+
let products = [];
try {
const res = await productList({ salesLedgerId: ledger.id, type: 1 });
products = res?.data || [];
- } catch {
+ } catch (error) {
products = [];
+ console.error('璇锋眰鍙戠敓寮傚父', error);
}
for (const product of products) {
if (!canShip(product)) continue;
@@ -2652,7 +2660,6 @@
});
}
}
-
if (targets.length === 0) {
proxy.$modal.msgWarning("娌℃湁鍙彂璐х殑鏁版嵁");
return;
@@ -2723,19 +2730,18 @@
return;
}
- // 渚濇鍙戣揣锛堥伩鍏嶅苟鍙戜笅搴撳瓨鎵e噺/鐘舵�佹洿鏂颁簰鐩稿奖鍝嶏級
- const run = async () => {
- for (const item of targets) {
- const salesLedgerId = item.salesLedgerId;
- if (!salesLedgerId) continue;
- await addShippingInfo({
- salesLedgerId,
- salesLedgerProductId: item.id,
- type: deliveryForm.value.type,
- approveUserIds,
- });
- }
- };
+ // 鎸夊彴璐︾淮搴﹀幓閲嶏紝姣忎釜 salesLedgerId 鍙皟鐢ㄤ竴娆″彂璐ф帴鍙�
+ const uniqueLedgerIds = [...new Set(targets.map((item) => item.salesLedgerId).filter(Boolean))];
+
+ const run = async () => {
+ for (const salesLedgerId of uniqueLedgerIds) {
+ await addShippingInfo({
+ salesLedgerId,
+ type: deliveryForm.value.type,
+ approveUserIds,
+ });
+ }
+ };
run()
.then(() => {
--
Gitblit v1.9.3