From 5afdeae8b06332b220f6cd48d53193317e7dc412 Mon Sep 17 00:00:00 2001 From: quyixiao <2621048238@qq.com> Date: Wed, 3 Dec 2025 23:22:04 +0800 Subject: [PATCH] rjquwhnt --- .../api/data/dao/vv/VvTradeOrderLineDao.java | 15 +++++ .../api/data/kuaidi100/OrderCountDTO.java | 30 ++++++++++ .../alibaba/request/vv/AppCountRequest.java | 12 ++++ .../api/controller/vv/AppOrderController.java | 57 +++++++++++++++++++ 4 files changed, 114 insertions(+) create mode 100644 api-mapper/src/main/java/com/heyu/api/data/kuaidi100/OrderCountDTO.java create mode 100644 api-third/src/main/java/com/heyu/api/alibaba/request/vv/AppCountRequest.java diff --git a/api-mapper/src/main/java/com/heyu/api/data/dao/vv/VvTradeOrderLineDao.java b/api-mapper/src/main/java/com/heyu/api/data/dao/vv/VvTradeOrderLineDao.java index 653f753..5849088 100644 --- a/api-mapper/src/main/java/com/heyu/api/data/dao/vv/VvTradeOrderLineDao.java +++ b/api-mapper/src/main/java/com/heyu/api/data/dao/vv/VvTradeOrderLineDao.java @@ -139,6 +139,21 @@ public interface VvTradeOrderLineDao extends BaseMapper @IF @IsNotEmpty String reverseStatus, @IF @OrderBy(VvTradeOrderLineEntity.create_timestamp) String createTimestampSort); + + @OrderBy(VvTradeOrderLineEntity.id_) + @GroupBy(VvTradeOrderLineEntity.trade_order_id) + @ExludeColumn({ + VvTradeOrderLineEntity.profit_amount, + VvTradeOrderLineEntity.settle_status, + VvTradeOrderLineEntity.is_delete, + VvTradeOrderLineEntity.origin_price + }) + List selectByAppCount(IPage page, + @IF String status, + @IFNullReturnEmpty Long buyerId + ); + + @GroupBy(VvTradeOrderLineEntity.sku_id) List selectVvTradeOrderLineByTrackNumberGroupBySkuId(String trackNumber); diff --git a/api-mapper/src/main/java/com/heyu/api/data/kuaidi100/OrderCountDTO.java b/api-mapper/src/main/java/com/heyu/api/data/kuaidi100/OrderCountDTO.java new file mode 100644 index 0000000..3dc543f --- /dev/null +++ b/api-mapper/src/main/java/com/heyu/api/data/kuaidi100/OrderCountDTO.java @@ -0,0 +1,30 @@ +package com.heyu.api.data.kuaidi100; + + +import lombok.Data; + +@Data +public class OrderCountDTO { + + + /*** + * 待支付 + */ + private long waitPayCount = 0L ; + + /*** + * 待发货 + */ + private long waitShippingCount = 0L; + + /*** + * 发货数量 + */ + private long shippingCount = 0L; + + + + + + +} diff --git a/api-third/src/main/java/com/heyu/api/alibaba/request/vv/AppCountRequest.java b/api-third/src/main/java/com/heyu/api/alibaba/request/vv/AppCountRequest.java new file mode 100644 index 0000000..7f8181b --- /dev/null +++ b/api-third/src/main/java/com/heyu/api/alibaba/request/vv/AppCountRequest.java @@ -0,0 +1,12 @@ +package com.heyu.api.alibaba.request.vv; + + +import com.heyu.api.data.service.impl.AppBaseRequest; +import lombok.Data; + +@Data +public class AppCountRequest extends AppBaseRequest { + + + +} 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 455125d..40f1395 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 @@ -9,6 +9,7 @@ import com.heyu.api.alibaba.request.mm.order.AppCloseDTO; import com.heyu.api.alibaba.request.mm.order.AppDeliveredDTO; import com.heyu.api.alibaba.request.mm.order.VvActivityDTO; import com.heyu.api.alibaba.request.mm.order.resp.*; +import com.heyu.api.alibaba.request.vv.AppCountRequest; import com.heyu.api.alibaba.request.vv.AppOrderRequest; import com.heyu.api.common.annotation.AppLogin; import com.heyu.api.common.annotation.Describe; @@ -18,6 +19,7 @@ import com.heyu.api.data.dto.WeiXinPayDelayDTO; import com.heyu.api.data.entity.vv.*; import com.heyu.api.data.enums.*; import com.heyu.api.data.kuaidi100.AppPackageDTO; +import com.heyu.api.data.kuaidi100.OrderCountDTO; import com.heyu.api.data.kuaidi100.VVOrderListResp; import com.heyu.api.data.service.impl.AbstractOrderAction; import com.heyu.api.data.service.impl.AppliyReverseRequest; @@ -174,6 +176,61 @@ public class AppOrderController { } + /*** + * + * + * http://localhost:8888/app/order/count + */ + @Describe("订单数量") + @RequestMapping("/count") + public R list(@RequestBody AppCountRequest appCountRequest) { + PPageUtils waitPayCount = PPageUtils.startPage(appCountRequest.getPageNum(), appCountRequest.getPageSize()) + .doSelect(new ISelect() { + @Override + public List doSelect(IPage page) { + return vvTradeOrderLineDao.selectByAppCount(page, + OrderStatusEnums.wait_pay.getStatus(), + appCountRequest.getBuyerId() + ); + } + }); + + PPageUtils waitShippingCount = PPageUtils.startPage(appCountRequest.getPageNum(), appCountRequest.getPageSize()) + .doSelect(new ISelect() { + @Override + public List doSelect(IPage page) { + return vvTradeOrderLineDao.selectByAppCount(page, + OrderStatusEnums.wait_shipping.getStatus(), + appCountRequest.getBuyerId() + ); + } + }); + + + + + PPageUtils shippingCount = PPageUtils.startPage(appCountRequest.getPageNum(), appCountRequest.getPageSize()) + .doSelect(new ISelect() { + @Override + public List doSelect(IPage page) { + return vvTradeOrderLineDao.selectByAppCount(page, + OrderStatusEnums.shipping.getStatus(), + appCountRequest.getBuyerId() + ); + } + }); + + OrderCountDTO orderCountDTO = new OrderCountDTO(); + + orderCountDTO.setShippingCount(shippingCount.getTotal()); + orderCountDTO.setWaitPayCount(waitPayCount.getTotal()); + orderCountDTO.setWaitShippingCount(waitShippingCount.getTotal()); + + return R.ok().setData(orderCountDTO); + + } + + /*** * 订单详情 *