xiaoyong931011
2023-01-10 73b3813c2d110bf446f251350f120bb1e2b51d0c
src/main/resources/mapper/modules/MallMemberWalletMapper.xml
@@ -3,7 +3,7 @@
<mapper namespace="cc.mrbird.febs.mall.mapper.MallMemberWalletMapper">
    <select id="selectWalletByMemberId" resultType="cc.mrbird.febs.mall.entity.MallMemberWallet">
        select * from mall_member_wallet where member_id=#{memberId}
        select * from mall_member_wallet where member_id=#{memberId} for update
    </select>
    <update id="updateBalanceWithVersion">
@@ -13,10 +13,59 @@
        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>
    <update id="updateBlockBalanceById">
        update mall_member_wallet
        set
            balance = IFNULL(balance, 0) + #{balance}
        where id=#{id}
    </update>
</mapper>