| | |
| | | MallMemberAmount mallMemberAmountMine = mallMemberAmountMapper.selectByMemberId(mallProductBuy.getMemberId()); |
| | | mallMemberAmountMine.setTrendsNft(mallMemberAmountMine.getTrendsNft().add(profit)); |
| | | mallMemberAmountMapper.updateTrendsNftById(mallMemberAmountMine); |
| | | } |
| | | |
| | | BigDecimal remainderDirect = bigDecimal.divide(new BigDecimal(String.valueOf(cycle)),0,BigDecimal.ROUND_DOWN);//取余 |
| | | if(remainderDirect.compareTo(BigDecimal.ONE) == 0){ |
| | | /** |
| | | * 更新用户上级收益,冻结7天,7天时间到期自动释放到动态钱包 |
| | | */ |
| | | Long memberId = mallProductBuy.getMemberId(); |
| | | MallMember mallMember = memberMapper.selectById(memberId); |
| | | if(ObjectUtil.isNotEmpty(mallMember)){ |
| | | if(DateUtil.compare(payTime,DateUtil.parseDate("2024-3-26"))<= 0){ |
| | | //直推 |
| | | String referrerId = mallMember.getReferrerId(); |
| | | MallMember directMember = memberMapper.selectInfoByInviteId(referrerId); |
| | | if(ObjectUtil.isNotEmpty(directMember)){ |
| | | BigDecimal basicPerkDirectPercent = new BigDecimal(dataDictionaryCustomMapper.selectDicDataByTypeAndCode( |
| | | DataDictionaryEnum.BASIC_PERK_DIRECT.getType(), |
| | | DataDictionaryEnum.BASIC_PERK_DIRECT.getCode() |
| | | ).getValue()).multiply(new BigDecimal("0.01")); |
| | | |
| | | BigDecimal basicPerkDirect = nftTotal.multiply(basicPerkDirectPercent).setScale(2, BigDecimal.ROUND_DOWN); |
| | | /** |
| | | * 如果用户是冻结,则直接销毁 |
| | | */ |
| | | createPerk(directMember,basicPerkDirect.multiply(new BigDecimal("0.5"))); |
| | | if(StrUtil.isNotEmpty(directMember.getReferrerId())){ |
| | | MallMember directMemberDirect = memberMapper.selectInfoByInviteId(directMember.getReferrerId()); |
| | | createPerk(directMemberDirect,basicPerkDirect.multiply(new BigDecimal("0.5"))); |
| | | } |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 团队奖励 |
| | | * |
| | | */ |
| | | MallMember mallMember = memberMapper.selectById(mallProductBuy.getMemberId()); |
| | | if(ObjectUtil.isNotEmpty(mallMember)){ |
| | | String level = MemberLevelNewEnum.ZERO_LEVEL.getType(); |
| | | BigDecimal equalsPerkBasic = BigDecimal.ZERO;//平级收益,假设平级,则算平级收益的百分比收益 |
| | | boolean flag = false; |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | BigDecimal remainderDirect = bigDecimal.divide(new BigDecimal(String.valueOf(cycle)),0,BigDecimal.ROUND_DOWN);//取余 |
| | | if(remainderDirect.compareTo(BigDecimal.ONE) == 0){ |
| | | /** |
| | | * 更新用户上级收益,冻结7天,7天时间到期自动释放到动态钱包 |
| | | */ |
| | | Long memberId = mallProductBuy.getMemberId(); |
| | | MallMember mallMember = memberMapper.selectById(memberId); |
| | | if(ObjectUtil.isNotEmpty(mallMember)){ |
| | | if(DateUtil.compare(payTime,DateUtil.parseDate("2024-3-26"))<= 0){ |
| | | //直推 |
| | | String referrerId = mallMember.getReferrerId(); |
| | | MallMember directMember = memberMapper.selectInfoByInviteId(referrerId); |
| | | if(ObjectUtil.isNotEmpty(directMember)){ |
| | | BigDecimal basicPerkDirectPercent = new BigDecimal(dataDictionaryCustomMapper.selectDicDataByTypeAndCode( |
| | | DataDictionaryEnum.BASIC_PERK_DIRECT.getType(), |
| | | DataDictionaryEnum.BASIC_PERK_DIRECT.getCode() |
| | | ).getValue()).multiply(new BigDecimal("0.01")); |
| | | |
| | | BigDecimal basicPerkDirect = nftTotal.multiply(basicPerkDirectPercent).setScale(2, BigDecimal.ROUND_DOWN); |
| | | /** |
| | | * 如果用户是冻结,则直接销毁 |
| | | */ |
| | | createPerk(directMember,basicPerkDirect.multiply(new BigDecimal("0.5"))); |
| | | if(StrUtil.isNotEmpty(directMember.getReferrerId())){ |
| | | MallMember directMemberDirect = memberMapper.selectInfoByInviteId(directMember.getReferrerId()); |
| | | createPerk(directMemberDirect,basicPerkDirect.multiply(new BigDecimal("0.5"))); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |