From f58050b2e5ba95be6dca3e617dfacb7a717d6096 Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Fri, 16 May 2025 17:37:41 +0800
Subject: [PATCH] feat(mall): 添加会员等级图标并更新销售信息
---
src/main/resources/mapper/modules/MallOrderInfoMapper.xml | 171 +++++++++++++++++++++++++++++++++-----------------------
1 files changed, 100 insertions(+), 71 deletions(-)
diff --git a/src/main/resources/mapper/modules/MallOrderInfoMapper.xml b/src/main/resources/mapper/modules/MallOrderInfoMapper.xml
index 3c4df5f..c310823 100644
--- a/src/main/resources/mapper/modules/MallOrderInfoMapper.xml
+++ b/src/main/resources/mapper/modules/MallOrderInfoMapper.xml
@@ -15,18 +15,9 @@
b.sku_image,
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
+ b.amount
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">
@@ -66,10 +57,9 @@
b.name memberName,
b.bind_phone memberBindPhone,
b.phone memberPhone,
- c.name leaderName
+ (select member.name from mall_member member where member.invite_id = b.referrer_id) refererName
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
+ inner join mall_member b on a.member_id = b.id
<where>
<if test="record != null">
<if test="record.payResult != null and record.payResult != ''">
@@ -118,6 +108,7 @@
<result column="member_id" property="memberId" />
<result column="order_time" property="orderTime" />
<result column="pay_time" property="payTime" />
+ <result column="score_amount" property="scoreAmount" />
<result column="amount" property="amount" />
<result column="pay_method" property="payMethod" />
<result column="pay_order_no" property="payOrderNo" />
@@ -137,6 +128,7 @@
<result column="take_unique_code" property="takeUniqueCode" />
<result column="delivery_state" property="deliveryState" />
<result column="is_home" property="isHome" />
+ <result column="is_free" property="isFree" />
<result column="del_flag" property="delFlag" />
<result column="leader_name" property="leaderName" />
<result column="leader_phone" property="leaderPhone" />
@@ -162,24 +154,20 @@
<result property="price" column="price" />
<result property="amount" column="amount" />
<result property="isNormal" column="is_normal" />
+ <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>
<select id="selectApiOrderListInPage" resultType="cc.mrbird.febs.mall.entity.MallOrderInfo">
select
- a.*,
- c.name leaderName,
- c.phone leaderPhone,
- c.address_pic addressPic,
- c.address_area addressArea,
- c.province,
- c.city,
- c.township,
- c.detail_address detailAddress
+ a.*
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">
@@ -219,20 +207,16 @@
b.cnt,
b.price,
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
+ 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
- inner join mall_team_leader c on a.take_unique_code=c.unique_code
+ 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>
@@ -241,8 +225,7 @@
a.status,
count(1) cnt
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}
+ where a.del_flag=2 and a.member_id=#{memberId} and order_type = 1
group by a.status
</select>
@@ -260,8 +243,12 @@
select * from mall_order_info where status=#{status}
</select>
+ <select id="selectOrderInfoByStatusAndIsInvoice" resultType="cc.mrbird.febs.mall.entity.MallOrderInfo">
+ select * from mall_order_info where status = #{status} and is_invoice = #{isInvoice}
+ </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 * from mall_order_info where status=#{status} and now() > date_add(order_time,interval 1440 minute)
</select>
<select id="selectCntDirectOrTeam" resultType="java.lang.Integer">
@@ -378,6 +365,7 @@
<result column="member_id" property="memberId" />
<result column="order_time" property="orderTime" />
<result column="pay_time" property="payTime" />
+ <result column="score_amount" property="scoreAmount" />
<result column="amount" property="amount" />
<result column="pay_method" property="payMethod" />
<result column="pay_order_no" property="payOrderNo" />
@@ -397,6 +385,7 @@
<result column="take_unique_code" property="takeUniqueCode" />
<result column="delivery_state" property="deliveryState" />
<result column="is_home" property="isHome" />
+ <result column="is_free" property="isFree" />
<result column="del_flag" property="delFlag" />
<result column="leader_name" property="leaderName" />
<result column="leader_phone" property="leaderPhone" />
@@ -409,25 +398,50 @@
<result column="city" property="city" />
<result column="township" property="township" />
<result column="detail_address" property="detailAddress" />
+ <result column="express_no" property="expressNo" />
+ <collection property="items" ofType="cc.mrbird.febs.mall.entity.MallOrderItem">
+ <id property="id" column="item_id" />
+ <result property="orderId" column="order_id" />
+ <result property="goodsId" column="goods_id" />
+ <result property="skuId" column="sku_id" />
+ <result property="goodsName" column="goods_name" />
+ <result property="itemScoreAmount" column="item_score_amount" />
+ <result property="itemAmount" column="item_amount" />
+ <result property="itemScorePrice" column="item_score_price" />
+ <result property="goodsName" column="goods_name" />
+ <result property="styleName" column="style_name" />
+ <result property="skuName" column="sku_name" />
+ <result property="skuImage" column="sku_image" />
+ <result property="cnt" column="cnt" />
+ <result property="price" column="price" />
+ <result property="amount" column="amount" />
+ <result property="isNormal" column="is_normal" />
+ <result property="memberInviteId" column="member_invite_id" />
+ <result property="memberCouponId" column="member_coupon_id" />
+ <result property="state" column="state" />
+ </collection>
</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
+ a.* ,
+ b.* ,
+ b.amount as item_amount ,
+ b.score_amount as item_score_amount ,
+ FLOOR((c.original_price * d.static_prop)/100) as item_score_price ,
+ express.express_no
from mall_order_info a
- inner join mall_team_leader c on a.take_unique_code=c.unique_code
+ left join mall_express_info express on a.id=express.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.del_flag=2
<if test="record.memberId != null">
and a.member_id=#{record.memberId}
+ </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>
<if test="record.status == 4 and record.status != 0">
and a.status = 4
@@ -453,34 +467,49 @@
select
a.*,
b.goods_name,
+ b.sku_name,
b.cnt,
b.price,
- b.amount,
- c.name leader_name,
- c.phone leader_phone,
- c.address_area,
- c.detail_address
+ b.amount
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 and a.id = #{orderId} and a.take_unique_code = #{takeUniqueCode}
+ where a.del_flag=2 and a.id = #{orderId}
order by a.created_time desc
</select>
<select id="getGoodsStatisticsInPage" resultType="cc.mrbird.febs.mall.vo.AdminGoodsStatisticsVo">
- select
- goods_name goodsName,
- SUM(cnt) goodsCnt
- from mall_order_item
- <where>
- <if test="record.orderIdsStr != null">
- and order_id in
- <foreach collection="record.orderIdsStr" item="id" index="index" open="(" close=")" separator=",">
- #{id}
- </foreach>
- </if>
- </where>
- GROUP BY goods_id
- ORDER BY goods_id desc
-</select>
+ select
+ goods_name goodsName,
+ SUM(cnt) goodsCnt
+ from mall_order_item
+ <where>
+ 1=1
+ <if test="record.orderIdsStr != null">
+ and order_id in
+ <foreach collection="record.orderIdsStr" item="id" index="index" open="(" close=")" separator=",">
+ #{id}
+ </foreach>
+ </if>
+ </where>
+ GROUP BY goods_id
+ ORDER BY goods_id desc
+ </select>
+
+ <select id="selectAmountOrTeamAmount" resultType="java.math.BigDecimal">
+ select IFNULL(sum(IFNULL(a.amount,0)),0) from mall_order_info a
+ inner join mall_member b on a.member_id=b.ID
+ <where>
+ a.status in (2,3,4)
+ <if test="type == 1">
+ and b.invite_id=#{inviteId}
+ </if>
+ <if test="type == 2">
+ and FIND_IN_SET(#{inviteId},b.referrer_ids)
+ </if>
+ </where>
+ </select>
+
+ <select id="selectBypayOrderNo" resultType="cc.mrbird.febs.mall.entity.MallOrderInfo">
+ select * from mall_order_info where pay_order_no = #{payOrderNo}
+ </select>
</mapper>
\ No newline at end of file
--
Gitblit v1.9.1