update 优化订单支付定时任务批量修改金额相关sql
This commit is contained in:
@@ -108,12 +108,37 @@
|
||||
|
||||
|
||||
<update id="updateBalanceAndBlockBalance">
|
||||
<foreach collection="list" item="item" separator=";">
|
||||
UPDATE lease_user_wallet_data
|
||||
SET balance = balance - #{item.realAmount},
|
||||
blocked_balance = blocked_balance - #{item.blockAmount}
|
||||
WHERE from_address = #{item.fromAddress} AND from_symbol = #{item.fromSymbol} AND from_chain = #{item.fromChain} AND del = false
|
||||
UPDATE lease_user_wallet_data
|
||||
SET balance = CASE
|
||||
<foreach collection="list" item="item">
|
||||
WHEN from_address = #{item.fromAddress} AND from_symbol = #{item.fromSymbol} AND from_chain = #{item.fromChain} AND del = false
|
||||
THEN balance - #{item.realAmount}
|
||||
</foreach>
|
||||
ELSE balance
|
||||
END,
|
||||
blocked_balance = CASE
|
||||
<foreach collection="list" item="item">
|
||||
WHEN from_address = #{item.fromAddress} AND from_symbol = #{item.fromSymbol} AND from_chain = #{item.fromChain} AND del = false
|
||||
THEN blocked_balance - #{item.blockAmount}
|
||||
</foreach>
|
||||
ELSE blocked_balance
|
||||
END
|
||||
WHERE from_address IN (
|
||||
<foreach collection="list" item="item" separator=",">
|
||||
#{item.fromAddress}
|
||||
</foreach>
|
||||
)
|
||||
AND from_symbol IN (
|
||||
<foreach collection="list" item="item" separator=",">
|
||||
#{item.fromSymbol}
|
||||
</foreach>
|
||||
)
|
||||
AND from_chain IN (
|
||||
<foreach collection="list" item="item" separator=",">
|
||||
#{item.fromChain}
|
||||
</foreach>
|
||||
)
|
||||
AND del = false
|
||||
</update>
|
||||
|
||||
</mapper>
|
||||
|
||||
Reference in New Issue
Block a user