From adb269afd407d031ead5d282ddb282684831d905 Mon Sep 17 00:00:00 2001
From: Cui Zhi Feng <7426394+wuxixiaocui@user.noreply.gitee.com>
Date: 星期二, 10 九月 2024 14:57:39 +0800
Subject: [PATCH] 质检查询优化

---
 src/main/java/com/mzl/flower/dto/request/payment/DeliveryOrderInfoSpQueryDTO.java  |    3 +++
 src/main/java/com/mzl/flower/dto/response/payment/DeliveryOrderItem4CheckDTO.java  |    2 +-
 src/main/java/com/mzl/flower/dto/response/payment/DeliveryOrderList4CheckDTO.java  |    2 ++
 src/main/java/com/mzl/flower/web/payment/DeliveryOrderController.java              |   16 ++++++++++++++++
 src/main/java/com/mzl/flower/dto/request/payment/DeliveryOrderStationQueryDTO.java |    3 +++
 src/main/java/com/mzl/flower/service/payment/DeliveryOrderService.java             |    2 +-
 src/main/resources/mapper/payment/DeliveryOrderMapper.xml                          |    7 +++++--
 7 files changed, 31 insertions(+), 4 deletions(-)

diff --git a/src/main/java/com/mzl/flower/dto/request/payment/DeliveryOrderInfoSpQueryDTO.java b/src/main/java/com/mzl/flower/dto/request/payment/DeliveryOrderInfoSpQueryDTO.java
index 04dc3fe..0ec361d 100644
--- a/src/main/java/com/mzl/flower/dto/request/payment/DeliveryOrderInfoSpQueryDTO.java
+++ b/src/main/java/com/mzl/flower/dto/request/payment/DeliveryOrderInfoSpQueryDTO.java
@@ -28,6 +28,9 @@
     @ApiModelProperty(value = "库位名称")
     private String warehouseLocationCode;
 
+    @ApiModelProperty(value = "日期")
+    private String date;
+
     @ApiModelProperty(hidden = true)
     private LocalDateTime startDate;
 
diff --git a/src/main/java/com/mzl/flower/dto/request/payment/DeliveryOrderStationQueryDTO.java b/src/main/java/com/mzl/flower/dto/request/payment/DeliveryOrderStationQueryDTO.java
index e503680..842e30f 100644
--- a/src/main/java/com/mzl/flower/dto/request/payment/DeliveryOrderStationQueryDTO.java
+++ b/src/main/java/com/mzl/flower/dto/request/payment/DeliveryOrderStationQueryDTO.java
@@ -34,6 +34,9 @@
     @ApiModelProperty(value = "库位名称")
     private String warehouseLocationCode;
 
+    @ApiModelProperty(value = "日期")
+    private String date;
+
     @ApiModelProperty(hidden = true)
     private LocalDateTime startDate;
 
diff --git a/src/main/java/com/mzl/flower/dto/response/payment/DeliveryOrderItem4CheckDTO.java b/src/main/java/com/mzl/flower/dto/response/payment/DeliveryOrderItem4CheckDTO.java
index 1e02cee..f0b2e4d 100644
--- a/src/main/java/com/mzl/flower/dto/response/payment/DeliveryOrderItem4CheckDTO.java
+++ b/src/main/java/com/mzl/flower/dto/response/payment/DeliveryOrderItem4CheckDTO.java
@@ -37,7 +37,7 @@
     private String flowerLevelStr;
 
     @ApiModelProperty(value = "订单商品状态")
-    @DictTrans(target = "statusStr", codeType = "CHECK_OPERATE")
+    @DictTrans(target = "statusStr", codeType = "ORDER_ITEM_STATUS")
     private String status;
     private String statusStr;
 
diff --git a/src/main/java/com/mzl/flower/dto/response/payment/DeliveryOrderList4CheckDTO.java b/src/main/java/com/mzl/flower/dto/response/payment/DeliveryOrderList4CheckDTO.java
index ae7760f..a392344 100644
--- a/src/main/java/com/mzl/flower/dto/response/payment/DeliveryOrderList4CheckDTO.java
+++ b/src/main/java/com/mzl/flower/dto/response/payment/DeliveryOrderList4CheckDTO.java
@@ -25,4 +25,6 @@
     @ApiModelProperty(value = "供应商总价")
     private BigDecimal totalAmount;
 
+    @ApiModelProperty(value = "未完成质检订单数量")
+    private Integer uncheckedCount;
 }
