From b4b6cbb10af27cbb88f9dc9de19e4baf21807149 Mon Sep 17 00:00:00 2001
From: KKSU <15274802129@163.com>
Date: Mon, 24 Jun 2024 09:48:38 +0800
Subject: [PATCH] 后台矩阵列表

---
 src/main/resources/mapper/dapp/DappWalletCoinDao.xml |  137 +++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 136 insertions(+), 1 deletions(-)

diff --git a/src/main/resources/mapper/dapp/DappWalletCoinDao.xml b/src/main/resources/mapper/dapp/DappWalletCoinDao.xml
index dd1ed66..5e7fbeb 100644
--- a/src/main/resources/mapper/dapp/DappWalletCoinDao.xml
+++ b/src/main/resources/mapper/dapp/DappWalletCoinDao.xml
@@ -3,6 +3,141 @@
 <mapper namespace="cc.mrbird.febs.dapp.mapper.DappWalletCoinDao">
 
     <select id="selectByMemberId" resultType="cc.mrbird.febs.dapp.entity.DappWalletCoinEntity">
-        select * from dapp_member_coin where member_id=#{memberId}
+        select * from dapp_wallet_coin where member_id=#{memberId}
     </select>
+
+    <select id="selectInPage" resultType="cc.mrbird.febs.dapp.entity.DappWalletCoinEntity">
+        select a.*, b.address address from dapp_wallet_coin a
+        inner join dapp_member b on a.member_id=b.id
+        <where>
+            <if test="record.currentUser != null">
+                and b.referer_id = (select invite_id from dapp_user_member_relate where user_id=#{record.currentUser})
+            </if>
+            <if test="record.address != '' and record.address != null">
+                and b.address = #{record.address}
+            </if>
+        </where>
+    </select>
+
+    <update id="updateWithLock">
+        update dapp_wallet_coin
+            set total_amount=#{record.totalAmount},
+                available_amount=#{record.availableAmount},
+                frozen_amount=#{record.frozenAmount},
+                version=version+1
+        where id=#{record.id} and version=#{record.version}
+    </update>
+
+    <update id="addAvailableAndDelFrozenById">
+        update dapp_wallet_coin
+        set
+            available_amount = available_amount + #{balance},
+            frozen_amount = frozen_amount - #{balance}
+        where
+            id = #{id}
+          and frozen_amount - #{balance} <![CDATA[ >= ]]> 0
+    </update>
+
+    <update id="addFrozenAndDelAvailableById">
+        update dapp_wallet_coin
+        set
+            available_amount = available_amount - #{balance},
+            frozen_amount = frozen_amount + #{balance}
+        where
+            id = #{id}
+          and available_amount - #{balance} <![CDATA[ >= ]]> 0
+    </update>
+
+    <update id="delTotalAndDelFrozenById">
+        update dapp_wallet_coin
+        set
+            total_amount = total_amount - #{balance},
+            frozen_amount = frozen_amount - #{balance}
+        where
+            id = #{id}
+          and total_amount - #{balance} <![CDATA[ >= ]]> 0
+          and frozen_amount - #{balance} <![CDATA[ >= ]]> 0
+    </update>
+
+    <update id="addTotalAndaddAvailableById">
+        update dapp_wallet_coin
+        set
+            total_amount = total_amount + #{balance},
+            available_amount = available_amount + #{balance}
+        where
+            id = #{id}
+    </update>
+
+    <update id="delAvailableDelTotalById">
+        update dapp_wallet_coin
+        set
+            total_amount = total_amount - #{balance},
+            available_amount = available_amount - #{balance}
+        where
+            id = #{id}
+          and total_amount - #{balance} <![CDATA[ >= ]]> 0
+    </update>
+
+
+    <select id="selectWalletCoinBymIdAndCode" resultType="cc.mrbird.febs.dapp.entity.DappWalletCoinEntity">
+        select * from dapp_wallet_coin where member_id = #{memberId} and wallet_code = #{walletCode}
+    </select>
+
+    <update id="updateFrozenBalance" parameterType="map">
+        UPDATE dapp_wallet_coin
+        SET available_amount = available_amount - #{amount},
+            frozen_amount = frozen_amount + #{amount}
+        WHERE
+            id = #{id}
+          AND member_id = #{memberId}
+    </update>
+
+    <update id="subFrozenBalance" parameterType="map">
+        UPDATE dapp_wallet_coin
+        SET available_amount = available_amount + #{amount},
+            frozen_amount = frozen_amount - #{amount}
+        WHERE
+            id = #{id}
+          AND member_id = #{memberId}
+    </update>
+
+
+    <update id="updateBlockBalance">
+        update dapp_wallet_coin
+        set
+            available_amount = IFNULL(available_amount, 0) + #{availableAmount},
+            total_amount = IFNULL(total_amount, 0) + #{availableAmount},
+            early_amount = IFNULL(early_amount, 0) + #{earlyAmount},
+            block_number  = IFNULL(block_number, 0) + #{blockNumber}
+        where id=#{id}
+    </update>
+
+    <update id="reduceFrozenBalance">
+        update dapp_wallet_coin
+        set frozen_amount = frozen_amount - #{amount},
+            total_amount = total_amount - #{amount}
+        where id=#{id}
+    </update>
+
+    <select id="selectTotalAmount" resultType="cc.mrbird.febs.dapp.entity.DappMemberEntity">
+        select
+            b.id,
+            b.invite_id,
+            b.referer_id,
+            b.identity,
+            b.referer_ids
+        from
+            dapp_wallet_coin a
+                inner join dapp_member b on a.member_id = b.id
+        where a.total_amount <![CDATA[ >= ]]> 51
+    </select>
+
+    <update id="addTotalAndaddAvailableByMemberId">
+        update dapp_wallet_coin
+        set
+            total_amount = total_amount + #{balance},
+            available_amount = available_amount + #{balance}
+        where
+            member_id = #{memberId}
+    </update>
 </mapper>
\ No newline at end of file

--
Gitblit v1.9.1