xiaoyong931011
2023-06-12 46def5897de95d01c1606a49da4292f5f1e53760
src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java
@@ -13,6 +13,7 @@
import cc.mrbird.febs.dapp.entity.*;
import cc.mrbird.febs.dapp.enumerate.DataDictionaryEnum;
import cc.mrbird.febs.dapp.enumerate.FundFlowEnum;
import cc.mrbird.febs.dapp.enumerate.MemberLevelEnum;
import cc.mrbird.febs.dapp.enumerate.PoolEnum;
import cc.mrbird.febs.dapp.mapper.*;
import cc.mrbird.febs.dapp.service.DappMemberService;
@@ -514,8 +515,13 @@
    public FebsResponse getMemberInfo() {
        DappMemberEntity member = LoginUserUtil.getAppUser();
        DappMemberInfoVo dappMemberInfoVo = dappMemberDao.selectByMemberId(member.getId());
        if(StrUtil.isNotEmpty(dappMemberInfoVo.getAccountType())){
            String levelDescription = MemberLevelEnum.MEMBER.getLevelDescription(dappMemberInfoVo.getAccountType());
            dappMemberInfoVo.setAccountType(levelDescription);
        }
        BigDecimal amountPerkTotal = dappFundFlowDao.selectSumAmountByMemberIdAndTypeAndStatus(member.getId(), FundFlowEnum.MEMBER_AMOUNT_PERK_TOTAL.getCode(), 2);
        BigDecimal amountPerkTotal = dappFundFlowDao.selectSumAmountByMemberIdAndTypeAndStatus(member.getId(),
                FundFlowEnum.MEMBER_AMOUNT_PERK_TOTAL.getCode(), 2);
        dappMemberInfoVo.setAmountPerkTotal(amountPerkTotal);
        DataDictionaryCustom ausdPercentDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
@@ -554,7 +560,22 @@
                PoolEnum.COIN_A_PRICE.getType(),
                PoolEnum.COIN_A_PRICE.getCode()
        );
        dappMemberInfoVo.setCoinAPrice((ObjectUtil.isEmpty(coinAPriceDic) ? new BigDecimal("1") : new BigDecimal(coinAPriceDic.getValue())).setScale(12,BigDecimal.ROUND_DOWN));
        dappMemberInfoVo.setCoinAPrice((ObjectUtil.isEmpty(coinAPriceDic) ? new BigDecimal("1") : new BigDecimal(coinAPriceDic.getValue()))
                .setScale(12,BigDecimal.ROUND_DOWN));
        /**
         * 今日涨幅
         */
        //最新的一条记录
        DappAKlineEntity dappAKlineNow = dappAKlineMapper.selectOneByType();
        BigDecimal closePriceNow = dappAKlineNow.getClosePrice();
        //拿日线的最后一条数据
        DappAKlineEntity dappAKlineStart = dappAKlineMapper.selectDayByType();
        BigDecimal closePriceStart = dappAKlineStart.getClosePrice();
        BigDecimal subtract = closePriceNow.subtract(closePriceStart);
        BigDecimal bigDecimal = subtract.divide(closePriceStart, 4, BigDecimal.ROUND_DOWN).multiply(new BigDecimal(100)).setScale(2, BigDecimal.ROUND_DOWN);
        dappMemberInfoVo.setTodayIncrease(bigDecimal);
        return new FebsResponse().success().data(dappMemberInfoVo);
    }
