From 55ed00804fcd0e8fe9026ae6464bfb69d3eb0d15 Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Fri, 23 Sep 2022 15:11:41 +0800 Subject: [PATCH] 20220902 --- src/main/resources/mapper/modules/MallOrderInfoMapper.xml | 263 +++++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 225 insertions(+), 38 deletions(-) diff --git a/src/main/resources/mapper/modules/MallOrderInfoMapper.xml b/src/main/resources/mapper/modules/MallOrderInfoMapper.xml index 449790c..092ce2b 100644 --- a/src/main/resources/mapper/modules/MallOrderInfoMapper.xml +++ b/src/main/resources/mapper/modules/MallOrderInfoMapper.xml @@ -15,9 +15,18 @@ b.sku_image, b.cnt, b.price, - b.amount + 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.status == 4 and record.status != 0"> @@ -35,21 +44,32 @@ <if test="record.orderType != null"> and a.order_type=#{record.orderType} </if> + <if test="record.deliveryType != null"> + and a.delivery_type=#{record.deliveryType} + </if> + <if test="record.takeUniqueCode != null"> + and a.take_unique_code=#{record.takeUniqueCode} + </if> </where> order by a.created_time desc </select> - <select id="selectOrderByMemberIdAndId" resultType="cc.mrbird.febs.mall.entity.MallOrderInfo"> - select * from mall_order_info where member_id=#{memberId} and id=#{id} + <select id="selectOrderByMemberIdAndId" resultMap="OrderInfoMap"> + select + a.*, + b.goods_name from mall_order_info a + inner join mall_order_item b on a.id=b.order_id where a.member_id=#{memberId} and a.id=#{id} </select> <select id="selectOrderListInPage" resultType="cc.mrbird.febs.mall.vo.AdminMallOrderInfoVo"> - select *, + select a.*, b.name memberName, b.bind_phone memberBindPhone, - b.phone memberPhone + b.phone memberPhone, + c.name leaderName from mall_order_info a left join mall_member b on a.member_id = b.id + left join mall_team_leader c on a.take_unique_code = c.unique_code <where> a.del_flag=2 <if test="record != null"> @@ -62,15 +82,30 @@ <if test="record.status != null and record.status != ''"> and a.status = #{record.status} </if> + <if test="record.deliveryType != null and record.deliveryType != ''"> + and a.delivery_type = #{record.deliveryType} + </if> + <if test="record.isHome != null and record.isHome != ''"> + and a.is_home = #{record.isHome} + </if> <if test="record.orderNo != null and record.orderNo != ''"> and a.order_no like CONCAT('%', CONCAT(#{record.orderNo}, '%')) </if> <if test="record.name != null and record.name != ''"> and b.name like CONCAT('%', CONCAT(#{record.name}, '%')) </if> + <if test="record.uniqueCode != null and record.uniqueCode != ''"> + and a.take_unique_code = #{record.uniqueCode} + </if> + <if test="record.startTime != null and record.startTime != ''"> + and a.order_time >= #{record.startTime} + </if> + <if test="record.endTime != null and record.endTime != ''"> + and a.order_time <= #{record.endTime} + </if> </if> </where> - order by a.created_time desc + GROUP BY a.id order by a.created_time desc </select> <select id="getMallOrderInfoById" resultType="cc.mrbird.febs.mall.vo.AdminMallOrderVo"> @@ -96,9 +131,25 @@ <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" /> <collection property="items" ofType="cc.mrbird.febs.mall.entity.MallOrderItem"> <id property="id" column="item_id" /> <result property="orderId" column="order_id" /> @@ -111,41 +162,41 @@ <result property="cnt" column="cnt" /> <result property="price" column="price" /> <result property="amount" column="amount" /> + <result property="isNormal" column="is_normal" /> + <result property="state" column="state" /> </collection> </resultMap> - <select id="selectApiOrderListInPage" resultMap="OrderInfoMap"> + <select id="selectApiOrderListInPage" resultType="cc.mrbird.febs.mall.entity.MallOrderInfo"> 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.cnt, - b.price, - b.amount + c.name leaderName, + c.phone leaderPhone, + c.address_pic addressPic, + c.address_area addressArea, + c.province, + c.city, + c.township, + c.detail_address detailAddress from mall_order_info a - inner join mall_order_item b on a.id=b.order_id + 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.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 test="record.memberId != null"> + and a.member_id=#{record.memberId} </if> <if test="record.status == 4 and record.status != 0"> - and a.status in (5,6) + 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 + and a.status = 7 or b.state in (2,3) </if> - <if test="record.memberId != null"> - and a.member_id=#{record.memberId} + <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> <if test="record.orderType != null"> and a.order_type=#{record.orderType} @@ -165,21 +216,35 @@ b.style_name, b.sku_name, b.sku_image, + b.state, b.cnt, b.price, - b.amount + b.amount, + b.is_normal, + c.name leader_name, + c.phone leader_phone, + c.address_pic, + c.address_area, + c.province, + c.city, + c.township, + c.longitude leaderLongitude, + c.latitude leaderLatitude, + 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.id=#{id} </select> <select id="selectMemberOrderStatusCnt" resultType="java.util.Map"> select - status, + a.status, count(1) cnt - from mall_order_info - where del_flag=2 and member_id=#{memberId} - group by status + from mall_order_info a + inner join mall_team_leader c on a.take_unique_code=c.unique_code + where a.del_flag=2 and a.member_id=#{memberId} + group by a.status </select> <select id="getMallOrderDetailById" resultType="cc.mrbird.febs.mall.vo.AdminOrderDetailVo"> @@ -192,6 +257,10 @@ <select id="selectOrderInfoByStatus" resultType="cc.mrbird.febs.mall.entity.MallOrderInfo"> select * from mall_order_info where status=#{status} + </select> + + <select id="selectOrderInfoUpTime" resultType="cc.mrbird.febs.mall.entity.MallOrderInfo"> + select * from mall_order_info where status=#{status} and now() > date_add(order_time,interval 15 minute) </select> <select id="selectCntDirectOrTeam" resultType="java.lang.Integer"> @@ -230,7 +299,7 @@ and member_id=#{memberId} </if> <if test="date != null"> - and date_format(a.receving_time, '%Y-%m-%d') = date_format(#{date}, '%Y-%m-%d') + and date_format(a.receiving_time, '%Y-%m-%d') = date_format(#{date}, '%Y-%m-%d') </if> </select> @@ -238,22 +307,140 @@ select IFNULL(sum(IFNULL(b.amount,0) - IFNULL(b.cost_price*b.cnt, 0)),0) from mall_order_info a inner join mall_order_item b on a.id=b.order_id - where a.status in (2, 3, 4) and a.is_normal = 2 and a.order_type=1 + where a.order_type=1 + <if test="isNormal == 2"> + and a.status in (2, 3, 4) and b.is_normal = 2 and b.has_settle=1 + </if> + <if test="isNormal == 1"> + and a.status=4 and b.is_normal = 1 and b.has_settle=1 + </if> <if test="member != null"> and member_id=#{memberId} </if> - <if test="date != null and type == 'D'"> - and date_format(a.receving_time, '%Y-%m-%d') = date_format(#{date}, '%Y-%m-%d') + <if test='date != null and dateType == "D"'> + and date_format(a.pay_time, '%Y-%m-%d') = date_format(#{date}, '%Y-%m-%d') </if> - <if test="date != null and type == 'M'"> - and date_format(a.receving_time, '%Y-%m') = date_format(#{date}, '%Y-%m') + <if test='date != null and dateType == "M"'> + and date_format(a.pay_time, '%Y-%m') = date_format(#{date}, '%Y-%m') </if> - <if test="date != null and type == 'Y'"> - and date_format(a.receving_time, '%Y') = date_format(#{date}, '%Y') + <if test='date != null and dateType == "Y"'> + and date_format(a.pay_time, '%Y') = date_format(#{date}, '%Y') </if> </select> <select id="selectByOrderNo" resultType="cc.mrbird.febs.mall.entity.MallOrderInfo"> select * from mall_order_info where order_no=#{orderNo} </select> + + <update id="updateOrderConfirmStatus"> + update mall_order_info + set status=4, + receiving_time=#{updateTime} + where status=3 and date_format(pay_time, '%Y-%m-%d') = date_format(#{date}, '%Y-%m-%d') + </update> + + <select id="selectOrderInfoWithNormalGoods" resultMap="OrderInfoMap"> + select * from mall_order_info a + inner join mall_order_item b on a.id=b.order_id and b.is_normal=1 + where date_format(pay_time, '%Y-%m-%d') = date_format(#{date}, '%Y-%m-%d') + </select> + + <select id="selectSumAmountByPayMethodAndStatue" resultType="java.math.BigDecimal"> + select IFNULL(sum(IFNULL(amount,0)),0) from mall_order_info + where pay_method = #{payMethod} and status = #{statue} + </select> + + <update id="updateOrderStateAndDeliveryState"> + update mall_order_info + set status = #{orderState}, + delivery_state = #{deliveryState} + where id = #{orderId} + </update> + + <select id="selectMemberOrderStatusCntByUniquecode" resultType="java.util.Map"> + select + status, + count(1) cnt + from mall_order_info + where del_flag = 2 and take_unique_code = #{uniqueCode} + group by status + </select> + + <select id="selectOrderByStatusAndPayTime" resultType="cc.mrbird.febs.mall.entity.MallOrderInfo"> + select * from mall_order_info where status=#{status} + and date_format(pay_time, '%Y-%m-%d') = date_format(#{paytime}, '%Y-%m-%d') + </select> + + <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.*, + 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_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.orderType != null"> + and a.order_type=#{record.orderType} + </if> + </where> + order by a.created_time desc + </select> </mapper> \ No newline at end of file -- Gitblit v1.9.1