|  |  |  | 
|---|
|  |  |  | <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,IFNULL(c.score,0) score,IFNULL(c.prize_score,0) prizeScore,IFNULL(c.commission,0) commission | 
|---|
|  |  |  | ,d.description levelName | 
|---|
|  |  |  | 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 | 
|---|
|  |  |  | LEFT JOIN data_dictionary_custom d on d.code = m.level and type='AGENT_LEVEL' | 
|---|
|  |  |  | <where> | 
|---|
|  |  |  | <if test="record != null" > | 
|---|
|  |  |  | <if test="record.name!=null and record.name!=''"> | 
|---|
|  |  |  | 
|---|
|  |  |  | <if test="record.accountType != null" > | 
|---|
|  |  |  | and m.account_type = #{record.accountType} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="record.level!=null and record.level!=''"> | 
|---|
|  |  |  | and m.level=#{record.level} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </where> | 
|---|
|  |  |  | order by m.CREATED_TIME desc | 
|---|
|  |  |  | GROUP BY m.id order by m.CREATED_TIME desc | 
|---|
|  |  |  | </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, | 
|---|
|  |  |  | 
|---|
|  |  |  | a.account_status, | 
|---|
|  |  |  | a.CREATED_TIME, | 
|---|
|  |  |  | IFNULL(c.balance,0) balance, | 
|---|
|  |  |  | IFNULL(c.score,0) score, | 
|---|
|  |  |  | IFNULL(c.prize_score,0) prizeScore, | 
|---|
|  |  |  | d.description levelName, | 
|---|
|  |  |  | b.name | 
|---|
|  |  |  | FROM mall_member a | 
|---|
|  |  |  | 
|---|
|  |  |  | a.invite_id, | 
|---|
|  |  |  | 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 in (2, 3, 4) | 
|---|
|  |  |  | where e.invite_id=a.invite_id or e.referrer_id=a.invite_id) amount, | 
|---|
|  |  |  | p.prize_score, | 
|---|
|  |  |  | u.description levelName, | 
|---|
|  |  |  | (select sum(e.amount) | 
|---|
|  |  |  | from mall_order_info e | 
|---|
|  |  |  | inner join mall_member b on e.member_id=b.ID | 
|---|
|  |  |  | inner join mall_order_item c on e.id = c.order_id -- and c.is_normal=2 | 
|---|
|  |  |  | where e.status in (2, 3, 4) and e.order_type=1 and (b.invite_id=a.invite_id or b.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 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 | 
|---|
|  |  |  | inner join mall_order_info b on e.id=b.member_id and b.status in (2, 3, 4) | 
|---|
|  |  |  | where find_in_set(a.invite_id, e.referrer_ids)) orderCnt, | 
|---|
|  |  |  | (select count(1) from mall_member x where find_in_set(a.invite_id, x.referrer_ids)) cnt | 
|---|
|  |  |  | from mall_member a | 
|---|
|  |  |  | inner join mall_member_wallet p on a.id=p.member_id | 
|---|
|  |  |  | left join data_dictionary_custom u on a.level=u.code and u.type='AGENT_LEVEL' | 
|---|
|  |  |  | where a.referrer_id=#{inviteId} | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <select id="selectByIdAndNoLevel" resultType="cc.mrbird.febs.mall.entity.MallMember"> | 
|---|
|  |  |  | select * from mall_member where referrer_id=#{refererId} and level != #{level} | 
|---|
|  |  |  | select * from mall_member where level != #{level} | 
|---|
|  |  |  | <if test="refererId != null and refererId != ''"> | 
|---|
|  |  |  | and referrer_id=#{refererId} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <select id="selectMallMemberByInviteIdAndLevel" resultType="cc.mrbird.febs.mall.entity.MallMember"> | 
|---|
|  |  |  | 
|---|
|  |  |  | 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 a.*, b.*--> | 
|---|
|  |  |  | <!--        from mall_member a--> | 
|---|
|  |  |  | <!--            inner join (--> | 
|---|
|  |  |  | <!--                select b.referrer_id refererId, sum(a.amount) amount, max(a.order_time) orderTime--> | 
|---|
|  |  |  | <!--                    from mall_order_info a--> | 
|---|
|  |  |  | <!--                    inner join mall_member b on a.member_id=b.ID--> | 
|---|
|  |  |  | <!--                    inner join mall_order_item c on a.id = c.order_id and c.is_normal=2--> | 
|---|
|  |  |  | <!--                where a.status in (2, 3, 4) and a.order_type=1--> | 
|---|
|  |  |  | <!--                <!– 月 –>--> | 
|---|
|  |  |  | <!--                <if test="record.query == '2'">--> | 
|---|
|  |  |  | <!--                    and date_format(#{record.createdTime},'%Y-%m') = date_format(b.order_time,'%Y-%m')--> | 
|---|
|  |  |  | <!--                </if>--> | 
|---|
|  |  |  | <!--                group by b.referrer_id--> | 
|---|
|  |  |  | <!--            ) b  on a.invite_id=b.refererId--> | 
|---|
|  |  |  | <!--        order by b.amount desc, b.orderTime desc--> | 
|---|
|  |  |  | <!--    </select>--> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <select id="selectRankListInPage" resultType="cc.mrbird.febs.mall.entity.MallMember"> | 
|---|
|  |  |  | select a.*, b.* | 
|---|
|  |  |  | from mall_member a | 
|---|
|  |  |  | inner join ( | 
|---|
|  |  |  | select b.referrer_id refererId, sum(a.amount) amount, max(a.pay_time) orderTime | 
|---|
|  |  |  | from mall_achieve_record a | 
|---|
|  |  |  | inner join mall_member b on a.member_id=b.ID | 
|---|
|  |  |  | where 1=1 | 
|---|
|  |  |  | <!-- 月 --> | 
|---|
|  |  |  | <if test="record.query == '2'"> | 
|---|
|  |  |  | and date_format(#{record.createdTime},'%Y-%m') = date_format(a.achieve_time,'%Y-%m') | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | group by b.referrer_id | 
|---|
|  |  |  | ) b  on a.invite_id=b.refererId | 
|---|
|  |  |  | order by b.amount desc, b.orderTime desc | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <select id="selectAchieveByMemberId" resultType="java.math.BigDecimal"> | 
|---|
|  |  |  | select IFNULL(sum(IFNULL(a.amount, 0)), 0) | 
|---|
|  |  |  | from mall_achieve_record a | 
|---|
|  |  |  | inner join mall_member b on a.member_id=b.ID | 
|---|
|  |  |  | where 1=1 | 
|---|
|  |  |  | <if test="type == 1"> | 
|---|
|  |  |  | and b.invite_id=#{inviteId} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="type == 2"> | 
|---|
|  |  |  | and find_in_set(#{inviteId}, b.referrer_ids) | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <select id="selectMemberByName" resultType="cc.mrbird.febs.mall.entity.MallMember"> | 
|---|
|  |  |  | select * from mall_member | 
|---|
|  |  |  | where name=#{name} | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <select id="selectMemberListHasChild" resultType="cc.mrbird.febs.mall.entity.MallMember"> | 
|---|
|  |  |  | select distinct a.* from mall_member a, mall_member b | 
|---|
|  |  |  | where a.invite_id=b.referrer_id | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <select id="selectMemberDirectForHasLevel" resultType="cc.mrbird.febs.mall.entity.MallMember"> | 
|---|
|  |  |  | select * from mall_member | 
|---|
|  |  |  | where referrer_id=#{inviteId} and level != 'ZERO_LEVEL' | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <select id="selectDirectorsOrStoreMaster" resultType="cc.mrbird.febs.mall.entity.MallMember"> | 
|---|
|  |  |  | select * from mall_member | 
|---|
|  |  |  | <where> | 
|---|
|  |  |  | 1=1 | 
|---|
|  |  |  | <if test="type == 1"> | 
|---|
|  |  |  | and director = 1 | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="type == 2"> | 
|---|
|  |  |  | and store_master = 1 | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </where> | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <select id="selectMemberWithLevel" resultType="cc.mrbird.febs.mall.entity.MallMember"> | 
|---|
|  |  |  | select * from mall_member | 
|---|
|  |  |  | where level=#{level} | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <select id="selectMemberByOpenId" resultType="cc.mrbird.febs.mall.entity.MallMember"> | 
|---|
|  |  |  | SELECT a.* | 
|---|
|  |  |  | FROM mall_member a | 
|---|
|  |  |  | where a.open_id = #{openId} limit 1 | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <select id="findMallRollPerkInPage" resultType="cc.mrbird.febs.mall.entity.MallRollPerk"> | 
|---|
|  |  |  | select * from mall_roll_perk | 
|---|
|  |  |  | where member_id = #{record.memberId} | 
|---|
|  |  |  | and roll_id = #{record.rollId} | 
|---|
|  |  |  | <if test="record.state != null and record.state != ''"> | 
|---|
|  |  |  | and state = #{record.state} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | </mapper> | 
|---|