From 0c9521d93a745de0ec71d83c094a6047c0222398 Mon Sep 17 00:00:00 2001
From: peng <peng.com>
Date: 星期三, 29 十月 2025 15:01:51 +0800
Subject: [PATCH] 调整

---
 framework/src/main/java/cn/lili/modules/order/order/serviceimpl/OrderServiceImpl.java |   52 ++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 50 insertions(+), 2 deletions(-)

diff --git a/framework/src/main/java/cn/lili/modules/order/order/serviceimpl/OrderServiceImpl.java b/framework/src/main/java/cn/lili/modules/order/order/serviceimpl/OrderServiceImpl.java
index de80017..38fc343 100644
--- a/framework/src/main/java/cn/lili/modules/order/order/serviceimpl/OrderServiceImpl.java
+++ b/framework/src/main/java/cn/lili/modules/order/order/serviceimpl/OrderServiceImpl.java
@@ -35,6 +35,7 @@
 import cn.lili.modules.lmk.mapper.LmkOrderSelectMapper;
 import cn.lili.modules.lmk.service.CouponVirtualService;
 import cn.lili.modules.member.entity.dto.MemberAddressDTO;
+import cn.lili.modules.member.entity.dto.UpdateTracesDTO;
 import cn.lili.modules.member.mapper.MemberMapper;
 import cn.lili.modules.order.cart.entity.dto.TradeDTO;
 import cn.lili.modules.order.cart.entity.enums.DeliveryMethodEnum;
@@ -859,6 +860,26 @@
     }
 
     @Override
+    public void updateTraces(UpdateTracesDTO updateTracesDTO) {
+        LambdaQueryWrapper<OrderPackage> eq = Wrappers.<OrderPackage>lambdaQuery()
+                .eq(OrderPackage::getOrderSn, updateTracesDTO.getOrderSn())
+                .eq(OrderPackage::getPackageNo, updateTracesDTO.getPackageNo());
+        OrderPackage one = orderPackageService.getOne(eq);
+        if (one == null) {
+            throw new ServiceException("褰撳墠鍖呰9涓嶅瓨鍦�");
+        }
+
+        String logisticsId = updateTracesDTO.getLogisticsId();
+        if (StringUtils.isNotBlank(logisticsId)) {
+            Logistics logic = logisticsService.getById(logisticsId);
+            one.setLogisticsNo(updateTracesDTO.getLogisticsNo());
+            one.setLogisticsCode(logic.getCode());
+            one.setLogisticsName(logic.getName());
+            orderPackageService.updateById(one);
+        }
+    }
+
+    @Override
     public Traces getMapTraces(String orderSn) {
         //鑾峰彇璁㈠崟淇℃伅
         Order order = this.getBySn(orderSn);
@@ -1154,7 +1175,31 @@
         checkBatchDeliver(orderBatchDeliverDTOList);
         //璁㈠崟鎵归噺鍙戣揣
         for (OrderBatchDeliverDTO orderBatchDeliverDTO : orderBatchDeliverDTOList) {
-            this.delivery(orderBatchDeliverDTO.getOrderSn(), orderBatchDeliverDTO.getLogisticsNo(), orderBatchDeliverDTO.getLogisticsId());
+            String logisticsNo = orderBatchDeliverDTO.getLogisticsNo();
+            String[] split = logisticsNo.split(",");
+            //濡傛灉鐗╂祦鍗曞彿鍖呭惈澶氫釜锛屽垯杩涜鎷嗗崟
+            if (split.length > 1) {
+                for (int i = 0; i < split.length; i++) {
+                    PartDeliveryParamsDTO partDeliveryParamsDTO = new PartDeliveryParamsDTO();
+                    partDeliveryParamsDTO.setOrderSn(orderBatchDeliverDTO.getOrderSn());
+                    partDeliveryParamsDTO.setLogisticsNo(split[i]);
+                    partDeliveryParamsDTO.setLogisticsId(orderBatchDeliverDTO.getLogisticsId());
+                    ArrayList<PartDeliveryDTO> partDeliveryDTOList = new ArrayList<>();
+                    partDeliveryParamsDTO.setPartDeliveryDTOList(partDeliveryDTOList);
+                    if (i == split.length - 1){
+                        List<OrderItem> orderItemList = orderItemService.getByOrderSn(orderBatchDeliverDTO.getOrderSn());
+                        for (OrderItem orderItem : orderItemList) {
+                            if (RefundStatusEnum.NO_REFUND.name().equals(orderItem.getIsRefund())) {
+                                PartDeliveryDTO partDeliveryDTO = new PartDeliveryDTO();
+                                partDeliveryDTO.setDeliveryNum(orderItem.getNum());
+                                partDeliveryDTO.setOrderItemId(orderItem.getId());
+                                partDeliveryDTOList.add(partDeliveryDTO);
+                            }
+                        }
+                    }
+                    this.partDelivery(partDeliveryParamsDTO);
+                }
+            }
         }
     }
 
@@ -1800,7 +1845,10 @@
             // 鎻愬彇鍟嗗搧鍚嶏紙娉ㄦ剰锛氶敭鏄痳esultMap涓畾涔夌殑property鍊�"goodsName"锛�
             if (Objects.nonNull(map.get("goodsName"))) {
                 String goodsName = map.get("goodsName").toString();
-                goodsData.add(goodsName);
+                String buyerCount = map.get("buyerCount").toString();
+                String repurchaseBuyerCount = map.get("repurchaseBuyerCount").toString();
+                String format = String.format("%s:璐拱浜烘暟 %s 澶嶈喘浜烘暟%s", goodsName, buyerCount, repurchaseBuyerCount);
+                goodsData.add(format);
             }
 
             // 鎻愬彇澶嶈喘鐜囷紙澶嶈喘鐜囬�氬父鏄暟瀛楃被鍨嬶紝杩欓噷鐢˙igDecimal鎺ユ敹锛�

--
Gitblit v1.8.0