From 3156be749dfc93764850b27f7cc2b4514a3ae4d0 Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Mon, 30 Oct 2023 16:36:54 +0800 Subject: [PATCH] 用户收益列表 --- src/main/resources/mapper/modules/ChatUserMapper.xml | 301 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 296 insertions(+), 5 deletions(-) diff --git a/src/main/resources/mapper/modules/ChatUserMapper.xml b/src/main/resources/mapper/modules/ChatUserMapper.xml index b040b45..db8bda4 100644 --- a/src/main/resources/mapper/modules/ChatUserMapper.xml +++ b/src/main/resources/mapper/modules/ChatUserMapper.xml @@ -7,7 +7,12 @@ 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, + a.is_robot isRobot, date_format(a.create_time, '%Y-%m-%d %H:%m:%s') createTime, IFNULL(sum(b.total_amount), 0) totalAmount, IFNULL(sum(b.ava_amount), 0) avaAmount @@ -15,11 +20,14 @@ left join chat_wallet b on b.user_id = a.user_id and type = 'USDT' <where> <if test="record != null"> + <if test="record.phone != null and record.phone != ''"> + and a.phone like CONCAT('%', CONCAT(#{record.phone}, '%')) + </if> <if test="record.nickName != null and record.nickName != ''"> and a.nick_name like CONCAT('%', CONCAT(#{record.nickName}, '%')) </if> - <if test="record.chatNo != null and record.chatNo != ''"> - and a.chat_no = #{record.chatNo} + <if test="record.inviteId != null and record.inviteId != ''"> + and a.invite_id = #{record.inviteId} </if> <if test="record.status != null and record.status != ''"> and a.status = #{record.status} @@ -28,6 +36,54 @@ </where> group by a.user_id order by a.create_time desc + </select> + + <select id="selectUserPerkListInPage" resultType="cc.mrbird.febs.mall.vo.AdminChatUserPerkVo"> + select + a.user_id userId, + a.nick_name nickName, + a.chat_no chatNo, + a.get_boom getBoom, + a.phone phone, + a.invite_id inviteId, + a.is_robot isRobot, + date_format(a.create_time, '%Y-%m-%d %H:%m:%s') createTime, + IFNULL(sum(b.total_amount), 0) totalAmount, + IFNULL(sum(b.ava_amount), 0) avaAmount, + ( + SELECT + COUNT(c.id) + FROM chat_red_bag c + where c.from_user_id = a.user_id + AND c.msg_type = 'GROUP' + ) groupRedBagNum, + ( + select IFNULL(sum(IFNULL(d.amount,0)),0) + from chat_amount_flow d + where (d.type = 7 or d.type = 9) + and d.user_id = a.user_id + ) teamPerkAmount + from chat_user a + left join chat_wallet b on b.user_id = a.user_id and b.type = 'USDT' + <where> + a.is_robot = 0 + <if test="record.phone != null and record.phone != ''"> + and a.phone like CONCAT('%', CONCAT(#{record.phone}, '%')) + </if> + <if test="record.nickName != null and record.nickName != ''"> + and a.nick_name like CONCAT('%', CONCAT(#{record.nickName}, '%')) + </if> + <if test="record.inviteId != null and record.inviteId != ''"> + and (find_in_set(#{record.inviteId}, referrer_ids) or invite_id = #{record.inviteId}) + </if> + <if test="record.isRobot != null"> + and a.is_robot = #{record.isRobot} + </if> + </where> + group by a.user_id + HAVING teamPerkAmount > 0 + order by + a.user_id asc ,a.create_time asc </select> <select id="selectByUserId" resultType="cc.mrbird.febs.mall.entity.ChatUser"> @@ -67,16 +123,20 @@ a.type type, a.amount amount, b.nick_name nickName, + b.phone phone, date_format(a.create_time, '%Y-%m-%d %H:%m:%s') createTime, a.ava_amount avaAmount, 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.phone != null and record.phone != ''"> + and b.phone like CONCAT('%', CONCAT(#{record.phone}, '%')) + </if> <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} @@ -90,6 +150,7 @@ select date_format(a.created_time, '%Y-%m-%d %H:%m:%s') createdTime, b.nick_name nickName, + b.phone phone, a.amount amount, a.last_amount lastAmount, a.status status, @@ -101,6 +162,9 @@ left join chat_user b on b.user_id = a.user_id <where> <if test="record != null"> + <if test="record.phone != null and record.phone != ''"> + and b.phone like CONCAT('%', CONCAT(#{record.phone}, '%')) + </if> <if test="record.nickName != null and record.nickName != ''"> and b.nick_name like CONCAT('%', CONCAT(#{record.nickName}, '%')) </if> @@ -116,15 +180,20 @@ select date_format(a.created_time, '%Y-%m-%d %H:%m:%s') createdTime, b.nick_name nickName, + b.phone phone, a.id id, - a.amount amount, + (a.amount - a.fee) amount, a.type type, a.address address, + a.address_type addressType, a.state state from member_coin_withdraw a left join chat_user b on b.user_id = a.user_id <where> <if test="record != null"> + <if test="record.phone != null and record.phone != ''"> + and b.phone like CONCAT('%', CONCAT(#{record.phone}, '%')) + </if> <if test="record.nickName != null and record.nickName != ''"> and b.nick_name like CONCAT('%', CONCAT(#{record.nickName}, '%')) </if> @@ -154,4 +223,226 @@ update chat_amount_flow set state = #{state} where user_id = #{userId} and relation_id = #{id} </update> + <update id="updateIsRobotByUserId"> + update chat_user + set + is_robot = #{isRobot} + 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, + b.is_robot isRobot, + 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 test="record.nickName != null and record.nickName != ''"> + and b.nick_name like CONCAT('%', CONCAT(#{record.nickName}, '%')) + </if> + <if test="record.isRobot != null"> + and b.is_robot = #{record.isRobot} + </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="selectTotalTypeByUserId" resultType="java.math.BigDecimal"> + select IFNULL(sum(IFNULL(amount,0)),0) + from chat_amount_flow + where type = #{type} + and user_id = #{userId} + <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> + + <select id="selectListByMsgType" resultType="cc.mrbird.febs.mall.vo.AdminChatRedBagVo"> + select + a.* + from chat_red_bag a + where a.msg_type = #{msgType} + <if test='date != "" and date != null'> + and date_format(a.create_time, '%Y-%m-%d') = date_format(#{date}, '%Y-%m-%d') + </if> + and a.from_user_id = #{userId} + </select> + + <select id="selectByOverDueStatueAndTime" resultType="cc.mrbird.febs.mall.vo.AdminChatRedBagVo"> + select * + from chat_red_bag + where overdue_state = #{overdueState} + and #{overdueTime} > overdue_time + order by id asc + limit 500 + </select> + + + <update id="updateOverdueStatusById"> + update chat_red_bag + set + overdue_state = #{overdueState} + where id = #{id} + </update> + + <update id="updatePortraitById"> + update chat_user + set + portrait = #{portrait} + where user_id = #{userId} + </update> + + <update id="updateGetBoomByUserId"> + update chat_user + set + get_boom = #{getBoom} + where user_id = #{userId} + </update> + + </mapper> \ No newline at end of file -- Gitblit v1.9.1