KKSU
2024-07-07 d5ffb71a7359e7ce81c43930c3503c4c03e5309c
逻辑
2 files modified
64 ■■■■■ changed files
src/main/java/cc/mrbird/febs/dapp/service/impl/DappSystemServiceImpl.java 52 ●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java 12 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/dapp/service/impl/DappSystemServiceImpl.java
@@ -840,34 +840,34 @@
        }
        //减少用户的总额度
        BigDecimal usdtBalance = dappMemberEntity.getUsdtBalance();
        if(BigDecimal.ZERO.compareTo(usdtBalance) >= 0){
            return;
        }
        if(daoNodeAmount.compareTo(usdtBalance) >= 0){
            daoNodeAmount = usdtBalance;
            usdtBalance = BigDecimal.ZERO;
        }else{
            usdtBalance = usdtBalance.subtract(daoNodeAmount);
        }
//        BigDecimal usdtBalance = dappMemberEntity.getUsdtBalance();
//        if(BigDecimal.ZERO.compareTo(usdtBalance) >= 0){
//            return;
//        }
//        if(daoNodeAmount.compareTo(usdtBalance) >= 0){
//            daoNodeAmount = usdtBalance;
//            usdtBalance = BigDecimal.ZERO;
//        }else{
//            usdtBalance = usdtBalance.subtract(daoNodeAmount);
//        }
        //总额度为0,用户变成未激活
        if(BigDecimal.ZERO.compareTo(usdtBalance) >= 0){
            dappMemberEntity.setActiveStatus(2);
            //更新用户所有的业绩为已失效
            QueryWrapper<DappStorage> objectQueryWrapper = new QueryWrapper<>();
            objectQueryWrapper.eq("member_id",memberId);
            objectQueryWrapper.eq("state",1);
            List<DappStorage> dappStorages = dappStorageMapper.selectList(objectQueryWrapper);
            if(CollUtil.isNotEmpty(dappStorages)){
                for(DappStorage dappStorage : dappStorages){
                    dappStorage.setState(2);
                    dappStorageMapper.updateById(dappStorage);
                }
            }
        }
        dappMemberEntity.setUsdtBalance(usdtBalance);
        dappMemberDao.updateById(dappMemberEntity);
//        if(BigDecimal.ZERO.compareTo(usdtBalance) >= 0){
//            dappMemberEntity.setActiveStatus(2);
//            //更新用户所有的业绩为已失效
//            QueryWrapper<DappStorage> objectQueryWrapper = new QueryWrapper<>();
//            objectQueryWrapper.eq("member_id",memberId);
//            objectQueryWrapper.eq("state",1);
//            List<DappStorage> dappStorages = dappStorageMapper.selectList(objectQueryWrapper);
//            if(CollUtil.isNotEmpty(dappStorages)){
//                for(DappStorage dappStorage : dappStorages){
//                    dappStorage.setState(2);
//                    dappStorageMapper.updateById(dappStorage);
//                }
//            }
//        }
//        dappMemberEntity.setUsdtBalance(usdtBalance);
//        dappMemberDao.updateById(dappMemberEntity);
        dappWalletService.updateWalletCoinWithLock(daoNodeAmount, memberId, 1);
        DappFundFlowEntity nodeFlow = new DappFundFlowEntity(
src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java
@@ -240,6 +240,15 @@
    public void withdraw(WithdrawDto withdrawDto) {
        DappMemberEntity member = LoginUserUtil.getAppUser();
        DappMemberEntity memberEntity = dappMemberDao.selectById(member.getId());
        BigDecimal usdtBalance = memberEntity.getUsdtBalance();
        if(BigDecimal.ZERO.compareTo(usdtBalance) >= 0){
            throw new FebsException("额度不足");
        }
        if(withdrawDto.getAmount().compareTo(usdtBalance) > 0){
            throw new FebsException("额度不足");
        }
        List<MemberCoinWithdrawEntity> memberCoinWithdrawEntities = memberCoinWithdrawDao.selectListByDate(member.getId(),new Date());
        if(CollUtil.isNotEmpty(memberCoinWithdrawEntities)){
            throw new FebsException("今日已提现");
@@ -259,6 +268,9 @@
        updateWalletCoinWithLock(withdrawDto.getAmount(), member.getId(), 2);
        memberEntity.setUsdtBalance(usdtBalance.subtract(withdrawDto.getAmount()).setScale(2,BigDecimal.ROUND_DOWN));
        dappMemberDao.updateById(memberEntity);
        DappFundFlowEntity fundFlow = new DappFundFlowEntity(
                member.getId(),
                withdrawDto.getAmount().negate(),