From 778beabb28bd760a9fc466aaed537eb98e777982 Mon Sep 17 00:00:00 2001
From: gongzuming <gongzuming>
Date: 星期五, 13 九月 2024 15:10:14 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master-v2' into master-v2

---
 src/main/java/com/mzl/flower/service/payment/OrderService.java          |    7 +++----
 src/main/java/com/mzl/flower/dto/response/payment/OrderItemListDTO.java |   12 +++++++++++-
 src/main/java/com/mzl/flower/mapper/payment/OrderItemMapper.java        |    3 +++
 src/main/resources/mapper/payment/OrderItemMapper.xml                   |   13 +++++++++++++
 4 files changed, 30 insertions(+), 5 deletions(-)

diff --git a/src/main/java/com/mzl/flower/dto/response/payment/OrderItemListDTO.java b/src/main/java/com/mzl/flower/dto/response/payment/OrderItemListDTO.java
index 427aa68..4a08e76 100644
--- a/src/main/java/com/mzl/flower/dto/response/payment/OrderItemListDTO.java
+++ b/src/main/java/com/mzl/flower/dto/response/payment/OrderItemListDTO.java
@@ -1,6 +1,5 @@
 package com.mzl.flower.dto.response.payment;
 
-import com.baomidou.mybatisplus.annotation.TableField;
 import com.mzl.flower.base.AbstractTransDTO;
 import com.mzl.flower.base.annotation.DictTrans;
 import io.swagger.annotations.ApiModelProperty;
@@ -11,6 +10,8 @@
 @Data
 public class OrderItemListDTO extends AbstractTransDTO {
     private String id;
+
+    private String orderId;
 
     private Long stationId;//集货站id
     private String stationName;
@@ -58,4 +59,13 @@
 
     @ApiModelProperty(value = "真实成交价格/每扎")
     private BigDecimal realPrice;
+
+    @ApiModelProperty(value = "补货数量")
+    private Integer replaceNum;
+
+    @ApiModelProperty(value = "降级数量")
+    private Integer reduceNum;
+
+    @ApiModelProperty(value = "缺货数量")
+    private Integer lackNum;
 }
diff --git a/src/main/java/com/mzl/flower/mapper/payment/OrderItemMapper.java b/src/main/java/com/mzl/flower/mapper/payment/OrderItemMapper.java
index ff6f409..f6cb15c 100644
--- a/src/main/java/com/mzl/flower/mapper/payment/OrderItemMapper.java
+++ b/src/main/java/com/mzl/flower/mapper/payment/OrderItemMapper.java
@@ -2,6 +2,7 @@
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.mzl.flower.dto.response.payment.AbnormalOrderItemDTO;
+import com.mzl.flower.dto.response.payment.OrderItemListDTO;
 import com.mzl.flower.dto.response.payment.OrderItemPlatformListDTO;
 import com.mzl.flower.entity.payment.OrderItem;
 import org.apache.ibatis.annotations.Param;
@@ -14,4 +15,6 @@
     List<AbnormalOrderItemDTO> getAbnormalItems(@Param("orderId") String orderId);
 
     List<OrderItemPlatformListDTO> getPlatformOrderItems(@Param("orderId") String orderId);
+
+    List<OrderItemListDTO> getOrderItems(@Param("orderIds") List<String> orderIds);
 }
diff --git a/src/main/java/com/mzl/flower/service/payment/OrderService.java b/src/main/java/com/mzl/flower/service/payment/OrderService.java
index 18d752e..2b879a2 100644
--- a/src/main/java/com/mzl/flower/service/payment/OrderService.java
+++ b/src/main/java/com/mzl/flower/service/payment/OrderService.java
@@ -460,7 +460,7 @@
         if(totalAmount.doubleValue() <= 0){//假如总价小于等于0,则支付0.01元
             totalAmount = new BigDecimal(0.01);
         }
-        order.setTotalAmount(totalAmount.add(p.getPacking()).add(transportFee));
+        order.setTotalAmount(totalAmount);
 
         order.setCustomer(address.getName());
         order.setCustomerTel(address.getTel());
@@ -802,10 +802,9 @@
                 orderIds.add(o.getId());
             }
 
-            List<OrderItem> itemList = orderItemMapper.selectList(
-                    new QueryWrapper<OrderItem>().in("order_id", orderIds));
+            List<OrderItemListDTO> itemList = orderItemMapper.getOrderItems(orderIds);
             Map<String, List<OrderItemListDTO>> map = new HashMap<>();
-            for (OrderItem oi : itemList) {
+            for (OrderItemListDTO oi : itemList) {
                 String orderId = oi.getOrderId();
                 List<OrderItemListDTO> ll = map.computeIfAbsent(orderId, k -> new ArrayList<>());
                 OrderItemListDTO d = new OrderItemListDTO();
diff --git a/src/main/resources/mapper/payment/OrderItemMapper.xml b/src/main/resources/mapper/payment/OrderItemMapper.xml
index 87c38d7..251abbb 100644
--- a/src/main/resources/mapper/payment/OrderItemMapper.xml
+++ b/src/main/resources/mapper/payment/OrderItemMapper.xml
@@ -58,4 +58,17 @@
         WHERE oi.deleted = 0
         and oi.order_id = #{orderId}
     </select>
+
+    <select id="getOrderItems" resultType="com.mzl.flower.dto.response.payment.OrderItemListDTO">
+        SELECT oi.*
+        , (select oic.num from t_order_item_check oic where oic.order_item_id = oi.id and oic.type = 'replace' and oic.audit_status = 'AGREED') replaceNum
+        , (select oic.num from t_order_item_check oic where oic.order_item_id = oi.id and oic.type = 'reduce' and oic.audit_status = 'AGREED') reduceNum
+        , (select oic.num from t_order_item_check oic where oic.order_item_id = oi.id and oic.type = 'lack' and oic.audit_status = 'AGREED') lackNum
+        FROM t_order_item oi
+        WHERE oi.deleted = 0
+        and oi.order_id in
+        <foreach collection="orderIds" item="orderId" open="(" separator="," close=")">
+            #{orderId}
+        </foreach>
+    </select>
 </mapper>
\ No newline at end of file

--
Gitblit v1.9.3