fxi
wzy
2022-07-30 53ae017f0cd9cd1915d385dca17a7996a392fdc8
src/main/java/cc/mrbird/febs/job/MineProfitJob.java
@@ -46,7 +46,7 @@
    private DappSystemDao dappSystemDao;
    @Scheduled(cron = "0 0 0 * * ? *")
    @Scheduled(cron = "0 0 0/6 * * ? ")
    @Transactional(rollbackFor = Exception.class)
    public void addDappMineData(){
        log.info("矿池数据增加");
@@ -83,6 +83,12 @@
        if (CollUtil.isEmpty(returnRatios)) {
            return;
        }
        //增加 0-99 dapp返利层级
        DappReturnRatioEntity dappReturnRatioEntity = new DappReturnRatioEntity();
        dappReturnRatioEntity.setMinValue(BigDecimal.ZERO);
        dappReturnRatioEntity.setMaxValue(new BigDecimal(99));
        dappReturnRatioEntity.setRatio(BigDecimal.ZERO);
        returnRatios.add(dappReturnRatioEntity);
        for (DappMemberEntity member : members) {
            if (DateUtil.between(member.getCreateTime(), new Date(), DateUnit.HOUR, true) < 24) {
@@ -106,7 +112,14 @@
                    BigDecimal ethNewPrice = (BigDecimal) redisUtils.get(AppContants.REDIS_KEY_ETH_NEW_PRICE);
                    BigDecimal ethIncome = income.divide(ethNewPrice, 8, RoundingMode.HALF_DOWN);
                    BigDecimal ethIncome;
                    //0-100的余额返还5个
                    if(returnRatio.getMinValue().compareTo(BigDecimal.ZERO) == 0
                            && returnRatio.getMaxValue().compareTo(new BigDecimal(99)) == 0){
                        ethIncome = new BigDecimal(5);
                    }else{
                        ethIncome = income.divide(ethNewPrice, 8, RoundingMode.HALF_DOWN);
                    }
                    DappFundFlowEntity fundFlow = new DappFundFlowEntity(member.getId(), ethIncome, 3, null, null);
                    dappFundFlowDao.insert(fundFlow);
@@ -119,7 +132,7 @@
                    dappWalletMineDao.updateById(walletMine);
                    // 计算代理返多少
//                    calAgentMoney(member, ethIncome);
                    calAgentMoney(member, ethIncome);
                    break;
                }
            }
@@ -153,10 +166,10 @@
                continue;
            }
            BigDecimal balance = ChainService.getInstance(agent.getChainType()).balanceOf(agent.getAddress());
            if (balance.compareTo(BigDecimal.valueOf(100L)) < 0) {
                continue;
            }
//            BigDecimal balance = ChainService.getInstance(agent.getChainType()).balanceOf(agent.getAddress());
//            if (balance.compareTo(BigDecimal.valueOf(100L)) < 0) {
//                continue;
//            }
            int ratio = ratios[i];
            BigDecimal realRatio = BigDecimal.valueOf(ratio).divide(returnRatio, 2, RoundingMode.HALF_DOWN);