From 7ef244df1339c9f4ab0e94d8fe6cdd5c5879aec1 Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Thu, 09 Mar 2023 11:52:34 +0800 Subject: [PATCH] 星级补贴、分享补贴的mq消费,使用批量更新和插入流水 --- src/main/resources/mapper/modules/MallMemberWalletMapper.xml | 61 ++++++++++++++++++++++++++++++ 1 files changed, 61 insertions(+), 0 deletions(-) diff --git a/src/main/resources/mapper/modules/MallMemberWalletMapper.xml b/src/main/resources/mapper/modules/MallMemberWalletMapper.xml index cc3b0b8..966088f 100644 --- a/src/main/resources/mapper/modules/MallMemberWalletMapper.xml +++ b/src/main/resources/mapper/modules/MallMemberWalletMapper.xml @@ -13,10 +13,71 @@ where id=#{record.id} and revision=#{record.revision} </update> + <update id="updateCommissionWithVersion"> + update mall_member_wallet + set revision = revision + 1, + commission = #{record.commission} + where id=#{record.id} and revision=#{record.revision} + </update> + <update id="updateBalanceWithId"> update mall_member_wallet set revision = revision + 1, balance = #{record.balance} where id=#{record.id} </update> + + <update id="updateAmountWithVersion"> + update mall_member_wallet + set revision = revision + 1 + <if test="record.balance != null"> + , balance = #{record.balance} + </if> + <if test="record.score != null"> + , score = #{record.score} + </if> + <if test="record.prizeScore != null"> + , prize_score = #{record.prizeScore} + </if> + <if test="record.commission != null"> + , commission = #{record.commission} + </if> + where id=#{record.id} and revision=#{record.revision} + </update> + + <select id="selectSumBalance" resultType="java.math.BigDecimal"> + select ifnull(sum(balance),0) total from mall_member_wallet + </select> + + <select id="selectSumScore" resultType="java.math.BigDecimal"> + select ifnull(sum(score),0) total from mall_member_wallet + </select> + + <select id="selectSumPrizeScore" resultType="java.math.BigDecimal"> + select ifnull(sum(prize_score),0) total from mall_member_wallet + </select> + + <select id="selectSumCommission" resultType="java.math.BigDecimal"> + select ifnull(sum(commission),0) total from mall_member_wallet + </select> + + <select id="selectSumStarByIds" resultType="cc.mrbird.febs.mall.entity.MallMemberWallet"> + select * from mall_member_wallet + where member_id IN + <foreach collection = "list" item = "item" separator="," open = "(" close = ")" > + #{item} + </foreach > + </select> + + <update id="updateStarByList" parameterType="java.util.List" > +-- //注意sql语句应被;分隔开,否则批量更新多少条数据就有多少条sql拼在一起。 + <foreach collection="list" item="item" index="index" open="" close="" separator=";"> + update mall_member_wallet + <set> + balance = balance + #{item.starPerkAmount}, + </set> + WHERE id = #{item.id} + </foreach> + </update> + </mapper> \ No newline at end of file -- Gitblit v1.9.1