| | |
| | | private final DataDictionaryCustomMapper dataDictionaryCustomMapper; |
| | | |
| | | private final MallSystemSettingMapper mallSystemSettingMapper; |
| | | private final IAdminMallMemberService adminMallMemberService; |
| | | |
| | | /** |
| | | * 直推收益 |
| | |
| | | continue; |
| | | } |
| | | |
| | | List<MallMember> mallMembers = mallMemberMapper.selectParentMemberList(StrUtil.split(parentMember.getReferrerIds(), ','), parentMember.getReferrerId(), 2); |
| | | List<MallMember> mallMembers = adminMallMemberService.findParentMemberList(StrUtil.split(parentMember.getReferrerIds(), ','), 2, true); |
| | | if (CollUtil.isEmpty(mallMembers)) { |
| | | continue; |
| | | } |
| | |
| | | break; |
| | | } |
| | | |
| | | if (index != 2) { |
| | | if (index == 2) { |
| | | indirectPerDic = indirectPerTwoDic; |
| | | } |
| | | BigDecimal doubleParentProfit = profit.multiply(new BigDecimal(indirectPerDic.getValue())); |
| | | BigDecimal doubleParentProfit = amount.multiply(new BigDecimal(indirectPerDic.getValue()).divide(new BigDecimal(100), 2, RoundingMode.HALF_UP)); |
| | | changeScoreAndCommission(mallMember.getId(), doubleParentProfit, MoneyFlowTypeEnum.DIRECT_BONUS.getValue(), orderInfo.getOrderNo()); |
| | | index++; |
| | | } |
| | |
| | | } |
| | | |
| | | List<String> parents = StrUtil.split(parentMember.getReferrerIds(), ','); |
| | | List<MallMember> members = mallMemberMapper.selectByInviteIds(parents); |
| | | List<MallMember> members = adminMallMemberService.findParentMemberList(parents, null, true); |
| | | if (CollUtil.isEmpty(members)) { |
| | | return; |
| | | } |
| | |
| | | return; |
| | | } |
| | | |
| | | BigDecimal bonus = BigDecimal.ZERO; |
| | | if (AccountLevelEnums.VVIP.getLevel().equals(type)) { |
| | | bonus = systemSetting.getAgentBonus(); |
| | | } else { |
| | | bonus = systemSetting.getPartnerBonus(); |
| | | } |
| | | |
| | | // 代理 |
| | | BigDecimal waitToBonus = systemSetting.getAgentBonus().multiply(new BigDecimal(dic.getValue()).divide(hundred, 2, RoundingMode.HALF_UP)); |
| | | BigDecimal waitToBonus = bonus.multiply(new BigDecimal(dic.getValue()).divide(hundred, 2, RoundingMode.HALF_UP)); |
| | | |
| | | // 代理 |
| | | List<MallMember> mallMembers = mallMemberMapper.selectAgentOrPartnetMemberList(type); |
| | |
| | | }); |
| | | |
| | | if (type.equals(AccountLevelEnums.VVIP.getLevel())) { |
| | | changeSystemBonus(null, waitToBonus,null); |
| | | changeSystemBonus(null, waitToBonus.negate(),null); |
| | | } else { |
| | | changeSystemBonus(null, null, waitToBonus); |
| | | changeSystemBonus(null, null, waitToBonus.negate()); |
| | | } |
| | | |
| | | bonusRecord(waitToBonus, type, null, null); |
| | |
| | | totalBonus = totalBonus.add(levelBonus); |
| | | } |
| | | |
| | | changeSystemBonus(totalBonus, null, null); |
| | | changeSystemBonus(totalBonus.negate(), null, null); |
| | | |
| | | bonusRecord(totalBonus, 1, null, null); |
| | | log.info("###全网分红执行--end--###"); |
| | | } |
| | | |