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); } 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){ 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>