From 1bf57dbbb7025facb8a3e3c2074e82af6f13b24f Mon Sep 17 00:00:00 2001 From: Helius <wangdoubleone@gmail.com> Date: Thu, 28 Apr 2022 15:13:59 +0800 Subject: [PATCH] fix --- src/main/resources/mapper/modules/MallMemberMapper.xml | 193 +++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 183 insertions(+), 10 deletions(-) diff --git a/src/main/resources/mapper/modules/MallMemberMapper.xml b/src/main/resources/mapper/modules/MallMemberMapper.xml index 10e601f..960799d 100644 --- a/src/main/resources/mapper/modules/MallMemberMapper.xml +++ b/src/main/resources/mapper/modules/MallMemberMapper.xml @@ -3,7 +3,9 @@ <mapper namespace="cc.mrbird.febs.mall.mapper.MallMemberMapper"> <select id="selectMallMemberListInPage" resultType="cc.mrbird.febs.mall.entity.MallMember"> - SELECT * FROM mall_member m + SELECT m.*,a.name referrerName,IFNULL(c.balance,0) balance FROM mall_member m + left join mall_member a on m.referrer_id = a.invite_id + LEFT JOIN mall_member_wallet c on c.member_id = m.id <where> <if test="record != null" > <if test="record.name!=null and record.name!=''"> @@ -13,6 +15,7 @@ and ( m.phone like concat('%', #{record.account},'%') or m.email like concat('%', #{record.account},'%') + or m.bind_phone like concat('%', #{record.account},'%') or m.invite_id like concat('%', #{record.account},'%') ) </if> @@ -28,7 +31,8 @@ </select> <select id="getMallMemberInfoById" resultType="cc.mrbird.febs.mall.vo.MallMemberVo"> - SELECT a.name, + SELECT a.id, + a.name, a.phone, a.email, a.sex, @@ -36,12 +40,15 @@ a.level, a.account_status, a.CREATED_TIME, - c.balance, + IFNULL(c.balance,0) balance, + d.description levelName, b.name FROM mall_member a LEFT JOIN mall_member b on a.referrer_id = b.invite_id LEFT JOIN mall_member_wallet c on c.member_id = a.id + LEFT JOIN data_dictionary_custom d on d.code = a.level where a.id = #{id} + GROUP BY a.id </select> <select id="selectInfoByAccount" resultType="cc.mrbird.febs.mall.entity.MallMember"> @@ -65,10 +72,10 @@ 2 isCurrent, a.created_time, (select sum(b.amount) from mall_member e - inner join mall_order_info b on e.id=b.member_id and b.status=4 + inner join mall_order_info b on e.id=b.member_id and b.status in (2, 3, 4) where e.invite_id=a.invite_id or e.referrer_id=a.invite_id) amount, (select count(1) from mall_member e - inner join mall_order_info b on e.id=b.member_id and b.status=4 + inner join mall_order_info b on e.id=b.member_id and b.status in (2, 3, 4) where e.invite_id=a.invite_id or e.referrer_id=a.invite_id) orderCnt, (select count(1) from mall_member x where x.referrer_id=a.invite_id) cnt from mall_member a @@ -79,7 +86,7 @@ select IFNULL(sum(b.amount),0) from mall_member e - inner join mall_order_info b on e.id=b.member_id and b.status=4 + inner join mall_order_info b on e.id=b.member_id and b.status in (2, 3, 4) where e.invite_id=#{inviteId} or e.referrer_id=#{inviteId} </select> @@ -91,7 +98,7 @@ select IFNULL(count(1),0) from mall_member e - inner join mall_order_info b on e.id=b.member_id and b.status=4 + inner join mall_order_info b on e.id=b.member_id and b.status in (2, 3, 4) where e.invite_id=#{inviteId} or e.referrer_id=#{inviteId} </select> @@ -102,7 +109,7 @@ <select id="selectChildAgentList" resultType="cc.mrbird.febs.mall.entity.MallMember"> select * from mall_member - where find_in_set(#{inviteId}, referrer_ids) and level=#{agentLevel} + where (find_in_set(#{inviteId}, referrer_ids) or invite_id=#{inviteId}) and level=#{agentLevel} </select> <select id="selectByInviteIds" resultType="cc.mrbird.febs.mall.entity.MallMember"> @@ -115,7 +122,22 @@ </select> <select id="getAgentListInPage" resultType="cc.mrbird.febs.mall.vo.AdminAgentVo"> - SELECT * FROM mall_member m + + SELECT m.*,a.description levelName, + ifnull(( + SELECT + sum(b.amount) + FROM + mall_member e + INNER JOIN mall_order_info b ON e.id = b.member_id + AND b. STATUS = 4 + WHERE + e.invite_id = m.invite_id + OR e.referrer_id = m.invite_id + or find_in_set(m.invite_id, e.referrer_ids) + ),0) amount + FROM mall_member m + left join data_dictionary_custom a on a.code = m.level <where> <if test="record != null" > <if test="record.name!=null and record.name!=''"> @@ -129,6 +151,7 @@ </if> </if> </where> + group by m.id order by m.CREATED_TIME desc </select> @@ -142,10 +165,160 @@ <select id="selectMemberParentAgentList" resultType="cc.mrbird.febs.mall.entity.MallMember"> select * from mall_member - where level != 'FIRST_LEVEL' and invite_id IN + where level not in ('ZERO_LEVEL', 'FIRST_LEVEL') and invite_id!=#{refererId} and invite_id IN <foreach collection = "list" item = "item" separator="," open = "(" close = ")" > #{item} </foreach > order by id desc </select> + + <select id="getAgentLevelListInPage" resultType="cc.mrbird.febs.mall.vo.AdminAgentLevelVo"> + SELECT + a.id,b.description name + FROM + data_dictionary_custom a + left JOIN data_dictionary_custom b on a.code = b.code + where a.type = 'AGENT_LEVEL_REQUIRE' + GROUP BY a.id + ORDER BY + a.CREATED_TIME DESC + </select> + + <select id="getAgentChildInPage" resultType="cc.mrbird.febs.mall.vo.AdminAgentMemberVo"> + select m.*,a.description levelName from mall_member m + left join data_dictionary_custom a on a.code = m.level + where find_in_set(#{record.inviteId}, m.referrer_ids) + GROUP BY m.id + ORDER BY + m.CREATED_TIME DESC + </select> + + <select id="getRankAwardListInPage" resultType="cc.mrbird.febs.mall.vo.AdminRankAwardVo"> + select a.* from data_dictionary_custom a where a.type = 'RANK_AWARD' or a.type = 'RANK_AWARD_SETTING' + </select> + + + <select id="getAgentTeamAmountByInviteId" resultType="java.math.BigDecimal"> + SELECT + ifnull(sum(b.amount),0) + FROM + mall_member e + INNER JOIN mall_order_info b ON e.id = b.member_id + AND b. STATUS = 4 + WHERE + e.invite_id = #{inviteId} + OR e.referrer_id = #{inviteId} + or find_in_set(#{inviteId}, e.referrer_ids) + </select> + + <select id="getAppVersionListInPage" resultType="cc.mrbird.febs.mall.entity.AppVersion"> + select a.* from app_version a + </select> + + <select id="selectByIdAndNoLevel" resultType="cc.mrbird.febs.mall.entity.MallMember"> + select * from mall_member where referrer_id=#{refererId} and level != #{level} + </select> + + <select id="selectMallMemberByInviteIdAndLevel" resultType="cc.mrbird.febs.mall.entity.MallMember"> + SELECT + m.*, b. + VALUE + + FROM + mall_member m + LEFT JOIN data_dictionary_custom b ON m. LEVEL = b. CODE + WHERE + find_in_set(#{inviteId}, m.referrer_ids) + AND b.type = 'AGENT_LEVEL' + AND b.VALUE > ( + SELECT + VALUE + FROM + data_dictionary_custom a + WHERE + a. CODE = #{level} + AND a.type = 'AGENT_LEVEL' + ) + GROUP BY + m.id + </select> + + + + <select id="getAgentLevelSetInfoByMemberId" resultType="cc.mrbird.febs.mall.vo.AdminAgentLevelSetInfoVo"> + SELECT a.id,d.code levelCode + FROM mall_member a + LEFT JOIN data_dictionary_custom d on d.code = a.level + where a.id = #{id} and d.type = 'AGENT_LEVEL' + GROUP BY a.id + </select> + + <select id="getMallDataListInPage" resultType="cc.mrbird.febs.mall.vo.MallDataVo"> + SELECT + DATE_FORMAT(a.CREATED_TIME, '%Y-%m-%d') createdTime, + IFNULL(t1.tol, 0) *- 1 AS payMoney, + IFNULL(t2.to2, 0) AS refundMoney, + IFNULL(t3.to3, 0) *- 1 AS rewordMoney, + ( + (IFNULL(t1.tol, 0)*- 1) - (IFNULL(t2.to2, 0)) + (IFNULL(t3.to3, 0)*- 1) + ) AS surplusMoney + FROM + mall_money_flow a + LEFT JOIN ( + SELECT + b.CREATED_TIME, + IFNULL(SUM(b.amount), 0) AS tol + FROM + mall_money_flow b + WHERE + b.type = 3 + GROUP BY + DATE_FORMAT(b.CREATED_TIME, '%Y-%m-%d') + ) t1 ON DATE_FORMAT(t1.CREATED_TIME, '%Y-%m-%d') = DATE_FORMAT(a.CREATED_TIME, '%Y-%m-%d') + LEFT JOIN ( + SELECT + c.CREATED_TIME, + IFNULL(SUM(c.amount), 0) AS to2 + FROM + mall_money_flow c + WHERE + c.type = 4 + GROUP BY + DATE_FORMAT(c.CREATED_TIME, '%Y-%m-%d') + ) t2 ON DATE_FORMAT(t2.CREATED_TIME, '%Y-%m-%d') = DATE_FORMAT(a.CREATED_TIME, '%Y-%m-%d') + LEFT JOIN ( + SELECT + d.CREATED_TIME, + IFNULL(SUM(d.amount), 0) AS to3 + FROM + mall_money_flow d + WHERE + d.type IN (1, 2) + GROUP BY + DATE_FORMAT(d.CREATED_TIME, '%Y-%m-%d') + ) t3 ON DATE_FORMAT(t3.CREATED_TIME, '%Y-%m-%d') = DATE_FORMAT(a.CREATED_TIME, '%Y-%m-%d') + GROUP BY + DATE_FORMAT(a.CREATED_TIME, '%Y-%m-%d') + ORDER BY + DATE_FORMAT(a.CREATED_TIME, '%Y-%m-%d') DESC + </select> + + <select id="selectRankListInPage" resultType="cc.mrbird.febs.mall.entity.MallMember"> + select * from ( + select a.id, a.name, a.invite_id, a.avatar, sum(b.amount) amount,max(order_time) orderTime from mall_member a, mall_order_info b + where a.id=b.member_id and b.status = 4 + <!-- 日 --> + <if test="record.query == '1'"> + + </if> + <!-- 月 --> + <if test="record.query == '2'"> + and date_format(#{record.createdTime},'%Y-%m') = date_format(b.order_time,'%Y-%m') + </if> + <if test="record.amount != null"> + and amount = #{record.amount} + </if> + group by a.id + ) a order by amount desc, a.orderTime desc + </select> </mapper> \ No newline at end of file -- Gitblit v1.9.1