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 99e97cfa..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