From be3f0d8e8616f37621b3e969d6ca269ddf58a3a2 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Fri, 02 Dec 2022 17:33:40 +0800
Subject: [PATCH] 20221130
---
src/main/java/cc/mrbird/febs/dapp/chain/EthService.java | 1
src/main/java/cc/mrbird/febs/dapp/service/impl/DappSystemServiceImpl.java | 19 +++++----
src/main/resources/mapper/dapp/DappFundFlowDao.xml | 15 +++++++
src/test/java/cc/mrbird/febs/MemberTest.java | 15 +++++--
src/main/java/cc/mrbird/febs/dapp/mapper/DappFundFlowDao.java | 4 ++
src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java | 2
src/main/java/cc/mrbird/febs/dapp/chain/ChainEnum.java | 5 ++
7 files changed, 47 insertions(+), 14 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/dapp/chain/ChainEnum.java b/src/main/java/cc/mrbird/febs/dapp/chain/ChainEnum.java
index e192aae..8a43cf4 100644
--- a/src/main/java/cc/mrbird/febs/dapp/chain/ChainEnum.java
+++ b/src/main/java/cc/mrbird/febs/dapp/chain/ChainEnum.java
@@ -24,6 +24,11 @@
"https://bsc-dataseed1.ninicoin.io",
"0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c",
""),
+ BNB("BSC", "0xBa6206B3Be305278Ea65bA54C4E6188B252AEc4a",
+ "0x1bc264d17bd2b1f3c0480764272284b8e6c8b0a39a590c26940f84f7b090cc74",
+ "https://bsc-dataseed1.ninicoin.io",
+ "0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c",
+ ""),
/**
* 币安链 代币合约
diff --git a/src/main/java/cc/mrbird/febs/dapp/chain/EthService.java b/src/main/java/cc/mrbird/febs/dapp/chain/EthService.java
index 609cdfd..57ae327 100644
--- a/src/main/java/cc/mrbird/febs/dapp/chain/EthService.java
+++ b/src/main/java/cc/mrbird/febs/dapp/chain/EthService.java
@@ -257,6 +257,7 @@
public String tokenTransfer(String privateKey, String fromAddress, String toAddress, String amount) throws ExecutionException, InterruptedException {
String gas = getGas();
+// String gas = "5";
BigDecimal amountPow = new BigDecimal(amount).multiply(BigDecimal.TEN.pow(decimals()));
amount = amountPow.toPlainString();
diff --git a/src/main/java/cc/mrbird/febs/dapp/mapper/DappFundFlowDao.java b/src/main/java/cc/mrbird/febs/dapp/mapper/DappFundFlowDao.java
index 1527491..967af3f 100644
--- a/src/main/java/cc/mrbird/febs/dapp/mapper/DappFundFlowDao.java
+++ b/src/main/java/cc/mrbird/febs/dapp/mapper/DappFundFlowDao.java
@@ -28,4 +28,8 @@
DappFundFlowEntity selectNewestFundFlow(@Param("memberId") Long memberId, @Param("type") Integer type);
BigDecimal selectSumAmountByMemberIdAndTypeAndStatus(@Param("memberId") Long memberId,@Param("type")int type, @Param("status")int status);
+
+ DappFundFlowEntity selectInfoById(@Param("id")Long id);
+
+ int updateStatusById(@Param("status")int status, @Param("id")Long id);
}
diff --git a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappSystemServiceImpl.java b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappSystemServiceImpl.java
index 33b4b92..8e9c1c0 100644
--- a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappSystemServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappSystemServiceImpl.java
@@ -450,20 +450,22 @@
public void bnbTransfer(Long id) {
log.info("{}",id);
//获取对应的流水记录
- DappFundFlowEntity dappFundFlowEntity = dappFundFlowDao.selectById(id);
+ DappFundFlowEntity dappFundFlowEntity = dappFundFlowDao.selectInfoById(id);
if(ObjectUtil.isEmpty(dappFundFlowEntity)){
return;
}
if(DappFundFlowEntity.WITHDRAW_STATUS_AGREE == dappFundFlowEntity.getStatus()){
return;
}
+ Long memberId = dappFundFlowEntity.getMemberId();
+ DappMemberEntity dappMemberEntity = dappMemberDao.selectById(memberId);
+ if(ObjectUtil.isEmpty(dappMemberEntity)){
+ return;
+ }
+ Integer count = dappFundFlowDao.updateStatusById(DappFundFlowEntity.WITHDRAW_STATUS_AGREE,dappFundFlowEntity.getId());
+// if(count > 0){
// //金额
// BigDecimal amount = dappFundFlowEntity.getAmount();
-// Long memberId = dappFundFlowEntity.getMemberId();
-// DappMemberEntity dappMemberEntity = dappMemberDao.selectById(memberId);
-// if(ObjectUtil.isEmpty(dappMemberEntity)){
-// return;
-// }
// //目标地址
// String address = dappMemberEntity.getAddress();
// String hash = ChainService.getInstance(ChainEnum.BSC_USDT.name()).transfer(address, amount);
@@ -471,9 +473,8 @@
// return;
// }
// dappFundFlowEntity.setToHash(hash);
- dappFundFlowEntity.setStatus(DappFundFlowEntity.WITHDRAW_STATUS_AGREE);
- dappFundFlowDao.updateById(dappFundFlowEntity);
-
+// dappFundFlowDao.updateById(dappFundFlowEntity);
+// }
}
@Override
diff --git a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java
index 5ca0cc5..4a51793 100644
--- a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java
@@ -193,7 +193,7 @@
}
//插入一条会员入列记录,即加入动能队列
- DappSystemProfit dappSystemProfit = new DappSystemProfit(member.getId(), transferDto.getAmount());
+ DappSystemProfit dappSystemProfit = new DappSystemProfit(member.getId(), flow.getAmount());
dappSystemProfitDao.insert(dappSystemProfit);
flow.setFromHash(transferDto.getTxHash());
diff --git a/src/main/resources/mapper/dapp/DappFundFlowDao.xml b/src/main/resources/mapper/dapp/DappFundFlowDao.xml
index f8ed207..6bd97cc 100644
--- a/src/main/resources/mapper/dapp/DappFundFlowDao.xml
+++ b/src/main/resources/mapper/dapp/DappFundFlowDao.xml
@@ -88,4 +88,19 @@
and type = #{type}
and status = #{status}
</select>
+
+ <select id="selectInfoById" resultType="cc.mrbird.febs.dapp.entity.DappFundFlowEntity">
+ select a.* from dapp_fund_flow
+ where a.id = #{id}
+ for update
+ </select>
+
+ <update id="updateStatusById">
+ update dapp_fund_flow
+ set status = #{status},
+ version = version + 1
+ where id = #{id}
+ and version = 1
+ and status = 1
+ </update>
</mapper>
\ No newline at end of file
diff --git a/src/test/java/cc/mrbird/febs/MemberTest.java b/src/test/java/cc/mrbird/febs/MemberTest.java
index 8f0291c..50933d3 100644
--- a/src/test/java/cc/mrbird/febs/MemberTest.java
+++ b/src/test/java/cc/mrbird/febs/MemberTest.java
@@ -3,8 +3,10 @@
import cc.mrbird.febs.common.contants.AppContants;
import cc.mrbird.febs.dapp.chain.ChainEnum;
import cc.mrbird.febs.dapp.chain.ChainService;
+import cc.mrbird.febs.dapp.entity.DappFundFlowEntity;
import cc.mrbird.febs.dapp.entity.DappMemberEntity;
import cc.mrbird.febs.dapp.entity.DataDictionaryCustom;
+import cc.mrbird.febs.dapp.mapper.DappFundFlowDao;
import cc.mrbird.febs.dapp.mapper.DappMemberDao;
import cc.mrbird.febs.dapp.mapper.DataDictionaryCustomMapper;
import cn.hutool.core.util.StrUtil;
@@ -28,6 +30,9 @@
@Autowired
private DataDictionaryCustomMapper dataDictionaryCustomMapper;
+
+ @Autowired
+ private DappFundFlowDao dappFundFlowDao;
// String address = dappMemberEntity.getAddress();
// String hash = ChainService.getInstance(ChainEnum.BSC_USDT.name()).transfer(address, amount);
// if(StrUtil.isEmpty(hash)){
@@ -37,10 +42,12 @@
public void tranfer(){
String address = "0xD9076245473060DDa1a65f5f3D89a4D0598995E6";
BigDecimal amount = new BigDecimal("0.0009");
- String hash = ChainService.getInstance(ChainEnum.BSC_USDT.name()).transfer(address, amount);
- if(StrUtil.isEmpty(hash)){
- return;
- }
+ String hash = ChainService.getInstance(ChainEnum.BNB.name()).transfer(address, amount);
+//// if(StrUtil.isEmpty(hash)){
+//// return;
+//// }
+// BigDecimal balance = ChainService.getInstance(ChainEnum.WBNB.name()).balanceOf(ChainEnum.WBNB.getAddress());
+// Integer count = dappFundFlowDao.updateStatusById(DappFundFlowEntity.WITHDRAW_STATUS_AGREE,464L);
System.out.println(hash);
}
--
Gitblit v1.9.1