From 7a648ed5c64a234198dafc0c541b91e990e237d9 Mon Sep 17 00:00:00 2001 From: peng <peng.com> Date: 星期二, 09 九月 2025 12:00:31 +0800 Subject: [PATCH] 解决发货时会多发的问题 --- seller/src/views/order/order/orderDetail.vue | 39 +++++++++++++++++++++++++++++++++++++-- 1 files changed, 37 insertions(+), 2 deletions(-) diff --git a/seller/src/views/order/order/orderDetail.vue b/seller/src/views/order/order/orderDetail.vue index fbfd09b..dd1896f 100644 --- a/seller/src/views/order/order/orderDetail.vue +++ b/seller/src/views/order/order/orderDetail.vue @@ -807,6 +807,7 @@ // 鍒嗗寘瑁瑰彂璐� groupShipModal: false, + groupShipModalOpened: false, // 鏍囪瘑鍒嗗寘瑁瑰彂璐у脊绐楁槸鍚﹀凡鎵撳紑杩� shipLoading: true, groupOrderDeliveryForm: { logisticsNo: "", //鍙戣揣鍗曞彿 @@ -857,11 +858,19 @@ methods: { // 閫変腑 selectGroupShipGoodsMethods (selected) { + console.log('selectGroupShipGoodsMethods琚皟鐢�, selected:', JSON.stringify(selected)); + // 绠�鍖栭�昏緫锛岀洿鎺ヤ繚瀛橀�変腑鐨勫晢鍝侊紝鏁伴噺鍦ㄦ彁浜ゆ椂浠巇ata鏁扮粍鑾峰彇 this.selectGroupShipGoods = selected; + console.log('selectGroupShipGoods宸叉洿鏂�'); }, // 鍒嗗寘瑁瑰彂璐� groupShip () { this.groupShipModal = true; + this.groupShipModalOpened = true; // 鏍囪寮圭獥宸叉墦寮� + this.groupOrderDeliveryForm = { + logisticsNo: "", //鍙戣揣鍗曞彿 + logisticsId: "", //鐗╂祦鍏徃 + } this.getLogisticsList(); }, // 鍒嗛〉鑾峰彇鐗╂祦鍏徃 @@ -874,6 +883,7 @@ }, // 鍒嗗寘瑁瑰彂璐� confirmShipGroupGoods () { + console.log('琛ㄥ崟鍘熷鏁版嵁--------------------------銆�',JSON.stringify(this.selectGroupShipGoods)) this.$refs.groupOrderDeliveryForm.validate(async (valid) => { if (valid) { if (this.selectGroupShipGoods.length) { @@ -881,16 +891,33 @@ ...this.groupOrderDeliveryForm, orderSn: this.sn, partDeliveryDTOList: this.selectGroupShipGoods.map((item) => { + // 鐩存帴浠巇ata鏁扮粍涓幏鍙栨渶鏂扮殑canNum鍊硷紝鑰屼笉渚濊禆閫夋嫨鏃剁殑鏁版嵁 + const currentDataItem = this.data.find(d => d.id === item.id); + const finalDeliveryNum = currentDataItem ? currentDataItem.canNum : item.num; + + console.log('澶勭悊鍟嗗搧椤�:', { + id: item.id, + selectedCanNum: item.canNum, + dataCanNum: currentDataItem?.canNum, + num: item.num, + finalDeliveryNum: finalDeliveryNum + }); + return { orderItemId: item.id, - deliveryNum: item.canNum ? item.canNum : item.num, + deliveryNum: finalDeliveryNum, }; }), }; + console.log('---------------------->',JSON.stringify(submit)); const res = await API_Order.partDelivery(this.sn, submit); if (res.success) { this.$Message.success("鍙戣揣鎴愬姛!"); this.shipLoading = false; + // 娓呯┖閫変腑鐨勫晢鍝佹暟鎹紝閬垮厤鏁版嵁娈嬬暀 + this.selectGroupShipGoods = []; + // 閲嶇疆寮圭獥鎵撳紑鏍囪瘑锛屼笅娆℃墦寮�鏃舵樉绀洪粯璁ゅ�� + this.groupShipModalOpened = false; this.getDataDetail(); this.getOrderPackage(); this.groupShipModal = false; @@ -987,13 +1014,21 @@ this.allowOperation = res.result.allowOperationVO; if (res.result.orderItems.length) { this.data = res.result.orderItems.map((item) => { + // 鍙湪寮圭獥鎵撳紑鐘舵�佷笅鎵嶄繚鐣欑敤鎴蜂慨鏀圭殑canNum鍊� + const existingItem = this.groupShipModalOpened ? this.data.find(d => d.id === item.id) : null; + const defaultCanNum = item.num - item.deliverNumber; + return { ...item, ___num: item.num, _disabled: item.deliverNumber >= item.num, - canNum: item.num - item.deliverNumber + // 濡傛灉寮圭獥宸叉墦寮�涓旂敤鎴峰凡缁忎慨鏀硅繃canNum涓斿�煎悎鐞嗭紝鍒欎繚鐣欙紱鍚﹀垯浣跨敤榛樿鍊� + canNum: (existingItem && existingItem.canNum !== undefined && existingItem.canNum <= defaultCanNum) + ? existingItem.canNum + : defaultCanNum }; }); + console.log('---------------------->璁㈠崟璇︽儏',this.data) } this.orderLogData = res.result.orderLogs; this.typeList = JSON.parse(JSON.stringify(res.result.order.priceDetailDTO.discountPriceDetail)); -- Gitblit v1.8.0