fix
Helius
2022-08-30 d02600e853ca13026bbc2139d716be1cbe234bb2
src/main/java/cc/mrbird/febs/dapp/service/impl/DappSystemServiceImpl.java
@@ -399,7 +399,6 @@
        if (CollUtil.isEmpty(allMembers)) {
            return;
        }
        DataDictionaryCustom miniHoldCoin = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(AppContants.DIC_TYPE_SYSTEM_SETTING, AppContants.DIC_VALUE_MINI_HOLD_COIN_LIMIT);
        String batchNo = RandomUtil.randomString(32);
        ContractChainService instance = ChainService.getInstance(ChainEnum.BSC_TFC.name());
@@ -409,7 +408,9 @@
            }
            BigDecimal balance = instance.balanceOf(member.getAddress());
            if (balance.compareTo(new BigDecimal(miniHoldCoin.getValue())) < 1) {
            // 判断用户是否满足持币价值达80U
            if (!hasProfit(member.getAddress())) {
                continue;
            }
@@ -640,14 +641,7 @@
            lastDayPrice = new BigDecimal(dailyPrice);
        }
        ContractChainService tfcInstance = ChainService.getInstance(ChainEnum.BSC_TFC_SOURCE.name());
        // 源池币种数量
        BigDecimal tfcBalance = tfcInstance.balanceOf(ChainEnum.BSC_TFC_SOURCE.getAddress());
        // 源池USDT数量
        BigDecimal usdtBalance = ChainService.getInstance(ChainEnum.BSC_USDT_SOURCE.name()).balanceOf(ChainEnum.BSC_USDT_SOURCE.getAddress());
        BigDecimal todayPrice = tfcBalance.divide(usdtBalance, tfcInstance.decimals(), RoundingMode.HALF_UP);
        BigDecimal todayPrice = newestPrice();
        DappSymbolDailyPriceEntity dailyPriceEntity = new DappSymbolDailyPriceEntity();
        dailyPriceEntity.setPrice(todayPrice);
@@ -732,8 +726,14 @@
    @Override
    public BigDecimal newestPrice() {
        if (systemHasStart()) {
            String dailyPrice = redisUtils.getString(AppContants.REDIS_KEY_SYMBOL_DAILY_PRICE);
            return StrUtil.isNotBlank(dailyPrice) ? new BigDecimal(dailyPrice) : BigDecimal.ZERO;
            ContractChainService tfcInstance = ChainService.getInstance(ChainEnum.BSC_TFC_SOURCE.name());
            // 源池币种数量
            BigDecimal tfcBalance = tfcInstance.balanceOf(ChainEnum.BSC_TFC_SOURCE.getAddress());
            // 源池USDT数量
            BigDecimal usdtBalance = ChainService.getInstance(ChainEnum.BSC_USDT_SOURCE.name()).balanceOf(ChainEnum.BSC_USDT_SOURCE.getAddress());
            return tfcBalance.divide(usdtBalance, tfcInstance.decimals(), RoundingMode.HALF_UP);
        } else {
            return new BigDecimal("0.05");
        }