From ad3e1aee8d80d7534ad777a16255fed922fc5dde Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Mon, 05 Jun 2023 14:39:39 +0800
Subject: [PATCH] twoCoin项目修改
---
src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java | 51 ++++++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 46 insertions(+), 5 deletions(-)
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 fff3bf3..fb2fe6e 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
@@ -363,6 +363,15 @@
* A币卖币规则,卖出100%销毁,30%回流底池溢价
*/
DappMemberEntity member = LoginUserUtil.getAppUser();
+
+ DataDictionaryCustom systemStateDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
+ PoolEnum.SYSTEM.getType(),
+ PoolEnum.SYSTEM.getCode()
+ );
+ String value = systemStateDic.getValue();
+ if("STOP".equals(value)){
+ throw new FebsException("Not yet open");
+ }
//提币数量
BigDecimal amount = withdrawDto.getAmount();
if(BigDecimal.ZERO.compareTo(amount) >= 0){
@@ -410,7 +419,8 @@
);
BigDecimal outPercent = new BigDecimal(outPercentDic.getValue());
BigDecimal realUsdtAmount = coinUsdtAmount.subtract(feeUsdtAmount).setScale(4,BigDecimal.ROUND_DOWN);
- realUsdtAmount = realUsdtAmount.multiply(outPercent).setScale(4,BigDecimal.ROUND_DOWN);
+ BigDecimal realUsdtAmountFee = realUsdtAmount.multiply(outPercent).setScale(4,BigDecimal.ROUND_DOWN);
+ realUsdtAmount = realUsdtAmount.subtract(realUsdtAmountFee);
//减少闪对钱包的币的数量
this.updateWalletCoinWithLock(amount, member.getId(), 2);
//增加流水
@@ -623,6 +633,14 @@
DappMemberEntity member = LoginUserUtil.getAppUser();
DappMemberEntity dappMemberEntity = dappMemberDao.selectById(member.getId());
+ DataDictionaryCustom systemStateDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
+ PoolEnum.SYSTEM.getType(),
+ PoolEnum.SYSTEM.getCode()
+ );
+ String value = systemStateDic.getValue();
+ if("STOP".equals(value)){
+ throw new FebsException("Not yet open");
+ }
String upgrade = redisUtils.getString("APP_UPGRADE");
if ("upgrade".equals(upgrade)) {
throw new FebsException("功能升级中");
@@ -686,9 +704,27 @@
if(amountIn.compareTo(new BigDecimal(100)) != 0){
throw new FebsException("Limit per address 100 USDT");
}
- BigDecimal amountInLast = dappChargeUsdtMapper.selectByMaxAmountMemberId(member.getId());
- if(BigDecimal.ZERO.compareTo(amountInLast) < 0){
- throw new FebsException("Limit per address 100 USDT");
+
+// BigDecimal amountInLast = dappChargeUsdtMapper.selectByMaxAmountMemberId(member.getId());
+ /**
+ * 限制用户买入总额,
+ * 目前每人限一单,总金额限制100U
+ */
+ BigDecimal amountInLast = dappChargeUsdtMapper.selectBySumAmountMemberId(member.getId());
+ DataDictionaryCustom systemAddressDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
+ PoolEnum.SYSTEM_ADDRESS.getType(),
+ PoolEnum.SYSTEM_ADDRESS.getCode()
+ );
+ if(StrUtil.isNotEmpty(systemAddressDic.getValue())){
+ if(!systemAddressDic.getValue().contains(dappMemberEntity.getAddress())){
+ if(BigDecimal.ZERO.compareTo(amountInLast) < 0){
+ throw new FebsException("Limit per address 100 USDT");
+ }
+ }
+ }else{
+ if(BigDecimal.ZERO.compareTo(amountInLast) < 0){
+ throw new FebsException("Limit per address 100 USDT");
+ }
}
/**
* 验证账户是否有入金金额的10%的AUSD
@@ -1105,7 +1141,12 @@
dappFundFlowDao.insert(aCoinCntFlow);
DappUsdtPerkEntity parentEntity = dappUsdtPerkEntityMapper.selectByMemberId(memberParent.getId());
- BigDecimal availableAmountParent = parentEntity.getAusdAmount();
+ if(ObjectUtil.isEmpty(parentEntity)){
+ parentEntity = new DappUsdtPerkEntity();
+ parentEntity.setMemberId(memberParent.getId());
+ dappUsdtPerkEntityMapper.insert(parentEntity);
+ }
+ BigDecimal availableAmountParent = ObjectUtil.isEmpty(parentEntity.getAusdAmount()) ? BigDecimal.ZERO : parentEntity.getAusdAmount();
parentEntity.setAusdAmount(availableAmountParent.add(coinCnt));
dappUsdtPerkEntityMapper.updateById(parentEntity);
//插入资产闪对的流水
--
Gitblit v1.9.1