KKSU
2024-05-11 18129401746545895c29adb36241f2543be99205
src/main/java/cc/mrbird/febs/dapp/service/impl/AdminBannerServiceImpl.java
@@ -6,7 +6,6 @@
import cc.mrbird.febs.common.enumerates.FlowTypeEnum;
import cc.mrbird.febs.common.exception.FebsException;
import cc.mrbird.febs.common.utils.RedisUtils;
import cc.mrbird.febs.dapp.dto.TransferDto;
import cc.mrbird.febs.dapp.dto.ZhiyaAddDto;
import cc.mrbird.febs.dapp.entity.*;
import cc.mrbird.febs.dapp.mapper.*;
@@ -196,23 +195,48 @@
        //用户质押代币数量
        Long memberId = fundFlow.getMemberId();
        //新增一条用户质押记录
        DappAchieve dappAchieve = new DappAchieve();
        dappAchieve.setMemberId(memberId);
        DappHdRecord dappHdRecord = dappHdRecordMapper.selectNewRecord();
        dappAchieve.setPrice(dappHdRecord.getPrice());
        dappAchieve.setAmount(amount);
        BigDecimal achieveReleasePercent = new BigDecimal("0.01").multiply(
                new BigDecimal(redisUtils.getString(DataDicEnum.GFA_ACHIEVE_RELEASE.getValue())).setScale(2,BigDecimal.ROUND_DOWN)
        );
        DappHdRecord dappHdRecord = dappHdRecordMapper.selectNewRecord();
        dappAchieve.setPrice(dappHdRecord.getPrice());
        dappAchieve.setAmountDay(achieveReleasePercent.multiply(amount).setScale(2,BigDecimal.ROUND_DOWN));
        BigDecimal achieveOut = new BigDecimal(redisUtils.getString(DataDicEnum.GFA_ACHIEVE_OUT.getValue())).setScale(2,BigDecimal.ROUND_DOWN);
        dappAchieve.setAmountMax(achieveOut.multiply(amount).setScale(2,BigDecimal.ROUND_DOWN));
        dappAchieve.setState(DappAchieve.STATUS_ING);
        dappAchieve.setAmountDone(BigDecimal.ZERO);
        /**
         * 计算金本位和币本位
         *  金本位:数量*价格*70*产矿百分比
         *  币本位:数量*30*产矿百分比
         */
        BigDecimal price = dappHdRecord.getPrice();
        BigDecimal goldAmount = amount.multiply(price).multiply(new BigDecimal("0.7")).multiply(achieveOut).setScale(8, BigDecimal.ROUND_DOWN);
        BigDecimal coinAmount = amount.multiply(new BigDecimal("0.3")).multiply(achieveOut).setScale(8, BigDecimal.ROUND_DOWN);
        dappAchieve.setGoldAmount(goldAmount);
        dappAchieve.setCoinAmount(coinAmount);
        dappAchieveMapper.insert(dappAchieve);
        asyncCjService.insertTeamPerk(fundFlow.getId(), dappAchieve.getId());
        asyncCjService.calculateAchieve(dappAchieve);
        //新增一条用户质押记录
//        DappAchieve dappAchieve = new DappAchieve();
//        dappAchieve.setMemberId(memberId);
//        dappAchieve.setAmount(amount);
//        BigDecimal achieveReleasePercent = new BigDecimal("0.01").multiply(
//                new BigDecimal(redisUtils.getString(DataDicEnum.GFA_ACHIEVE_RELEASE.getValue())).setScale(2,BigDecimal.ROUND_DOWN)
//        );
//        DappHdRecord dappHdRecord = dappHdRecordMapper.selectNewRecord();
//        dappAchieve.setPrice(dappHdRecord.getPrice());
//        dappAchieve.setAmountDay(achieveReleasePercent.multiply(amount).setScale(2,BigDecimal.ROUND_DOWN));
//        BigDecimal achieveOut = new BigDecimal(redisUtils.getString(DataDicEnum.GFA_ACHIEVE_OUT.getValue())).setScale(2,BigDecimal.ROUND_DOWN);
//        dappAchieve.setAmountMax(achieveOut.multiply(amount).setScale(2,BigDecimal.ROUND_DOWN));
//        dappAchieve.setState(DappAchieve.STATUS_ING);
//        dappAchieve.setAmountDone(BigDecimal.ZERO);
//        dappAchieveMapper.insert(dappAchieve);
//        asyncCjService.insertTeamPerk(fundFlow.getId(), dappAchieve.getId());
//        asyncCjService.calculateAchieve(dappAchieve);
        return new FebsResponse().success();
    }
}