KKSU
2024-06-23 3fbe140485d5fe11c6aa7368b3eace17d14c97ea
src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java
@@ -28,6 +28,7 @@
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
@@ -68,7 +69,7 @@
        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 = dappMemberDao.selectChildMemberDirectOrNot(member.getInviteId(), 1, 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() : "-");
@@ -244,7 +245,9 @@
        }
        BigDecimal feeUsdt = withdrawCnt.multiply(feePercent).setScale(2, BigDecimal.ROUND_DOWN);
        return feeUsdt.divide(priceDto.getAmount(), 2, BigDecimal.ROUND_DOWN);
        return feeUsdt;
//        return feeUsdt.divide(priceDto.getAmount(), 2, BigDecimal.ROUND_DOWN);
    }
    @Override
@@ -257,19 +260,19 @@
            throw new FebsException("Balance Not Enough");
        }
        DappWalletMineEntity walletMine = dappWalletMineDao.selectByMemberId(member.getId());
        if (walletMine.getAvailableAmount().compareTo(withdrawDto.getFee()) < 0) {
            throw new FebsException("Fee Not Enough");
        }
//        DappWalletMineEntity walletMine = dappWalletMineDao.selectByMemberId(member.getId());
//        if (walletMine.getAvailableAmount().compareTo(withdrawDto.getFee()) < 0) {
//            throw new FebsException("Fee Not Enough");
//        }
        updateWalletCoinWithLock(withdrawDto.getAmount(), member.getId(), 2);
        updateWalletMineWithLock(withdrawDto.getFee(), member.getId(), 2);
//        updateWalletMineWithLock(withdrawDto.getFee(), member.getId(), 2);
        DappFundFlowEntity feeFlow = new DappFundFlowEntity(member.getId(), withdrawDto.getFee().negate(), 20, 2, null, null);
        dappFundFlowDao.insert(feeFlow);
        DappFundFlowEntity fundFlow = new DappFundFlowEntity(member.getId(), withdrawDto.getAmount().negate(), 21, 2, withdrawDto.getFee(), null);
        DappFundFlowEntity fundFlow = new DappFundFlowEntity(member.getId(), withdrawDto.getAmount().negate(), 21, 1, withdrawDto.getFee(), null);
        dappFundFlowDao.insert(fundFlow);
        MemberCoinWithdrawEntity memberCoinWithdraw = new MemberCoinWithdrawEntity();
@@ -491,6 +494,18 @@
        }
        if (ObjectUtil.isEmpty(buyStarDto.getId())) {//第一次
            List<DbMemberNode> dbMemberNodesDone = dbMemberNodeMapper.selectListByDate(new Date());
            if(CollUtil.isNotEmpty(dbMemberNodesDone)){
                DataDictionaryCustom buyNodeNumDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
                        DataDictionaryEnum.BUY_NODE_NUM.getType(),
                        DataDictionaryEnum.BUY_NODE_NUM.getCode()
                );
                int buyNodeNum = Integer.parseInt(buyNodeNumDic.getValue());
                if(buyNodeNum < dbMemberNodesDone.size()){
                    throw new FebsException("今日已满,请明日再来");
                }
            };
            DappFundFlowEntity fundFlow = new DappFundFlowEntity(
                    member.getId(),
                    buyStarDto.getAmount().negate(),
@@ -588,7 +603,10 @@
    @Override
    public FebsResponse agreeWithdraw(Long id) {
        MemberCoinWithdrawEntity memberCoinWithdrawEntity = memberCoinWithdrawDao.selectById(id);
        QueryWrapper<MemberCoinWithdrawEntity> objectQueryWrapper = new QueryWrapper<>();
        objectQueryWrapper.eq("flow_id",id);
        MemberCoinWithdrawEntity memberCoinWithdrawEntity = memberCoinWithdrawDao.selectOne(objectQueryWrapper);
//        MemberCoinWithdrawEntity memberCoinWithdrawEntity = memberCoinWithdrawDao.selectById(id);
        if(ObjectUtil.isEmpty(memberCoinWithdrawEntity)){
            throw new FebsException("刷新页面重试");
        }
@@ -608,7 +626,10 @@
    @Override
    public FebsResponse disagreeWithdraw(Long id) {
        MemberCoinWithdrawEntity memberCoinWithdrawEntity = memberCoinWithdrawDao.selectById(id);
        QueryWrapper<MemberCoinWithdrawEntity> objectQueryWrapper = new QueryWrapper<>();
        objectQueryWrapper.eq("flow_id",id);
        MemberCoinWithdrawEntity memberCoinWithdrawEntity = memberCoinWithdrawDao.selectOne(objectQueryWrapper);
        if(ObjectUtil.isEmpty(memberCoinWithdrawEntity)){
            throw new FebsException("刷新页面重试");
        }
@@ -628,9 +649,9 @@
        dappFundFlowDao.updateById(dappFundFlowEntity);
        this.updateWalletCoinWithLock(memberCoinWithdrawEntity.getAmount(), memberCoinWithdrawEntity.getMemberId(), 1);
        this.updateWalletMineWithLock(memberCoinWithdrawEntity.getFeeAmount(), memberCoinWithdrawEntity.getMemberId(), 1);
//        this.updateWalletMineWithLock(memberCoinWithdrawEntity.getFeeAmount(), memberCoinWithdrawEntity.getMemberId(), 1);
        DappFundFlowEntity feeFlow = new DappFundFlowEntity(memberCoinWithdrawEntity.getMemberId(), memberCoinWithdrawEntity.getFeeAmount(), 22, 2, null, null);
        DappFundFlowEntity feeFlow = new DappFundFlowEntity(memberCoinWithdrawEntity.getMemberId(), memberCoinWithdrawEntity.getAmount(), 22, 2, null, null);
        dappFundFlowDao.insert(feeFlow);
        return new FebsResponse().success();
    }