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 | 55 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 55 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 92ffb50..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 @@ -15,6 +15,7 @@ import cc.mrbird.febs.dapp.enumerate.NodeType; import cc.mrbird.febs.dapp.mapper.*; import cc.mrbird.febs.dapp.service.DappWalletService; +import cc.mrbird.febs.dapp.vo.ApiIndexInfoVo; import cc.mrbird.febs.dapp.vo.MemberNodeVo; import cc.mrbird.febs.dapp.vo.NodeTypeVo; import cc.mrbird.febs.dapp.vo.WalletInfoVo; @@ -57,6 +58,7 @@ private final ChainProducer chainProducer; private final DappSystemDao dappSystemDao; private final DbMemberNodeMapper dbMemberNodeMapper; + private final DappStorageMapper dappStorageMapper; @Override public WalletInfoVo walletInfo() { @@ -78,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; } @@ -379,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( @@ -611,6 +636,36 @@ return new FebsResponse().success(); } + @Override + public ApiIndexInfoVo indexInfo() { + ApiIndexInfoVo apiIndexInfoVo = new ApiIndexInfoVo(); + apiIndexInfoVo.setTuanduiChi(dataDictionaryCustomMapper.selectDicDataByTypeAndCode( + DataDictionaryEnum.TUAN_DUI_CHI.getType(), + DataDictionaryEnum.TUAN_DUI_CHI.getCode() + ).getValue()); + apiIndexInfoVo.setJilichi(dataDictionaryCustomMapper.selectDicDataByTypeAndCode( + DataDictionaryEnum.JILI_CHI.getType(), + DataDictionaryEnum.JILI_CHI.getCode() + ).getValue()); + apiIndexInfoVo.setBuchangChi(dataDictionaryCustomMapper.selectDicDataByTypeAndCode( + DataDictionaryEnum.BUCAHNG_CHI.getType(), + DataDictionaryEnum.BUCAHNG_CHI.getCode() + ).getValue()); + apiIndexInfoVo.setJiedianChi(dataDictionaryCustomMapper.selectDicDataByTypeAndCode( + DataDictionaryEnum.JIE_DIAN_CHI.getType(), + DataDictionaryEnum.JIE_DIAN_CHI.getCode() + ).getValue()); + apiIndexInfoVo.setJijinghuiChi(dataDictionaryCustomMapper.selectDicDataByTypeAndCode( + DataDictionaryEnum.JI_JING_HUI_CHI.getType(), + DataDictionaryEnum.JI_JING_HUI_CHI.getCode() + ).getValue()); + apiIndexInfoVo.setJishuChi(dataDictionaryCustomMapper.selectDicDataByTypeAndCode( + DataDictionaryEnum.JI_SHU_CHI.getType(), + DataDictionaryEnum.JI_SHU_CHI.getCode() + ).getValue()); + return apiIndexInfoVo; + } + public MemberNodeVo buildTeamMatrix(DbMemberNode dbMemberNode) { Long id = dbMemberNode.getId(); -- Gitblit v1.9.1