From 12e933d42d1a3ba5d2a69f7dc923da2d312457a0 Mon Sep 17 00:00:00 2001 From: KKSU <15274802129@163.com> Date: Sat, 06 Jul 2024 10:39:00 +0800 Subject: [PATCH] 逻辑 --- src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java | 24 ++++++++++++++++++++++++ 1 files changed, 24 insertions(+), 0 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 47107c2..e87ac39 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 @@ -58,6 +58,7 @@ private final ChainProducer chainProducer; private final DappSystemDao dappSystemDao; private final DbMemberNodeMapper dbMemberNodeMapper; + private final DappStorageMapper dappStorageMapper; @Override public WalletInfoVo walletInfo() { @@ -79,6 +80,22 @@ ); BigDecimal withdrawPercent = new BigDecimal(withdrawPercentDic.getValue()); walletInfo.setWithdrawPercent(withdrawPercent); + + QueryWrapper<DappStorage> objectQueryWrapper = new QueryWrapper<>(); + objectQueryWrapper.eq("member_id",member.getId()); + objectQueryWrapper.eq("state",1); + List<DappStorage> dappStorages = dappStorageMapper.selectList(objectQueryWrapper); + BigDecimal storageAva = BigDecimal.ZERO; + if(CollUtil.isNotEmpty(dappStorages)){ + storageAva = dappStorages.stream().map(DappStorage::getAmount).reduce(BigDecimal.ZERO, BigDecimal::add); + } + walletInfo.setStorageAva(storageAva); + + BigDecimal staticPerk = dappFundFlowDao.selectSumAmountByMemberIdAndType(member.getId(), MoneyFlowEnum.STATIC_PERK.getValue()); + walletInfo.setStaticPerk(staticPerk); + + BigDecimal runPerk = dappFundFlowDao.selectSumRunPerkByMemberId(member.getId()); + walletInfo.setRunPerk(runPerk); return walletInfo; } @@ -380,6 +397,13 @@ throw new FebsException("存储数量必须是"+bigDecimal+"的整数倍"); } + DappStorage dappStorage = dappStorageMapper.selectAmountByAmountDesc(0, 1); + if(ObjectUtil.isNotEmpty(dappStorage)){ + if(amount.compareTo(dappStorage.getAmount()) < 0){ + throw new FebsException("存储数量必须大于:"+dappStorage.getAmount()); + } + } + if (ObjectUtil.isEmpty(transferDto.getId())) { DappFundFlowEntity fundFlow = new DappFundFlowEntity( -- Gitblit v1.9.1