diff --git a/src/main/java/com/mzl/flower/service/payment/DeliveryOrderService.java b/src/main/java/com/mzl/flower/service/payment/DeliveryOrderService.java
index 154e9a9..ecac9e4 100644
--- a/src/main/java/com/mzl/flower/service/payment/DeliveryOrderService.java
+++ b/src/main/java/com/mzl/flower/service/payment/DeliveryOrderService.java
@@ -354,7 +354,7 @@
         );
         if (items != null && items.size() > 0) {
             for (OrderItem i : items) {
-                i.setStatus(Constants.CHECK_OPERATE.ok.name());
+                i.setStatus(Constants.ORDER_ITEM_STATUS.ok.name());
                 i.setCheckTime(LocalDateTime.now());
                 orderItemMapper.updateById(i);
             }
diff --git a/src/main/java/com/mzl/flower/web/payment/DeliveryOrderController.java b/src/main/java/com/mzl/flower/web/payment/DeliveryOrderController.java
index 2af2b28..b176677 100644
--- a/src/main/java/com/mzl/flower/web/payment/DeliveryOrderController.java
+++ b/src/main/java/com/mzl/flower/web/payment/DeliveryOrderController.java
@@ -136,6 +136,14 @@
     @ApiOperation(value = "查询集货站供应商配送列表")
     public ResponseEntity<ReturnDataDTO<Page<DeliveryOrderList4CheckDTO>>> selectSupplierDoList4Check(Page page
             , DeliveryOrderStationQueryDTO dto){
+        LocalDate localDate = deliveryOrderService.parseLocalDate(dto.getDate());
+        if(localDate != null){
+            LocalDateTime end = localDate.atTime(17, 0, 0);
+            LocalDateTime begin = end.plusDays(-1);
+            dto.setStartDate(begin);
+            dto.setEndDate(end);
+        }
+
         return returnData(R.SUCCESS.getCode(), deliveryOrderService.selectSupplierDoList4Check(page, dto));
     }
 
@@ -179,6 +187,14 @@
     @ApiOperation(value = "查询供应商配送单列表")
     public ResponseEntity<ReturnDataDTO<Page<DeliveryOrder4CheckDTO>>> selectSupplierDoInfo4Check(Page page
             , DeliveryOrderInfoSpQueryDTO dto){
+        LocalDate localDate = deliveryOrderService.parseLocalDate(dto.getDate());
+        if(localDate != null){
+            LocalDateTime end = localDate.atTime(17, 0, 0);
+            LocalDateTime begin = end.plusDays(-1);
+            dto.setStartDate(begin);
+            dto.setEndDate(end);
+        }
+
         return returnData(R.SUCCESS.getCode(), deliveryOrderService.selectSupplierDoInfo4Check(page, dto));
     }
 
diff --git a/src/main/resources/mapper/payment/DeliveryOrderMapper.xml b/src/main/resources/mapper/payment/DeliveryOrderMapper.xml
index dbfd143..93e2eaf 100644
--- a/src/main/resources/mapper/payment/DeliveryOrderMapper.xml
+++ b/src/main/resources/mapper/payment/DeliveryOrderMapper.xml
@@ -79,13 +79,16 @@
     </select>
 
     <select id="selectSupplierDoList4Check" resultType="com.mzl.flower.dto.response.payment.DeliveryOrderList4CheckDTO">
-        SELECT tt.id, tt.supplierName, tt.supplierTel, tt.stationName, sum(tt.num) totalNum, sum(tt.amount) totalAmount
+        SELECT tt.id, tt.supplierName, tt.supplierTel, tt.stationName, sum(tt.num) totalNum
+            , sum(tt.amount) totalAmount, sum(tt.uncheckedCount) uncheckedCount
         from (
             select s.id, s.name supplierName, s.contact_tel supplierTel, st.name stationName
             , (select sum(num) from t_order_item oi
                 where oi.supplier_id = q.supplier_id and oi.order_id = q.order_id) num
-            ,  (select sum(oi.supplier_price * oi.num) from t_order_item oi
+            , (select sum(oi.supplier_price * oi.num) from t_order_item oi
                 where oi.supplier_id = q.supplier_id and oi.order_id = q.order_id) amount
+            , (select count(1) from t_delivery_order dor
+                where dor.id = q.id and dor.status != 'CHECKED') uncheckedCount
             from t_supplier_info s
             join t_station st on st.id = s.station_id
             join t_delivery_order q on s.id = q.supplier_id

--
Gitblit v1.9.3