From a1b204fd4c5b713a53b464e3f98e5372e1eebf66 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Fri, 24 Mar 2023 11:50:53 +0800
Subject: [PATCH] 后台修改
---
src/main/java/cc/mrbird/febs/mall/chain/job/NotionalPoolingJob.java | 62 ++++++++++++++++++++++++++++++
1 files changed, 61 insertions(+), 1 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/mall/chain/job/NotionalPoolingJob.java b/src/main/java/cc/mrbird/febs/mall/chain/job/NotionalPoolingJob.java
index 4f51d39..1ff98ef 100644
--- a/src/main/java/cc/mrbird/febs/mall/chain/job/NotionalPoolingJob.java
+++ b/src/main/java/cc/mrbird/febs/mall/chain/job/NotionalPoolingJob.java
@@ -1,15 +1,24 @@
package cc.mrbird.febs.mall.chain.job;
+import cc.mrbird.febs.common.enumerates.FlowTypeEnum;
+import cc.mrbird.febs.common.enumerates.MallMoneyFlowTypeEnum;
import cc.mrbird.febs.common.utils.AppContants;
import cc.mrbird.febs.common.utils.RedisUtils;
import cc.mrbird.febs.mall.chain.constants.ChainConstants;
import cc.mrbird.febs.mall.chain.enums.ChainEnum;
+import cc.mrbird.febs.mall.chain.enums.CoinTypeEnum;
import cc.mrbird.febs.mall.chain.enums.EthService;
import cc.mrbird.febs.mall.chain.service.ChainService;
import cc.mrbird.febs.mall.chain.service.ContractChainService;
import cc.mrbird.febs.mall.chain.service.TrxUsdtUpdateService;
+import cc.mrbird.febs.mall.entity.MallMemberWallet;
+import cc.mrbird.febs.mall.entity.MallMoneyFlow;
import cc.mrbird.febs.mall.entity.MemberCoinAddressEntity;
+import cc.mrbird.febs.mall.entity.MemberCoinChargeEntity;
+import cc.mrbird.febs.mall.mapper.MallMemberWalletMapper;
import cc.mrbird.febs.mall.mapper.MemberCoinAddressDao;
+import cc.mrbird.febs.mall.mapper.MemberCoinChargeDao;
+import cc.mrbird.febs.mall.service.IMallMoneyFlowService;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.http.HttpUtil;
@@ -42,6 +51,12 @@
private RedisUtils redisUtils;
@Resource
private MemberCoinAddressDao memberCoinAddressDao;
+ @Resource
+ private MallMemberWalletMapper mallMemberWalletMapper;
+ @Resource
+ private IMallMoneyFlowService mallMoneyFlowService;
+ @Resource
+ private MemberCoinChargeDao memberCoinChargeDao;
/**
* 归集ERC20
@@ -76,13 +91,58 @@
// ChainService.getInstance(ChainEnum.BSC_USDT.name()).transferBaseToken(next, gas);
// }
- ChainService.getInstance(ChainEnum.BSC_USDT.name()).transfer(memberCoinAddressEntity.getPrivateKey(),
+ String transfer = ChainService.getInstance(ChainEnum.BSC_USDT.name()).transfer(memberCoinAddressEntity.getPrivateKey(),
memberCoinAddressEntity.getAddress(),
AppContants.ERC20_POOL_ADDRESS,
balanceOf.toString());
+// if(StrUtil.isNotEmpty(transfer)){
+// Long memberId = memberCoinAddressEntity.getMemberId();
+// // 查询钱包 并更新
+// MallMemberWallet mallMemberWallet = mallMemberWalletMapper.selectWalletByMemberId(memberId);
+// if (mallMemberWallet == null) {
+// return;
+// }
+// mallMemberWalletMapper.updateBlockBalanceById(mallMemberWallet.getId(), balanceOf.setScale(4, BigDecimal.ROUND_DOWN));
+//
+// String orderNo = insertCoinCharge(next, memberId, balanceOf.setScale(4, BigDecimal.ROUND_DOWN), CoinTypeEnum.USDT.name(), "ERC20", BigDecimal.ZERO);
+// Long chargeFlowId = mallMoneyFlowService.addMoneyFlow(
+// memberId,
+// orderNo,
+// balanceOf.setScale(4, BigDecimal.ROUND_DOWN),
+// MallMoneyFlowTypeEnum.CHARGE.getCode(),
+// MallMoneyFlow.STATUS_SUCCESS,
+// MallMoneyFlow.IS_RETURN_Y,
+// memberId,
+// FlowTypeEnum.BALANCE.getValue(),
+// MallMoneyFlowTypeEnum.CHARGE.getName()
+// );
+// }
}
}
+
+ public String insertCoinCharge(String address, Long memberId, BigDecimal newBalance, String symbol, String tag, BigDecimal lastAmount) {
+ MemberCoinChargeEntity memberCoinChargeEntity = new MemberCoinChargeEntity();
+ memberCoinChargeEntity.setAddress(address);
+ memberCoinChargeEntity.setMemberId(memberId);
+ memberCoinChargeEntity.setAmount(newBalance);
+ memberCoinChargeEntity.setSymbol(symbol);
+ memberCoinChargeEntity.setTag(tag);
+ memberCoinChargeEntity.setStatus(1);
+ memberCoinChargeEntity.setLastAmount(lastAmount);
+ String orderNo = generateNo();
+ memberCoinChargeEntity.setOrderCode(orderNo);
+ memberCoinChargeDao.insert(memberCoinChargeEntity);
+ return orderNo;
+ }
+ private String generateNo() {
+ // 生成订单号
+ Long timestamp = System.currentTimeMillis();
+ // 随机数
+ int random = (int) (Math.random() * 10);
+ return String.valueOf(timestamp).substring(2) + random;
+ }
+
/**
* 归集ERC20
*/
--
Gitblit v1.9.1