From b56fcbe8d410c18b3a6ff7e4eb0e24815bbb5e09 Mon Sep 17 00:00:00 2001 From: peng <peng.com> Date: 星期五, 19 九月 2025 13:41:59 +0800 Subject: [PATCH] 移动端释放滑块 --- seller/src/views/order/order/orderDetail.vue | 141 +++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 137 insertions(+), 4 deletions(-) diff --git a/seller/src/views/order/order/orderDetail.vue b/seller/src/views/order/order/orderDetail.vue index fbfd09b..a5c16bf 100644 --- a/seller/src/views/order/order/orderDetail.vue +++ b/seller/src/views/order/order/orderDetail.vue @@ -527,7 +527,7 @@ </div> </Modal> <!--璁㈠崟鍒嗗寘瑁瑰彂璐�--> - <Modal v-model="groupShipModal" :loading="shipLoading" title="鍒嗗寘瑁瑰彂蹇��" width="1000"> + <Modal v-model="groupShipModal" :loading="shipLoading" title="鍒嗗寘瑁瑰彂蹇��" width="1300"> <div> <Form ref="groupOrderDeliveryForm" :model="groupOrderDeliveryForm" :label-width="90" :rules="groupOrderDeliverFormValidate" style="position: relative"> <FormItem label="鐗╂祦鍏徃" prop="logisticsId"> @@ -571,7 +571,7 @@ </div> </template> <template slot="numSlot" slot-scope="{ row, index }"> - <InputNumber :min="0" :max="row.___num - row.deliverNumber" v-model="data[index].canNum"> + <InputNumber :min="0" :max="row.___num - row.deliverNumber - row.returnGoodsNumber" v-model="data[index].canNum"> </InputNumber> </template> </Table> @@ -777,6 +777,55 @@ ); }, }, + { + title: "閫�娆炬暟閲�", + key: "returnGoodsNumber", + minWidth: 80, + }, + { + title: "閫�娆鹃噾棰�", + key: "refundPrice", + minWidth: 80, + }, + { + title: "閫�娆剧姸鎬�", + key: "isRefund", + minWidth: 80, + render:(h, params) => { + if(params.row.isRefund==='NO_REFUND'){ + return h( + "div", + "鏈��娆�" + ); + }else if(params.row.isRefund==='ALL_REFUND'){ + return h( + "div", + { style: {color:"red"} }, + "鍏ㄩ儴閫�娆�" + ); + }else if(params.row.isRefund==='PART_REFUND'){ + return h( + "div", + { style: {color:"red"} }, + "閮ㄥ垎閫�娆�" + ); + }else if(params.row.isRefund==='REFUNDING'){ + return h( + "div", + { style: {color:"red"} }, + "閫�娆句腑" + ); + } + else { + return h( + "div", + { style: {color:"red"} }, + "鏈煡鐘舵��" + ); + } + + } + }, ], data: [], // 鍟嗗搧琛ㄥ崟鏁版嵁 orderLogColumns: [ @@ -807,6 +856,7 @@ // 鍒嗗寘瑁瑰彂璐� groupShipModal: false, + groupShipModalOpened: false, // 鏍囪瘑鍒嗗寘瑁瑰彂璐у脊绐楁槸鍚﹀凡鎵撳紑杩� shipLoading: true, groupOrderDeliveryForm: { logisticsNo: "", //鍙戣揣鍗曞彿 @@ -849,6 +899,55 @@ return h("div", this.$options.filters.unitPrice(params.row.subTotal, "锟�")); }, }, + { + title: "閫�娆炬暟閲�", + key: "returnGoodsNumber", + minWidth: 80, + }, + { + title: "閫�娆鹃噾棰�", + key: "refundPrice", + minWidth: 80, + }, + { + title: "閫�娆剧姸鎬�", + key: "isRefund", + minWidth: 80, + render:(h, params) => { + if(params.row.isRefund==='NO_REFUND'){ + return h( + "div", + "鏈��娆�" + ); + }else if(params.row.isRefund==='ALL_REFUND'){ + return h( + "div", + { style: {color:"red"} }, + "鍏ㄩ儴閫�娆�" + ); + }else if(params.row.isRefund==='PART_REFUND'){ + return h( + "div", + { style: {color:"red"} }, + "閮ㄥ垎閫�娆�" + ); + }else if(params.row.isRefund==='REFUNDING'){ + return h( + "div", + { style: {color:"red"} }, + "閫�娆句腑" + ); + } + else { + return h( + "div", + { style: {color:"red"} }, + "鏈煡鐘舵��" + ); + } + + } + }, ], orderPackage: [], packageTraceList: [] @@ -857,11 +956,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 +981,7 @@ }, // 鍒嗗寘瑁瑰彂璐� confirmShipGroupGoods () { + console.log('琛ㄥ崟鍘熷鏁版嵁--------------------------銆�',JSON.stringify(this.selectGroupShipGoods)) this.$refs.groupOrderDeliveryForm.validate(async (valid) => { if (valid) { if (this.selectGroupShipGoods.length) { @@ -881,16 +989,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 +1112,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 - item.returnGoodsNumber; + 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