From ddc6cd417d5e912d5cba297bb7849a1dcf7367be Mon Sep 17 00:00:00 2001 From: pang.jiabao <pang_jiabao@163.com> Date: 星期日, 27 四月 2025 11:01:41 +0800 Subject: [PATCH] 获取未完成订单统计信息 --- src/main/resources/mapper/OrderMapper.xml | 17 ++++++++ src/main/java/com/zy/asrs/entity/OrderStatisticsDto.java | 39 +++++++++++++++++++ src/main/java/com/zy/asrs/controller/OpenController.java | 9 ++++ src/main/java/com/zy/asrs/mapper/OrderMapper.java | 6 +++ src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java | 11 +++++ src/main/java/com/zy/asrs/service/OpenService.java | 6 +++ 6 files changed, 88 insertions(+), 0 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/OpenController.java b/src/main/java/com/zy/asrs/controller/OpenController.java index 4fb2c64..c07c41c 100644 --- a/src/main/java/com/zy/asrs/controller/OpenController.java +++ b/src/main/java/com/zy/asrs/controller/OpenController.java @@ -185,6 +185,15 @@ return openService.kxlhCdwc(param); } + @PostMapping("/getUnfulfilledOrders") + @AppAuth(memo = "鑾峰彇鏈畬鎴愯鍗曠粺璁′俊鎭�") + public synchronized R getUnfulfilledOrders(@RequestHeader(required = false) String appkey, + HttpServletRequest request) { + auth(appkey, null, request); + return openService.getUnfulfilledOrders(); + } + + /*@PostMapping("/order/matSync/default/v1") @AppAuth(memo = "鍟嗗搧淇℃伅鍚屾鎺ュ彛") public synchronized R syncMatInfo(@RequestHeader(required = false) String appkey, diff --git a/src/main/java/com/zy/asrs/entity/OrderStatisticsDto.java b/src/main/java/com/zy/asrs/entity/OrderStatisticsDto.java new file mode 100644 index 0000000..c70b469 --- /dev/null +++ b/src/main/java/com/zy/asrs/entity/OrderStatisticsDto.java @@ -0,0 +1,39 @@ +package com.zy.asrs.entity; + +import lombok.Data; + +/** + * @author pang.jiabao + * @description 鏈畬鎴愯鍗曠粺璁′俊鎭� + * @createDate 2025/4/27 10:39 + */ +@Data +public class OrderStatisticsDto { + + /** + * 璁㈠崟鍙� + */ + private String orderNo; + + /** + * 璁㈠崟鏄庣粏鎬绘暟 + */ + private Integer sum; + + /** + * 鏈鐞嗚鍗曟槑缁嗘暟 + */ + private Integer toShipQuantity; + + /** + * 宸ヤ綔涓鍗曟槑缁嗘暟 + */ + private Integer workQuantity; + + /** + * 宸插畬鎴愯鍗曟槑缁嗘暟 + */ + private Integer completedQuantity; + + +} diff --git a/src/main/java/com/zy/asrs/mapper/OrderMapper.java b/src/main/java/com/zy/asrs/mapper/OrderMapper.java index d2885fb..8cdf6be 100644 --- a/src/main/java/com/zy/asrs/mapper/OrderMapper.java +++ b/src/main/java/com/zy/asrs/mapper/OrderMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.mapper.BaseMapper; import com.zy.asrs.entity.Order; +import com.zy.asrs.entity.OrderStatisticsDto; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository; @@ -41,4 +42,9 @@ * 鏍规嵁鍗曟嵁缂栧彿妯$硦鏌ヨ鍗曟嵁缂栧彿 */ List<String> selectOrderNosByOrderNoLike(@Param("orderNo") String orderNo); + + /** + * 鑾峰彇鏈畬鎴愯鍗曠粺璁′俊鎭� + */ + List<OrderStatisticsDto> getUnfulfilledOrders(); } diff --git a/src/main/java/com/zy/asrs/service/OpenService.java b/src/main/java/com/zy/asrs/service/OpenService.java index 99e97cf..aab0d10 100644 --- a/src/main/java/com/zy/asrs/service/OpenService.java +++ b/src/main/java/com/zy/asrs/service/OpenService.java @@ -86,6 +86,12 @@ R requestXhd(String barcode); /** + * 鑾峰彇鏈畬鎴愯鍗曠粺璁′俊鎭� + */ + R getUnfulfilledOrders(); + + + /** * 娣诲姞鍏ュ簱鍗� */ void pakinOrderCreate(OpenOrderPakinParam param); diff --git a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java index 9114323..eb6bf8a 100644 --- a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java @@ -17,6 +17,7 @@ import com.zy.asrs.entity.result.ZphjcdwcVo; import com.zy.asrs.mapper.LocDetlMapper; import com.zy.asrs.mapper.MatMapper; +import com.zy.asrs.mapper.OrderMapper; import com.zy.asrs.mapper.TagMapper; import com.zy.asrs.service.*; import com.zy.asrs.utils.MatUtils; @@ -107,6 +108,9 @@ @Resource private ConfigMapper configMapper; + + @Resource + private OrderMapper orderMapper; @Override @Transactional @@ -1962,6 +1966,13 @@ } + @Override + public R getUnfulfilledOrders() { + // 鑾峰彇鏈畬鎴愯鍗曠粺璁′俊鎭� + List<OrderStatisticsDto> unfulfilledOrders = orderMapper.getUnfulfilledOrders(); + return R.ok(unfulfilledOrders); + } + /** * 鍒涘缓妗佹灦鐞嗚揣鍑哄簱鐨勫伐浣滄。 */ diff --git a/src/main/resources/mapper/OrderMapper.xml b/src/main/resources/mapper/OrderMapper.xml index 54d4bb0..4f69b06 100644 --- a/src/main/resources/mapper/OrderMapper.xml +++ b/src/main/resources/mapper/OrderMapper.xml @@ -113,5 +113,22 @@ <select id="selectOrderNosByOrderNoLike" resultType="java.lang.String"> select order_no from man_order where settle = 4 and order_no like '%' + #{orderNo} + '%' and doc_type in(21,23) </select> + <select id="getUnfulfilledOrders" resultType="com.zy.asrs.entity.OrderStatisticsDto"> + select + mo.order_no orderNo, + count(mo.order_no) sum, + count(case when md.work_qty = 0 then 1 end) toShipQuantity, + count(case when md.work_qty != 0 and md.qty = 0 then 1 end) workQuantity, + count(case when md.anfme = md.qty then 1 end) completedQuantity + from + man_order mo + LEFT JOIN man_order_detl md on + mo.id = md.order_id + where + mo.doc_type = 21 + and mo.settle in(1, 2) + GROUP BY + mo.order_no + </select> </mapper> -- Gitblit v1.9.1