Administrator
2025-05-28 f16f74cacb9ef0ae4be89ed15353b6a449479d8c
src/main/resources/mapper/modules/MallMemberMapper.xml
@@ -11,8 +11,8 @@
        left join mall_vip_config vipConfig on m.level = vipConfig.code
        <where>
            <if test="record != null" >
                <if test="record.birthday!=null">
                    and m.birthday = #{record.birthday}
                <if test="record.birthdayQuery!=null">
                    and date_format(m.birthday, '%m-%d') = date_format(#{record.birthdayQuery}, '%m-%d')
                </if>
                <if test="record.name!=null and record.name!=''">
                    and m.name like concat('%',  #{record.name},'%')
@@ -42,6 +42,55 @@
        GROUP BY m.id order by m.CREATED_TIME desc
    </select>
    <select id="selectHappyMemberListInPage" resultType="cc.mrbird.febs.mall.entity.MallMember">
        SELECT
               a.*,
               d.balance balance,
               d.score score,
               d.prize_score prizeScore,
               d.commission commission,
               d.total_score totalScore,
               b.name storeMasterName,
               c.name directorName
        FROM mall_member a
        left join happy_sale_level b on b.code = a.store_master
        left join happy_member_level c on c.code = a.director
        left join mall_member_wallet d on d.member_id = a.id
        <where>
            and a.phone is not null
            <if test="record != null" >
                <if test="record.birthdayQuery!=null">
                    and date_format(a.birthday, '%m-%d') = date_format(#{record.birthdayQuery}, '%m-%d')
                </if>
                <if test="record.name!=null and record.name!=''">
                    and a.name like concat('%',  #{record.name},'%')
                </if>
                <if test="record.phone!=null and record.phone!=''">
                    and a.phone like concat('%',  #{record.phone},'%')
                </if>
                <if test="record.accountStatus!=null">
                    and a.account_status = #{record.accountStatus}
                </if>
                <if test="record.director!=null">
                    and a.director = #{record.director}
                </if>
                <if test="record.storeMaster!=null">
                    and a.store_master = #{record.storeMaster}
                </if>
                <if test="record.accountType != null" >
                    and a.account_type = #{record.accountType}
                </if>
                <if test="record.level!=null and record.level!=''">
                    and a.level=#{record.level}
                </if>
                <if test="record.checkOrder!=null">
                    and a.check_order=#{record.checkOrder}
                </if>
            </if>
        </where>
        GROUP BY a.id order by a.CREATED_TIME desc
    </select>
    <select id="getMallMemberInfoById" resultType="cc.mrbird.febs.mall.vo.MallMemberVo">
        SELECT a.id,
               a.name,
@@ -55,6 +104,7 @@
               IFNULL(c.balance,0) balance,
               IFNULL(c.score,0) score,
               IFNULL(c.prize_score,0) prizeScore,
               IFNULL(c.commission,0) commission,
               d.description levelName,
               b.name
               FROM mall_member a
@@ -141,7 +191,7 @@
    <select id="getAgentListInPage" resultType="cc.mrbird.febs.mall.vo.AdminAgentVo">
        SELECT m.*,a.description levelName,
        SELECT m.*,a.name levelName,
        ifnull((
        SELECT
        sum(b.amount)
@@ -155,8 +205,9 @@
        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
        left join happy_sale_level a on a.code = m.store_master
        <where>
             and m.store_master != 0
            <if test="record != null" >
                <if test="record.name!=null and record.name!=''">
                    and m.name like concat('%',  #{record.name},'%')
@@ -203,8 +254,8 @@
    </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
        select m.*,a.name levelName from mall_member m
            left join happy_sale_level a on a.code = m.store_master
        where  find_in_set(#{record.inviteId}, m.referrer_ids)
        GROUP BY m.id
        ORDER BY
@@ -442,4 +493,91 @@
        where id = #{id}
    </update>
    <update id="updateLastLoginTime">
        update mall_member
        set last_login_time = #{lastLoginTime}
        where id = #{id}
    </update>
    <select id="selectTeamPage" resultType="cc.mrbird.febs.mall.vo.sale.ApiTeamListInfoVo">
        SELECT
            a. NAME memberName,
            a.is_sale isSale,
            a.CREATED_TIME createdTime,
            ifnull(
                (
                SELECT
                count(c.id)
                FROM
                mall_order_info c
                WHERE
                a.id = c.member_id
                    and c.status = 4
                ),
                0
            ) orderCnt,
            ifnull(
                (
                SELECT
                sum(b.amount)
                FROM
                mall_order_info b
                WHERE
                a.id = b.member_id
                    and b.status = 4
                ),
                0
            ) totalAmount
        FROM
            mall_member a
        <where>
            and find_in_set(#{record.inviteId}, a.referrer_ids)
            <if test="record != null" >
                <if test="record.memberName != null and record.memberName != ''">
                    and a.name like concat('%',  #{record.memberName},'%')
                </if>
                <if test="record.startTime != null and record.startTime != ''">
                    and a.CREATED_TIME &gt;= #{record.startTime}
                </if>
                <if test="record.endTime != null and record.endTime != ''">
                    and a.CREATED_TIME &lt;= #{record.endTime}
                </if>
            </if>
        </where>
        order by a.CREATED_TIME desc
    </select>
    <select id="selectSalePage" resultType="cc.mrbird.febs.mall.vo.sale.ApiSaleListInfoVo">
        SELECT
            c.name memberName,
            a.CREATED_TIME createdTime,
            a.cost_amount costAmount,
            a.amount amount
        FROM mall_achieve_record a
        left join mall_order_info b on a.order_id = b.id
        left join mall_member c on b.member_id = c.id
        <where>
            and a.member_id = #{record.memberId}
            <if test="record != null" >
                <if test="record.memberName != null and record.memberName != ''">
                    and c.name like concat('%',  #{record.memberName},'%')
                </if>
                <if test="record.startTime != null and record.startTime != ''">
                    and a.CREATED_TIME &gt;= #{record.startTime}
                </if>
                <if test="record.endTime != null and record.endTime != ''">
                    and a.CREATED_TIME &lt;= #{record.endTime}
                </if>
            </if>
        </where>
        order by a.CREATED_TIME desc
    </select>
</mapper>