| | |
| | | //可以获取奖励的用户 |
| | | Map<Long, BigDecimal> memberPerkMap = new HashMap<>(); |
| | | //总团队业绩 |
| | | BigDecimal memberPerkTotal = BigDecimal.ZERO; |
| | | // BigDecimal memberPerkTotal = BigDecimal.ZERO; |
| | | BigDecimal memberPerkTotal = dappAchieves.stream().map(DappAchieve::getAmount).reduce(BigDecimal.ZERO, BigDecimal::add); |
| | | if(BigDecimal.ZERO.compareTo(memberPerkTotal) >= 0){ |
| | | return; |
| | | } |
| | | //获取全部会员 |
| | | Set<Long> allMembers = dappMemberEntities.stream().map(DappMemberEntity::getId).collect(Collectors.toSet()); |
| | | //获取正在质押的会员ID |
| | |
| | | if(BigDecimal.ZERO.compareTo(teamAchieveMemberSum) >= 0){ |
| | | continue; |
| | | } |
| | | memberPerkTotal = memberPerkTotal.add(teamAchieveMemberSum); |
| | | // memberPerkTotal = memberPerkTotal.add(teamAchieveMemberSum); |
| | | memberPerkMap.put(memberId,teamAchieveMemberSum); |
| | | } |
| | | if(BigDecimal.ZERO.compareTo(memberPerkTotal) >= 0){ |
| | | return; |
| | | } |
| | | |
| | | BigDecimal everyUsdt = multiplyDivideEveryUsdt.divide(memberPerkTotal,4,BigDecimal.ROUND_DOWN); |
| | |
| | | BigDecimal multiplyUsdt = amountMember.multiply(everyUsdt).setScale(4, BigDecimal.ROUND_DOWN); |
| | | //这个人实际可以分到的数量COIN |
| | | BigDecimal multiplyCoin = amountMember.multiply(everyCoin).setScale(4, BigDecimal.ROUND_DOWN); |
| | | |
| | | DappMemberEntity dappMemberEntityExit = dappMemberDao.selectById(memberId); |
| | | if(ObjectUtil.isEmpty(dappMemberEntityExit)){ |
| | | continue; |
| | | } |
| | | createFlow( |
| | | multiplyUsdt, |
| | | memberId, |
| | | FlowTypeEnum.HUA_DIAN_TUANDUI_USDT.getValue(), |
| | | FlowTypeEnum.HUA_DIAN_TUANDUI_USDT.getDescrition(), |
| | | StrUtil.format(FlowTypeEnum.HUA_DIAN_TUANDUI_USDT.getDescrition(), amountMember), |
| | | 4, |
| | | 1, |
| | | ChainEnum.BSC_TFC_REWARD.name(), |
| | | DataDicEnum.USDT_COIN.getValue(), |
| | | 2); |
| | | createFlow( |
| | | multiplyCoin, |
| | | memberId, |
| | | FlowTypeEnum.HUA_DIAN_TUANDUI_DAIBI.getValue(), |
| | | StrUtil.format(FlowTypeEnum.HUA_DIAN_TUANDUI_DAIBI.getDescrition(), amountMember), |
| | | 4, |
| | | 1, |
| | | ChainEnum.BSC_TFC_REWARD.name(), |
| | | DataDicEnum.USDT_COIN.getValue(), |
| | | 1); |
| | | // createFlow( |
| | | // multiplyCoin, |
| | | // memberId, |
| | | // FlowTypeEnum.HUA_DIAN_TUANDUI_DAIBI.getValue(), |
| | | // StrUtil.format(FlowTypeEnum.HUA_DIAN_TUANDUI_DAIBI.getDescrition(), amountMember), |
| | | // 4, |
| | | // 1, |
| | | // ChainEnum.BSC_TFC_REWARD.name(), |
| | | // DataDicEnum.USDT_COIN.getValue(), |
| | | // 1); |
| | | |
| | | } |
| | | } |
| | |
| | | //这个人实际可以分到的数量COIN |
| | | BigDecimal multiplyCoin = amountMember.multiply(everyCoin).setScale(4, BigDecimal.ROUND_DOWN); |
| | | |
| | | DappMemberEntity dappMemberEntityExit = dappMemberDao.selectById(memberId); |
| | | if(ObjectUtil.isEmpty(dappMemberEntityExit)){ |
| | | continue; |
| | | } |
| | | createFlow( |
| | | multiplyUsdt, |
| | | memberId, |
| | | FlowTypeEnum.HUA_DIAN_GEREN.getValue(), |
| | | FlowTypeEnum.HUA_DIAN_GEREN.getDescrition(), |
| | | 4, |
| | | 1, |
| | | ChainEnum.BSC_TFC_REWARD.name(), |
| | | DataDicEnum.USDT_COIN.getValue(), |
| | | 2); |
| | | createFlow( |
| | | multiplyCoin, |
| | | memberId, |
| | | FlowTypeEnum.HUA_DIAN_GEREN.getValue(), |
| | | StrUtil.format(FlowTypeEnum.HUA_DIAN_GEREN.getDescrition(), amountMember), |
| | | 4, |
| | | 1, |
| | | ChainEnum.BSC_TFC_REWARD.name(), |
| | | DataDicEnum.GFA_COIN.getValue(), |
| | | 1); |
| | | DataDicEnum.USDT_COIN.getValue(), |
| | | 2); |
| | | // createFlow( |
| | | // multiplyCoin, |
| | | // memberId, |
| | | // FlowTypeEnum.HUA_DIAN_GEREN.getValue(), |
| | | // StrUtil.format(FlowTypeEnum.HUA_DIAN_GEREN.getDescrition(), amountMember), |
| | | // 4, |
| | | // 1, |
| | | // ChainEnum.BSC_TFC_REWARD.name(), |
| | | // DataDicEnum.GFA_COIN.getValue(), |
| | | // 1); |
| | | } |
| | | } |
| | | |