From 6ecf246fdb0b3afd3872b11d5c7ce1d84884be2e Mon Sep 17 00:00:00 2001
From: Cui Zhi Feng <7426394+wuxixiaocui@user.noreply.gitee.com>
Date: 星期三, 28 八月 2024 18:10:12 +0800
Subject: [PATCH] 确认配送单是否质检

---
 src/main/java/com/mzl/flower/mapper/payment/DeliveryOrderItemMapper.java |    2 ++
 src/main/resources/mapper/payment/DeliveryOrderItemMapper.xml            |    9 +++++++++
 src/main/java/com/mzl/flower/service/payment/DeliveryOrderService.java   |   13 +++++++++++++
 3 files changed, 24 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/mzl/flower/mapper/payment/DeliveryOrderItemMapper.java b/src/main/java/com/mzl/flower/mapper/payment/DeliveryOrderItemMapper.java
index 4c09eaa..800b186 100644
--- a/src/main/java/com/mzl/flower/mapper/payment/DeliveryOrderItemMapper.java
+++ b/src/main/java/com/mzl/flower/mapper/payment/DeliveryOrderItemMapper.java
@@ -29,4 +29,6 @@
             , @Param("startDate") LocalDateTime startDate, @Param("endDate") LocalDateTime endDate);
 
     List<DeliveryOrderItem4CheckDTO> selectDoItemList4Check(@Param("deliveryIds") List<String> deliveryIds);
+
+    Integer getUnCheckCount(@Param("deliveryId") String deliveryId);
 }
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 05cf7e7..74354c9 100644
--- a/src/main/java/com/mzl/flower/service/payment/DeliveryOrderService.java
+++ b/src/main/java/com/mzl/flower/service/payment/DeliveryOrderService.java
@@ -646,6 +646,19 @@
             oi.update(SecurityUtils.getUserId());
             orderItemMapper.updateById(oi);
         }
+
+        DeliveryOrderItem di = deliveryOrderItemMapper.selectOne(new QueryWrapper<DeliveryOrderItem>()
+                .eq("order_item_id", id));
+        if(di != null) {
+            Integer count = deliveryOrderItemMapper.getUnCheckCount(di.getDeliveryId());
+            if(count == 0) {
+                DeliveryOrder d = deliveryOrderMapper.selectById(di.getDeliveryId());
+                d.setCheckTime(LocalDateTime.now());
+                d.setStatus(Constants.DELIVERY_ORDER_STATUS.CHECKED.name());
+                d.update(SecurityUtils.getUserId());
+                deliveryOrderMapper.updateById(d);
+            }
+        }
     }
 
     public void deleteCheckInfo(String itemId, String type){
diff --git a/src/main/resources/mapper/payment/DeliveryOrderItemMapper.xml b/src/main/resources/mapper/payment/DeliveryOrderItemMapper.xml
index 82f2983..b36955a 100644
--- a/src/main/resources/mapper/payment/DeliveryOrderItemMapper.xml
+++ b/src/main/resources/mapper/payment/DeliveryOrderItemMapper.xml
@@ -108,4 +108,13 @@
             #{item}
         </foreach>
     </select>
+
+    <select id="getUnCheckCount" resultType="java.lang.Integer">
+        SELECT count(1)
+        FROM t_delivery_order_item doi
+        join t_order_item oi on oi.id = doi.order_item_id
+        WHERE oi.deleted = 0 and doi.deleted = 0
+        and oi.status is null
+        and doi.delivery_id = #{deliveryId}
+    </select>
 </mapper>
\ No newline at end of file

--
Gitblit v1.9.3