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