From df8ae86941b1bc539ef873f5c7d85ff27e7f9f9d Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Thu, 15 May 2025 18:35:10 +0800
Subject: [PATCH] refactor(mall): 优化订单详情接口

---
 src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java |   14 +++++++-------
 src/main/resources/mapper/modules/MallOrderInfoMapper.xml                       |   10 +++++++++-
 2 files changed, 16 insertions(+), 8 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java
index 4af16f4..52c314f 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java
@@ -724,13 +724,13 @@
         if (ObjectUtil.isNull(orderInfo)) {
             throw new FebsException("订单不存在");
         }
-        List<MallOrderItem> items = orderInfo.getItems();
-        if(CollUtil.isNotEmpty(items)){
-            for(MallOrderItem mallOrderItem : items){
-                mallOrderItem.setItemAmount(mallOrderItemMapper.selectById(mallOrderItem.getId()).getAmount());
-                mallOrderItem.setScoreAmount(mallOrderItemMapper.selectById(mallOrderItem.getId()).getScoreAmount());
-            }
-        }
+//        List<MallOrderItem> items = orderInfo.getItems();
+//        if(CollUtil.isNotEmpty(items)){
+//            for(MallOrderItem mallOrderItem : items){
+//                mallOrderItem.setItemAmount(mallOrderItemMapper.selectById(mallOrderItem.getId()).getAmount());
+//                mallOrderItem.setScoreAmount(mallOrderItemMapper.selectById(mallOrderItem.getId()).getScoreAmount());
+//            }
+//        }
 
         OrderDetailVo orderDetailVo = MallOrderInfoConversion.INSTANCE.entityToDetailVo(orderInfo);
 
diff --git a/src/main/resources/mapper/modules/MallOrderInfoMapper.xml b/src/main/resources/mapper/modules/MallOrderInfoMapper.xml
index 9799286..c310823 100644
--- a/src/main/resources/mapper/modules/MallOrderInfoMapper.xml
+++ b/src/main/resources/mapper/modules/MallOrderInfoMapper.xml
@@ -157,6 +157,9 @@
             <result property="memberInviteId" column="member_invite_id" />
             <result property="memberCouponId" column="member_coupon_id" />
             <result property="state" column="state" />
+            <result property="itemScoreAmount" column="item_score_amount" />
+            <result property="itemAmount" column="item_amount" />
+            <result property="itemScorePrice" column="item_score_price" />
         </collection>
     </resultMap>
 
@@ -204,11 +207,16 @@
             b.cnt,
             b.price,
             b.amount,
+            b.amount as item_amount ,
+            b.score_amount as item_score_amount ,
+            FLOOR((c.original_price * d.static_prop)/100) as item_score_price ,
             b.member_invite_id,
             b.member_coupon_id,
             b.is_normal
         from mall_order_info a
-             inner join mall_order_item b on a.id=b.order_id
+             left join mall_order_item b on a.id=b.order_id
+             left join mall_goods_sku c on c.id=b.sku_id
+             left join mall_goods d on d.id=b.goods_id
         where a.id=#{id}
     </select>
 

--
Gitblit v1.9.1