From e702751387083327a817101950f7b383f23db9f2 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Thu, 22 Sep 2022 17:26:14 +0800
Subject: [PATCH] 20220902

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

diff --git a/src/main/java/cc/mrbird/febs/mall/mapper/MallOrderInfoMapper.java b/src/main/java/cc/mrbird/febs/mall/mapper/MallOrderInfoMapper.java
index 3c81b6c..3e789f2 100644
--- a/src/main/java/cc/mrbird/febs/mall/mapper/MallOrderInfoMapper.java
+++ b/src/main/java/cc/mrbird/febs/mall/mapper/MallOrderInfoMapper.java
@@ -68,4 +68,6 @@
     List<Map<String, Integer>> selectMemberOrderStatusCntByUniquecode(@Param("uniqueCode")String uniqueCode);
 
     List<MallOrderInfo> selectOrderByStatusAndPayTime(@Param("status")Integer i, @Param("paytime")DateTime offsetDay);
+
+    IPage<MallOrderInfo> selectNewApiOrderListInPage(IPage<MallOrderInfo> page, @Param("record") OrderListDto orderListDto);
 }
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 2cde23c..8628927 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
@@ -483,7 +483,15 @@
         IPage<MallOrderInfo> page = new Page<>(orderListDto.getPageNum(), orderListDto.getPageSize());
 
         orderListDto.setMemberId(member.getId());
-        IPage<MallOrderInfo> mallOrderInfos = this.baseMapper.selectApiOrderListInPage(page, orderListDto);
+//        IPage<MallOrderInfo> mallOrderInfos = this.baseMapper.selectApiOrderListInPage(page, orderListDto);
+        IPage<MallOrderInfo> mallOrderInfos = this.baseMapper.selectNewApiOrderListInPage(page, orderListDto);
+        if(CollUtil.isNotEmpty(mallOrderInfos.getRecords())){
+            for(MallOrderInfo mallOrderInfo : mallOrderInfos.getRecords()){
+                Long orderInfoId = mallOrderInfo.getId();
+                List<MallOrderItem> mallOrderItemList = mallOrderItemMapper.selectListByOrderId(orderInfoId);
+                mallOrderInfo.setItems(mallOrderItemList);
+            }
+        }
         return MallOrderInfoConversion.INSTANCE.entitysToVos(mallOrderInfos.getRecords());
     }
 
diff --git a/src/main/resources/mapper/modules/MallOrderInfoMapper.xml b/src/main/resources/mapper/modules/MallOrderInfoMapper.xml
index 226f2f1..c71e5e5 100644
--- a/src/main/resources/mapper/modules/MallOrderInfoMapper.xml
+++ b/src/main/resources/mapper/modules/MallOrderInfoMapper.xml
@@ -167,21 +167,49 @@
         </collection>
     </resultMap>
 
-    <select id="selectApiOrderListInPage" resultMap="OrderInfoMap">
+
+    <resultMap id="NewOrderInfoMap" type="cc.mrbird.febs.mall.entity.MallOrderInfo">
+        <id column="id" property="id" />
+        <result column="order_no" property="orderNo" />
+        <result column="member_id" property="memberId" />
+        <result column="order_time" property="orderTime" />
+        <result column="pay_time" property="payTime" />
+        <result column="amount" property="amount" />
+        <result column="pay_method" property="payMethod" />
+        <result column="pay_order_no" property="payOrderNo" />
+        <result column="pay_result" property="payResult" />
+        <result column="status" property="status" />
+        <result column="cancel_type" property="cancelType" />
+        <result column="name" property="name" />
+        <result column="phone" property="phone" />
+        <result column="address" property="address" />
+        <result column="longitude" property="longitude" />
+        <result column="latitude" property="latitude" />
+        <result column="order_type" property="orderType" />
+        <result column="comment_state" property="commentState" />
+        <result column="carriage" property="carriage" />
+        <result column="remark" property="remark" />
+        <result column="take_code" property="takeCode" />
+        <result column="take_unique_code" property="takeUniqueCode" />
+        <result column="delivery_state" property="deliveryState" />
+        <result column="is_home" property="isHome" />
+        <result column="del_flag" property="delFlag" />
+        <result column="leader_name" property="leaderName" />
+        <result column="leader_phone" property="leaderPhone" />
+        <result column="address_pic" property="addressPic" />
+        <result column="address_area" property="addressArea" />
+        <result column="province" property="province" />
+        <result column="leaderLongitude" property="leaderLongitude" />
+        <result column="leaderLatitude" property="leaderLatitude" />
+        <result column="province" property="province" />
+        <result column="city" property="city" />
+        <result column="township" property="township" />
+        <result column="detail_address" property="detailAddress" />
+    </resultMap>
+
+    <select id="selectNewApiOrderListInPage" resultMap="NewOrderInfoMap">
         select
                a.*,
-               b.id item_id,
-               b.order_id,
-               b.goods_id,
-               b.sku_id,
-               b.goods_name,
-               b.style_name,
-               b.sku_name,
-               b.sku_image,
-               b.state,
-               b.cnt,
-               b.price,
-               b.amount,
                c.name leader_name,
                c.phone leader_phone,
                c.address_pic,
@@ -191,7 +219,6 @@
                c.township,
                c.detail_address
         from mall_order_info a
-         inner join mall_order_item b on a.id=b.order_id
          inner join mall_team_leader c on a.take_unique_code=c.unique_code
         <where>
             a.del_flag=2
@@ -207,6 +234,53 @@
             <if test="record.status == 5">
                 and a.status = 7 or b.state in (2,3)
             </if>
+            <if test="record.orderType != null">
+                and a.order_type=#{record.orderType}
+            </if>
+        </where>
+        order by a.created_time desc
+    </select>
+
+    <select id="selectApiOrderListInPage" resultMap="OrderInfoMap">
+        select
+        a.*,
+        b.id item_id,
+        b.order_id,
+        b.goods_id,
+        b.sku_id,
+        b.goods_name,
+        b.style_name,
+        b.sku_name,
+        b.sku_image,
+        b.state,
+        b.cnt,
+        b.price,
+        b.amount,
+        c.name leader_name,
+        c.phone leader_phone,
+        c.address_pic,
+        c.address_area,
+        c.province,
+        c.city,
+        c.township,
+        c.detail_address
+        from mall_order_info a
+        inner join mall_order_item b on a.id=b.order_id
+        inner join mall_team_leader c on a.take_unique_code=c.unique_code
+        <where>
+            a.del_flag=2
+            <if test="record.memberId != null">
+                and a.member_id=#{record.memberId}
+            </if>
+            <if test="record.status == 4 and record.status != 0">
+                and a.status = 4
+            </if>
+            <if test="record.status != 4 and record.status != 0 and record.status != 5">
+                and a.status = #{record.status}
+            </if>
+            <if test="record.status == 5">
+                and a.status = 7 or b.state in (2,3)
+            </if>
             <if test="record.query != null and record.query != ''">
                 and (b.goods_name like CONCAT('%', CONCAT(#{record.query}, '%')) or b.style_name like CONCAT('%', CONCAT(#{record.query}, '%')) or b.sku_name like CONCAT('%', CONCAT(#{record.query}, '%')))
             </if>

--
Gitblit v1.9.1