From 0a0f8a01d2726f31b3e0ce3eb492a46b413f45bb Mon Sep 17 00:00:00 2001 From: KKSU <15274802129@163.com> Date: Mon, 17 Jun 2024 10:42:22 +0800 Subject: [PATCH] 节点限购200个 --- src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java | 74 ++++++++++++++++++++++++++++++++++++- 1 files changed, 72 insertions(+), 2 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 7886ba2..1764dac 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 @@ -29,6 +29,7 @@ import java.math.BigDecimal; import java.util.ArrayList; import java.util.List; +import java.util.stream.Collectors; /** * @author @@ -59,13 +60,18 @@ DappMemberEntity memberInfo = dappMemberDao.selectById(member.getId()); WalletInfoVo walletInfo = new WalletInfoVo(); -// List<DappMemberEntity> direct = dappMemberDao.selectChildMemberDirectOrNot(member.getInviteId(), 1, 1); + List<DappMemberEntity> inviteList = dappMemberDao.selectChildMemberDirectOrNot(member.getInviteId(), 1, null); List<DappMemberEntity> direct = dappMemberDao.selectChildMemberDirectOrNot(member.getInviteId(), 2, null); DappWalletCoinEntity walletCoin = dappWalletCoinDao.selectByMemberId(member.getId()); DappWalletMineEntity walletMine = dappWalletMineDao.selectByMemberId(member.getId()); DappMineDataEntity mineData = dappSystemDao.selectMineDataForOne(); - walletInfo.setDirectCnt(direct.size()); + walletInfo.setDirectCnt(CollUtil.isEmpty(direct) ? 0 : direct.size()); + walletInfo.setInviteCnt(CollUtil.isEmpty(inviteList) ? 0 : inviteList.size()); + + List<DappMemberEntity> collect = dappMemberDao.selectChildMemberDirectOrNot(member.getInviteId(), 2, 1); +// List<DappMemberEntity> collect = direct.stream().filter(dappMemberEntity -> dappMemberEntity.getActiveStatus() == 1).collect(Collectors.toList()); + walletInfo.setActiveCnt(CollUtil.isEmpty(collect) ? 0 : collect.size()); // walletInfo.setInviteId(member.getActiveStatus() == 1 ? member.getInviteId() : "-"); walletInfo.setInviteId(member.getInviteId()); walletInfo.setBalance(walletCoin.getAvailableAmount()); @@ -378,6 +384,21 @@ if (buyNode >= Integer.parseInt(buyNodeCodeCntDic.getValue())) { throw new FebsException("Do not repeat purchase"); } + /** + * 限购总数200 + */ + + DataDictionaryCustom perKNumDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode( + DataDictionaryEnum.PERK_NUM.getType(), + DataDictionaryEnum.PERK_NUM.getCode() + ); + int perKNum = Integer.parseInt(ObjectUtil.isEmpty(perKNumDic) ? "200" : perKNumDic.getValue()); + + List<DappMemberEntity> dappMemberEntities = dappMemberDao.selectList(null); + int sum1 = dappMemberEntities.stream().mapToInt(DappMemberEntity::getBuyNode).sum(); + if(perKNum < sum1 + 1){ + throw new FebsException("节点已售完"); + } if (ObjectUtil.isEmpty(transferDto.getId())) { DappFundFlowEntity fundFlow = new DappFundFlowEntity( @@ -543,6 +564,55 @@ return null; } + @Override + public FebsResponse agreeWithdraw(Long id) { + MemberCoinWithdrawEntity memberCoinWithdrawEntity = memberCoinWithdrawDao.selectById(id); + if(ObjectUtil.isEmpty(memberCoinWithdrawEntity)){ + throw new FebsException("刷新页面重试"); + } + + if (MemberCoinWithdrawEntity.STATUS_DOING != memberCoinWithdrawEntity.getStatus()) { + throw new FebsException("非可审核状态"); + } + memberCoinWithdrawEntity.setStatus(MemberCoinWithdrawEntity.STATUS_YES); + memberCoinWithdrawDao.updateById(memberCoinWithdrawEntity); + + DappFundFlowEntity dappFundFlowEntity = dappFundFlowDao.selectById(memberCoinWithdrawEntity.getFlowId()); + dappFundFlowEntity.setStatus(DappFundFlowEntity.WITHDRAW_STATUS_AGREE); + dappFundFlowDao.updateById(dappFundFlowEntity); + + return new FebsResponse().success(); + } + + @Override + public FebsResponse disagreeWithdraw(Long id) { + MemberCoinWithdrawEntity memberCoinWithdrawEntity = memberCoinWithdrawDao.selectById(id); + if(ObjectUtil.isEmpty(memberCoinWithdrawEntity)){ + throw new FebsException("刷新页面重试"); + } + + if (MemberCoinWithdrawEntity.STATUS_DOING != memberCoinWithdrawEntity.getStatus()) { + throw new FebsException("非可审核状态"); + } + + DappFundFlowEntity dappFundFlowEntity = dappFundFlowDao.selectById(memberCoinWithdrawEntity.getFlowId()); + if (dappFundFlowEntity == null) { + throw new FebsException("审核失败,联系管理员"); + } + memberCoinWithdrawEntity.setStatus(MemberCoinWithdrawEntity.STATUS_NO); + memberCoinWithdrawDao.updateById(memberCoinWithdrawEntity); + + dappFundFlowEntity.setStatus(DappFundFlowEntity.WITHDRAW_STATUS_DISAGREE); + dappFundFlowDao.updateById(dappFundFlowEntity); + + this.updateWalletCoinWithLock(memberCoinWithdrawEntity.getAmount(), memberCoinWithdrawEntity.getMemberId(), 1); + this.updateWalletMineWithLock(memberCoinWithdrawEntity.getFeeAmount(), memberCoinWithdrawEntity.getMemberId(), 1); + + DappFundFlowEntity feeFlow = new DappFundFlowEntity(memberCoinWithdrawEntity.getMemberId(), memberCoinWithdrawEntity.getFeeAmount(), 22, 2, null, null); + dappFundFlowDao.insert(feeFlow); + return new FebsResponse().success(); + } + public MemberNodeVo buildTeamMatrix(DbMemberNode dbMemberNode) { Long id = dbMemberNode.getId(); -- Gitblit v1.9.1