xiaoyong931011
2021-09-27 ce1fba3d0a107bd6ea79b3ad9ae47c63f57a0a13
src/main/resources/mapper/modules/MallMemberMapper.xml
@@ -45,7 +45,7 @@
    </select>
    <select id="selectInfoByAccount" resultType="cc.mrbird.febs.mall.entity.MallMember">
        select * from mall_member where phone=#{account} or email=#{account}
        select * from mall_member where phone=#{account} or email=#{account} or invite_id=#{account}
    </select>
    <select id="selectInfoByInviteId" resultType="cc.mrbird.febs.mall.entity.MallMember">
@@ -67,20 +67,144 @@
            (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=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
             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
        where a.referrer_id=#{inviteId}
    </select>
    <select id="selectOwnAmountByInviteId" resultType="java.math.BigDecimal">
    <select id="selectOwnOrderAmountByInviteId" resultType="java.math.BigDecimal">
        select
            sum(b.amount)
            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}
    </select>
    <select id="selectOwnCntByInviteId" resultType="java.lang.Integer">
        select count(1) from mall_member x where x.referrer_id=#{inviteId}
        select IFNULL(count(1),0) from mall_member x where x.referrer_id=#{inviteId}
    </select>
    <select id="selectOwnOrderCntByInviteId" resultType="java.lang.Integer">
        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
        where e.invite_id=#{inviteId} or e.referrer_id=#{inviteId}
    </select>
    <select id="selectByRefererId" resultType="cc.mrbird.febs.mall.entity.MallMember">
        select * from mall_member
        where referrer_id=#{inviteId}
    </select>
    <select id="selectChildAgentList" resultType="cc.mrbird.febs.mall.entity.MallMember">
        select * from mall_member
        where find_in_set(#{inviteId}, referrer_ids) and level=#{agentLevel}
    </select>
    <select id="selectByInviteIds" resultType="cc.mrbird.febs.mall.entity.MallMember">
        select * from mall_member
        where  invite_id IN
        <foreach collection = "list" item = "item"  separator=","  open = "(" close = ")" >
            #{item}
        </foreach >
        order by id desc
    </select>
    <select id="getAgentListInPage" resultType="cc.mrbird.febs.mall.vo.AdminAgentVo">
        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!=''">
                    and m.name like concat('%',  #{record.name},'%')
                </if>
                <if test="record.level!=null and record.level!=''">
                    and m.level = #{record.level}
                </if>
                <if test="record.account!=null and record.account!=''">
                    and m.phone like concat('%',  #{record.account},'%')
                </if>
            </if>
        </where>
        group by m.id
        order by m.CREATED_TIME desc
    </select>
    <select id="selectChildAgentListByInviteId" resultType="cc.mrbird.febs.mall.entity.MallMember">
        select * from mall_member where  referrer_id = #{inviteId}
    </select>
    <select id="selectAllChildAgentListByInviteId" resultType="cc.mrbird.febs.mall.entity.MallMember">
        select * from mall_member where  find_in_set(#{inviteId}, referrer_ids)
    </select>
    <select id="selectMemberParentAgentList" resultType="cc.mrbird.febs.mall.entity.MallMember">
        select * from mall_member
        where level != 'FIRST_LEVEL' 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>
</mapper>