From dd017c9b0f8828d7587a1d9dac42da90c6a3beb1 Mon Sep 17 00:00:00 2001 From: quyixiao <2621048238@qq.com> Date: Wed, 27 Aug 2025 08:36:12 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../alibaba/request/vv/AppOrderRequest.java | 7 +- .../api/controller/vv/AppOrderController.java | 77 ++++++++++++------- 2 files changed, 54 insertions(+), 30 deletions(-) diff --git a/api-third/src/main/java/com/heyu/api/alibaba/request/vv/AppOrderRequest.java b/api-third/src/main/java/com/heyu/api/alibaba/request/vv/AppOrderRequest.java index e6ecb1c..f67922d 100644 --- a/api-third/src/main/java/com/heyu/api/alibaba/request/vv/AppOrderRequest.java +++ b/api-third/src/main/java/com/heyu/api/alibaba/request/vv/AppOrderRequest.java @@ -16,7 +16,7 @@ public class AppOrderRequest { private Long buyerId; - private List orderIds; + private List tradeOrderIds; //商品名称 , 子单维度 private String productName; @@ -38,4 +38,9 @@ public class AppOrderRequest { private String status; + /*** + * 逆向状态 + */ + private String reverseStatus; + } diff --git a/api-web/api-interface/src/main/java/com/heyu/api/controller/vv/AppOrderController.java b/api-web/api-interface/src/main/java/com/heyu/api/controller/vv/AppOrderController.java index f22bbb7..0d774c6 100644 --- a/api-web/api-interface/src/main/java/com/heyu/api/controller/vv/AppOrderController.java +++ b/api-web/api-interface/src/main/java/com/heyu/api/controller/vv/AppOrderController.java @@ -7,6 +7,7 @@ import com.heyu.api.alibaba.request.mm.enums.OrderStatusEnums; import com.heyu.api.alibaba.request.mm.order.AppDeliveredDTO; import com.heyu.api.alibaba.request.mm.order.resp.*; import com.heyu.api.alibaba.request.vv.AppOrderRequest; +import com.heyu.api.common.SanUtils; import com.heyu.api.data.dao.vv.*; import com.heyu.api.data.entity.vv.*; import com.heyu.api.data.utils.BigDecimalUtil; @@ -67,49 +68,69 @@ public class AppOrderController { */ @RequestMapping("/list") public R list(@RequestBody AppOrderRequest vvOrderRequest) { - if (StringUtils.isNotBlank(vvOrderRequest.getProductName())) { - List list = vvTradeOrderLineDao.selectVvTradeOrderLineByProductName(vvOrderRequest.getProductName()); - List orderIds = new ArrayList<>(); - if (CollectionUtils.isNotEmpty(vvOrderRequest.getOrderIds())) { - orderIds.addAll(vvOrderRequest.getOrderIds()); - } - for (VvTradeOrderLineEntity tradeOrderLineEntity : list) { - orderIds.add(tradeOrderLineEntity.getTradeOrderId()); - } - vvOrderRequest.setOrderIds(orderIds); - } + + PPageUtils pageUtils = PPageUtils.startPage(vvOrderRequest.getPageNum(), vvOrderRequest.getPageSize()) .doSelect(new ISelect() { @Override public List doSelect(IPage page) { - return vvTradeOrderDao.selectAppByCondition(page, - vvOrderRequest.getOrderIds(), - vvOrderRequest.getBuyerId(), + return vvTradeOrderLineDao.selectByAdminCondition(page, + vvOrderRequest.getTradeOrderIds(), + null, + null, + null, + null, + null, + vvOrderRequest.getStatus(), + null, vvOrderRequest.getMinCreateTimestamp(), vvOrderRequest.getMaxCreateTimestamp(), + vvOrderRequest.getProductName(), + null, + null, + vvOrderRequest.getBuyerId(), + vvOrderRequest.getReverseStatus(), vvOrderRequest.getCreateTimestampSort() ); } }); - List vvTradeOrderEntities = pageUtils.getRows(); - List tradeOrderIds = new ArrayList<>(); - for (VvTradeOrderEntity vvTradeOrderEntity : vvTradeOrderEntities) { - tradeOrderIds.add(vvTradeOrderEntity.getId()); + // 获取子单 + List vvTradeOrderLineEntities = pageUtils.getRows(); + + // 获取订单 + List tradeOrderIds = SanUtils.list2listFilterNull(vvTradeOrderLineEntities,VvTradeOrderLineEntity::getTradeOrderId ); + List tradeOrderEntities = vvTradeOrderDao.selectVvTradeOrderByTradeOrderIds(tradeOrderIds); + + // 对订单进行排序,必须按照子单的顺序 + Map vvTradeOrderEntityMap = SanUtils.list2Map(tradeOrderEntities, VvTradeOrderEntity::getId); + List vvTradeOrderEntities = new ArrayList<>(); + for (VvTradeOrderLineEntity vvTradeOrderLineEntity : vvTradeOrderLineEntities) { + vvTradeOrderEntities.add(vvTradeOrderEntityMap.get(vvTradeOrderLineEntity.getTradeOrderId())); } - List list = vvTradeOrderLineDao.selectVvTradeOrderLineByTradeOrderIds(tradeOrderIds, vvOrderRequest.getStatus()); - - List trackNumbers = new ArrayList<>(); - for (VvTradeOrderLineEntity vvTradeOrderLineEntity : list) { - if (StringUtils.isNotBlank(vvTradeOrderLineEntity.getTrackNumber())) { - trackNumbers.add(vvTradeOrderLineEntity.getTrackNumber()); - } - } - + // 重新获取子单 + List list = vvTradeOrderLineDao.selectByAdminConditionList( + vvOrderRequest.getTradeOrderIds(), + null, + null, + null, + null, + null, + vvOrderRequest.getStatus(), + null, + vvOrderRequest.getMinCreateTimestamp(), + vvOrderRequest.getMaxCreateTimestamp(), + vvOrderRequest.getProductName(), + null, + null, + vvOrderRequest.getBuyerId(), + vvOrderRequest.getReverseStatus(), + vvOrderRequest.getCreateTimestampSort()); + List trackNumbers = SanUtils.list2listFilterNull(list, VvTradeOrderLineEntity::getTrackNumber); Map vvPackageEntityMap = new HashMap<>(); if (CollectionUtils.isNotEmpty(trackNumbers)) { List packageEntities = vvPackageDao.selectVvPackageByTrackNumbers(trackNumbers); @@ -187,8 +208,6 @@ public class AppOrderController { } Set productIds = new HashSet<>(); - - List vvSkuPropertyValueList = vvSkuPropertyValueDao.selectVvSkuPropertyValueBySkuIds(skuIds); Map> vvSkuPropertyValueMap = new HashMap<>(); for (VvSkuPropertyValueEntity vvSkuPropertyValueEntity : vvSkuPropertyValueList) {