From 0c130536545f66d2acb8ec65df388fb8e84abbd9 Mon Sep 17 00:00:00 2001
From: yyb <995253665@qq.com>
Date: 星期五, 03 四月 2026 09:14:51 +0800
Subject: [PATCH] 添加发货状态列并优化发货逻辑
---
src/views/salesManagement/salesLedger/index.vue | 68 +++++++++++++++++++++++++++++++---
1 files changed, 62 insertions(+), 6 deletions(-)
diff --git a/src/views/salesManagement/salesLedger/index.vue b/src/views/salesManagement/salesLedger/index.vue
index dae908a..c127d81 100644
--- a/src/views/salesManagement/salesLedger/index.vue
+++ b/src/views/salesManagement/salesLedger/index.vue
@@ -116,13 +116,13 @@
<el-tag v-else type="danger">涓嶈冻</el-tag>
</template>
</el-table-column>
- <el-table-column label="鍙戣揣鐘舵��" width="140" align="center">
+ <!-- <el-table-column label="鍙戣揣鐘舵��" width="140" align="center">
<template #default="scope">
<el-tag :type="getShippingStatusType(scope.row)" size="small">
{{ getShippingStatusText(scope.row) }}
</el-tag>
</template>
- </el-table-column>
+ </el-table-column> -->
<el-table-column label="蹇�掑叕鍙�" prop="expressCompany" show-overflow-tooltip />
<el-table-column label="蹇�掑崟鍙�" prop="expressNumber" show-overflow-tooltip />
<el-table-column label="鍙戣揣杞︾墝" minWidth="100px" align="center">
@@ -172,6 +172,12 @@
<el-table-column label="浠樻鏂瑰紡" prop="paymentMethod" show-overflow-tooltip />
<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="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 />
<el-table-column label="绛捐鏃ユ湡" prop="executionDate" width="120" show-overflow-tooltip />
@@ -2516,11 +2522,23 @@
* @param row 琛屾暟鎹�
*/
const canShip = (row) => {
+
// 浜у搧鐘舵�佸繀椤绘槸鍏呰冻锛坅pproveStatus === 1锛�
- if (row.approveStatus !== 1) {
- return false;
- }
+ // if (row.approveStatus !== 1) {
+ // return false;
+ // }
+ // 濡傛灉鍚庣杩斿洖浜嗗彴璐︾骇鍙戣揣鐘舵�侊紙deliveryStatus锛�
+ // 1=宸插彂璐э紝鍒欑姝㈠啀娆″彂璐�
+ const deliveryStatus = row.deliveryStatus;
+ if (
+ deliveryStatus !== null &&
+ deliveryStatus !== undefined &&
+ String(deliveryStatus).trim() !== ""
+ ) {
+ if (Number(deliveryStatus) === 1) return false;
+ }
+
// 鑾峰彇鍙戣揣鐘舵��
const shippingStatus = row.shippingStatus;
@@ -2538,6 +2556,34 @@
if (selectedRows.value.length === 0) {
proxy.$modal.msgWarning("璇烽�夋嫨鏁版嵁");
return;
+ }
+
+ // 宸插彂璐у彴璐︼細寮圭獥鎻愰啋锛屼笉鑳藉啀娆″彂璐�
+ const shippedLedgers = selectedRows.value.filter((r) => Number(r.deliveryStatus) === 1);
+ if (shippedLedgers.length === selectedRows.value.length) {
+ try {
+ await ElMessageBox.alert("鎵�閫夐攢鍞彴璐﹀潎宸插彂璐э紝涓嶈兘鍐嶆鍙戣揣銆�", "鎻愮ず", {
+ type: "warning",
+ confirmButtonText: "鐭ラ亾浜�",
+ });
+ } catch {
+ /* 鍏抽棴寮圭獥 */
+ }
+ return;
+ }
+ if (shippedLedgers.length > 0) {
+ try {
+ await ElMessageBox.alert(
+ "閫変腑鐨勯攢鍞彴璐︿腑鍖呭惈宸插彂璐ц褰曪紝宸插彂璐х殑涓嶈兘鍐嶆鍙戣揣锛岀郴缁熷皢浠呬负鏈彂璐у彴璐﹀鐞嗐��",
+ "鎻愮ず",
+ {
+ type: "warning",
+ confirmButtonText: "鐭ラ亾浜�",
+ }
+ );
+ } catch {
+ return;
+ }
}
const customerNames = selectedRows.value.map((r) => String(r.customerName || "").trim());
@@ -2567,6 +2613,8 @@
try {
const targets = [];
for (const ledger of selectedRows.value) {
+ // 鍙拌处宸插彂璐э細涓嶅厑璁稿啀娆″彂璐�
+ if (Number(ledger.deliveryStatus) === 1) continue;
let products = [];
try {
const res = await productList({ salesLedgerId: ledger.id, type: 1 });
@@ -2574,7 +2622,6 @@
} catch {
products = [];
}
-
for (const product of products) {
if (!canShip(product)) continue;
targets.push({
@@ -2617,6 +2664,15 @@
// 鎵撳紑鍙戣揣寮规
const openDeliveryForm = (row) => {
+ // 濡傛灉璇ヨ宸茬粡鍙戣揣锛坉eliveryStatus=1锛夛紝绂佹鍐嶆鍙戣揣
+ if (Number(row.deliveryStatus) === 1) {
+ ElMessageBox.alert("璇ヨ褰曞凡鍙戣揣锛屼笉鑳藉啀娆″彂璐с��", "鎻愮ず", {
+ type: "warning",
+ confirmButtonText: "鐭ラ亾浜�",
+ });
+ return;
+ }
+
// 妫�鏌ユ槸鍚﹀彲浠ュ彂璐�
if (!canShip(row)) {
proxy.$modal.msgWarning("鍙湁鍦ㄤ骇鍝佺姸鎬佹槸鍏呰冻锛屽彂璐х姸鎬佹槸寰呭彂璐ф垨瀹℃牳鎷掔粷鐨勬椂鍊欐墠鍙互鍙戣揣");
--
Gitblit v1.9.3