KKSU
2024-05-07 8ce06347909eaa44482b86a7ec1652aa16d793e1
src/main/java/cc/mrbird/febs/dapp/service/impl/BscCoinContractEvent.java
@@ -192,13 +192,13 @@
        if(ObjectUtil.isEmpty(dappMemberEntity)){
            return;
        }
        int decimals = ChainService.getInstance(ChainEnum.BSC_TFC.name()).decimals();
        int decimals = ChainService.getInstance(ChainEnum.BSC_GFA.name()).decimals();
        BigDecimal amount = new BigDecimal(e.amount.toString()).divide(BigDecimal.TEN.pow(decimals), decimals, RoundingMode.HALF_DOWN);
        BigDecimal price = new BigDecimal(e.price.toString()).divide(BigDecimal.TEN.pow(decimals), decimals, RoundingMode.HALF_DOWN);
        BigDecimal sameCoin = new BigDecimal(e.sameCoin.toString()).divide(BigDecimal.TEN.pow(decimals), decimals, RoundingMode.HALF_DOWN);
        BigDecimal finxMineCoin = new BigDecimal(e.finxMineCoin.toString()).divide(BigDecimal.TEN.pow(decimals), decimals, RoundingMode.HALF_DOWN);
        BigDecimal usdtTarget = new BigDecimal(e.usdtTarget.toString()).divide(BigDecimal.TEN.pow(decimals), decimals, RoundingMode.HALF_DOWN);
        BigDecimal coinTarget = new BigDecimal(e.coinTarget.toString()).divide(BigDecimal.TEN.pow(decimals), decimals, RoundingMode.HALF_DOWN);
        BigDecimal usdtCoin = new BigDecimal(e.usdtCoin.toString()).divide(BigDecimal.TEN.pow(decimals), decimals, RoundingMode.HALF_DOWN);
        BigInteger lastMineTime = e.lastMineTime;
        BigInteger thisMineTime = e.thisMineTime;
        Long memberId = dappMemberEntity.getId();
        DappMemberFund dappMemberFund = new DappMemberFund();
@@ -206,21 +206,29 @@
        dappMemberFund.setAddress(address);
        dappMemberFund.setAmount(amount);
        dappMemberFund.setPrice(price);
        dappMemberFund.setSameCoin(sameCoin);
        dappMemberFund.setFinxMineCoin(finxMineCoin);
        dappMemberFund.setUsdtTarget(usdtTarget);
        dappMemberFund.setCoinTarget(coinTarget);
        dappMemberFund.setUsdtCoin(usdtCoin);
        dappMemberFund.setLastMineTime(lastMineTime.toString());
        dappMemberFund.setThisMineTime(thisMineTime.toString());
        dappMemberFundMapper.insert(dappMemberFund);
        BigDecimal add = sameCoin.divide(price, 8, BigDecimal.ROUND_DOWN).add(finxMineCoin);
        DappFundFlowEntity fundFlowTuiJian = new DappFundFlowEntity(
        DappFundFlowEntity fundFlowTuiJian1 = new DappFundFlowEntity(
                memberId,
                add,
                usdtTarget,
                FlowTypeEnum.ZHIYA_CHA_CHU.getValue(),
                DappFundFlowEntity.WITHDRAW_STATUS_AGREE,
                StrUtil.format("金本位{},币本位{},价格{}。",sameCoin, finxMineCoin,price));
        dappFundFlowDao.insert(fundFlowTuiJian);
                StrUtil.format("金本位{},价格{}。",usdtTarget,price));
        dappFundFlowDao.insert(fundFlowTuiJian1);
        DappFundFlowEntity fundFlowTuiJian2 = new DappFundFlowEntity(
                memberId,
                coinTarget,
                FlowTypeEnum.ZHIYA_CHA_CHU.getValue(),
                DappFundFlowEntity.WITHDRAW_STATUS_AGREE,
                StrUtil.format("币本位{},价格{}。",coinTarget,price));
        dappFundFlowDao.insert(fundFlowTuiJian2);
        log.info("本地交易:{},amount-{},price-{}", e.adr,amount,price);
    }
}