xiaoyong931011
2023-10-24 bad4cadc4c4bc735e97247918a0555bfc1278798
src/main/resources/mapper/modules/ChatUserMapper.xml
@@ -7,6 +7,8 @@
        a.user_id userId,
        a.nick_name nickName,
        a.chat_no chatNo,
        a.model_type modelType,
        a.create_group createGroup,
        a.phone phone,
        a.status status,
        a.invite_id inviteId,
@@ -75,11 +77,11 @@
        a.state state,
        a.remark remark
        from chat_amount_flow a
        left join chat_user b on b.user_id = a.user_id
        inner join chat_user b on b.user_id = a.user_id
        <where>
            <if test="record != null">
                <if test="record.nickName != null and record.nickName != ''">
                    and b.nick_name like CONCAT('%', CONCAT(#{record.nickName}, '%'))
                    and b.nick_name = #{record.nickName}
                </if>
                <if test="record.type != null and record.type != ''">
                    and a.type = #{record.type}
@@ -164,4 +166,156 @@
        where user_id = #{userId}
    </update>
    <update id="updateModelTypeByUserId">
        update chat_user
        set
            model_type = #{modelType}
        where user_id = #{userId}
    </update>
    <select id="selectDicDataByTypeAndCode" resultType="cc.mrbird.febs.mall.entity.DataDictionary">
        select * from data_dictionary a
        where a.type=#{type} and a.code=#{code}
    </select>
    <select id="selectGroupListInPage" resultType="cc.mrbird.febs.mall.vo.AdminGroupVo">
        select
        a.id id,
        a.use_robot useRobot,
        a.name name,
        a.model_type modelType,
        a.amount_min amountMin,
        a.amount_max amountMax,
        a.red_bag_cnt redBagCnt,
        a.auto_send autoSend,
        b.phone phone,
        b.nick_name nickName,
        a.create_time createTime
        from chat_group a
        left join chat_user b on b.user_id = a.master
        <where>
            <if test="record != null">
                <if test="record.name != null and record.name != ''">
                    and a.name like CONCAT('%', CONCAT(#{record.name}, '%'))
                </if>
            </if>
        </where>
        order by a.create_time desc
    </select>
    <select id="selectVersionListInPage" resultType="cc.mrbird.febs.mall.vo.AdminVersionVo">
        select
        a.*
        from chat_version a
    </select>
    <update id="updateIsRobotByGroupId">
        update chat_group
        set
            use_robot = #{useRobot}
        where id = #{id}
    </update>
    <select id="getGroupInfoById" resultType="cc.mrbird.febs.mall.vo.AdminGroupInfoVo">
        select
        a.id id,
        a.name name,
        b.phone phone,
        a.model_type modelType,
        b.nick_name nickName,
        a.use_robot useRobot,
        a.amount_min amountMin,
        a.amount_max amountMax,
        a.red_bag_cnt redBagCnt
        from chat_group a
        left join chat_user b on b.user_id = a.master
        where id = #{id}
    </select>
    <select id="getVersionInfoById" resultType="cc.mrbird.febs.mall.vo.AdminVersionVo">
        select
            a.*
        from chat_version a
        where id = #{id}
    </select>
    <update id="updateAutoSendByGroupId">
        update chat_group
        set
            auto_send = #{autoSend}
        where id = #{id}
    </update>
    <select id="selectRedBagListInPage" resultType="cc.mrbird.febs.mall.vo.AdminRedBagVo">
        select
        a.*,
        b.nick_name nickName,
        c.name groupName
        from chat_red_bag a
        left join chat_user b on b.user_id = a.from_user_id
        left join chat_group c on c.id = a.to_user_id
        <where>
            a.msg_type = 'GROUP'
            <if test="record != null">
                <if test="record.name != null and record.name != ''">
                    and c.name like CONCAT('%', CONCAT(#{record.name}, '%'))
                </if>
            </if>
        </where>
        order by a.create_time desc
    </select>
    <update id="updateCreateGroupByUserId">
        update chat_user
        set
            create_group = #{createGroup}
        where user_id = #{userId}
    </update>
    <update id="updateNicknameById">
        update chat_user
        set
            nick_name = #{nickName}
        where user_id = #{userId}
    </update>
    <select id="selectListByIsRobot" resultType="cc.mrbird.febs.mall.entity.ChatUser">
        select
            a.*
        from chat_user a
        where is_robot = #{isRobot}
    </select>
    <select id="selectTotalAmount" resultType="java.math.BigDecimal">
        select IFNULL(sum(IFNULL(total_amount,0)),0)
        from chat_wallet
        where type = 'USDT'
    </select>
    <select id="selectTotalType" resultType="java.math.BigDecimal">
        select IFNULL(sum(IFNULL(amount,0)),0)
        from chat_amount_flow
        where type = #{type}
        <if test='dateType == "D"'>
            and date_format(create_time, '%Y-%m-%d') = date_format(#{date}, '%Y-%m-%d');
        </if>
        <if test='dateType == "M"'>
            and date_format(create_time, '%Y-%m') = date_format(#{date}, '%Y-%m');
        </if>
    </select>
    <select id="selectUserList" resultType="cc.mrbird.febs.mall.entity.ChatUser">
        select
        a.*
        from chat_user a
        where is_robot = #{isRobot}
        <if test='dateType == "D"'>
            and date_format(create_time, '%Y-%m-%d') = date_format(#{date}, '%Y-%m-%d');
        </if>
        <if test='dateType == "M"'>
            and date_format(create_time, '%Y-%m') = date_format(#{date}, '%Y-%m');
        </if>
    </select>
</mapper>