@@ -584,7 +605,7 @@
        }else if(4 == type){
            redisKey = AppContants.K_LINE_MONTH;
        }else{
            redisKey = AppContants.K_LINE_HOUR;
            redisKey = AppContants.K_LINE_NOW;
        }
        Object o = redisUtils.get(redisKey);
        if(ObjectUtil.isNotEmpty(o)){
@@ -610,7 +631,7 @@
        myInviteInfoVo.setMemberAchieve(dappUsdtPerkEntity.getAchieveAmount());
        String refererId = dappMemberEntity.getRefererId();
        DappMemberEntity parentMember = dappMemberDao.selectMemberInfoByInviteId(refererId);
        myInviteInfoVo.setReferenceAddress(parentMember.getAddress());
        myInviteInfoVo.setReferenceAddress(ObjectUtil.isEmpty(parentMember) ? "-" : parentMember.getAddress());
        HashMap<String, BigDecimal> maxMinAchieve = getMaxMinAchieve(memberId);
        myInviteInfoVo.setMaxAchieve(maxMinAchieve.get(AppContants.MAXACHIEVE));
        myInviteInfoVo.setMinAchieve(maxMinAchieve.get(AppContants.MINACHIEVE));
@@ -623,12 +644,14 @@
                myInviteChildInfoVo.setAddress(child.getAddress());
                myInviteChildInfoVo.setAccountType(child.getAccountType());
                DappUsdtPerkEntity childUsdtPerkEntity = dappUsdtPerkEntityMapper.selectByMemberId(child.getId());
                if(ObjectUtil.isEmpty(dappUsdtPerkEntity)){
                    dappUsdtPerkEntity = new DappUsdtPerkEntity();
                    dappUsdtPerkEntity.setMemberId(child.getId());
                    dappUsdtPerkEntityMapper.insert(dappUsdtPerkEntity);
//                BigDecimal achieveAmountByMemberId = dappUsdtPerkEntityMapper.selectAchieveAmountByMemberId(child.getId());
                if(ObjectUtil.isEmpty(childUsdtPerkEntity)){
                    childUsdtPerkEntity = new DappUsdtPerkEntity();
                    childUsdtPerkEntity.setMemberId(child.getId());
                    dappUsdtPerkEntityMapper.insert(childUsdtPerkEntity);
                }
                myInviteChildInfoVo.setMemberAchieve(childUsdtPerkEntity.getAchieveAmount());
                myInviteChildInfoVo.setMemberAchieve(ObjectUtil.isEmpty(childUsdtPerkEntity.getAchieveAmount()) ? BigDecimal.ZERO : childUsdtPerkEntity.getAchieveAmount());
                HashMap<String, BigDecimal> childMaxMinAchieve = getMaxMinAchieve(child.getId());
                myInviteChildInfoVo.setMaxAchieve(childMaxMinAchieve.get(AppContants.MAXACHIEVE));
                myInviteChildInfoVo.setMinAchieve(childMaxMinAchieve.get(AppContants.MINACHIEVE));
@@ -701,6 +724,47 @@
        return new FebsResponse().success().data(fundFlowInfoVo);
    }
    @Override
    public FebsResponse insideWithYes(Long id) {
        DappMemberEntity dappMemberEntity = dappMemberDao.selectById(id);
        if(ObjectUtil.isEmpty(dappMemberEntity)) {
            return new FebsResponse().fail().message("会员信息不存在");
        }
        dappMemberEntity.setNodeType(1);
        dappMemberEntity.setAccountType(MemberLevelEnum.NODE_5.getType());
        dappMemberDao.updateById(dappMemberEntity);
        return new FebsResponse().success();
    }
    @Override
    public FebsResponse insideWithNo(Long id) {
        DappMemberEntity dappMemberEntity = dappMemberDao.selectById(id);
        if(ObjectUtil.isEmpty(dappMemberEntity)) {
            return new FebsResponse().fail().message("会员信息不存在");
        }
        dappMemberEntity.setNodeType(2);
        dappMemberEntity.setAccountType(MemberLevelEnum.MEMBER.getType());
        dappMemberDao.updateById(dappMemberEntity);
        return new FebsResponse().success();
    }
    @Override
    public List<AdminAgentLevelOptionTreeVo> getAgentLevelOption() {
        return dataDictionaryCustomMapper.getAgentLevelOption();
    }
    @Override
    public FebsResponse agentLevelSetUpdate(AgentLevelSetUpdateDto agentLevelSetUpdateDto) {
        Long memberId = agentLevelSetUpdateDto.getId();
        DappMemberEntity dappMemberEntity = dappMemberDao.selectById(memberId);
        if(ObjectUtil.isEmpty(dappMemberEntity)){
            return new FebsResponse().fail().message("系统繁忙,请刷新页面重试");
        }
        dappMemberEntity.setAccountType(agentLevelSetUpdateDto.getLevelCode());
        dappMemberDao.updateById(dappMemberEntity);
        return new FebsResponse().success();
    }
    /**
     * 获取用户的大小区业绩
     * @param memberId