Commit 4882fb60 by xiongjiangtao

Merge remote-tracking branch 'origin/feature-chat-activity' into feature-chat-activity

parents a8eca211 dfa6b159
......@@ -325,19 +325,25 @@ public class GroupChatActivityInviteLogServiceImpl implements GroupChatActivityI
batchNumber = (count.intValue() + inviteNumber - 1) / inviteNumber;
batchNumber = batchNumber > limitReward ? -1 : batchNumber;
} else {
batchNumber = 1;
int maxInviteNumber = rewardDTOList.stream().mapToInt(GroupChatActivityRewardDTO::getInviteNumber).max().getAsInt();
for (GroupChatActivityRewardDTO rewardDTO : rewardDTOList) {
Integer inviteNumber = rewardDTO.getInviteNumber();
if (inviteNumber >= maxInviteNumber) {
if (count.intValue() > maxInviteNumber) {
batchNumber = -1;
} else if (count.intValue() == maxInviteNumber) {
List<GroupChatActivityRewardDTO> list = rewardDTOList.stream().sorted(Comparator.comparing(GroupChatActivityRewardDTO::getInviteNumber).reversed())
.collect(Collectors.toList());
Integer maxInviteNumber = list.get(0).getInviteNumber();
Integer minInviteNumber = list.get(list.size() - 1).getInviteNumber();
batchNumber = list.get(0).getInviteLevel();
if (count.intValue() > maxInviteNumber) {
batchNumber = -1;
}else if (count.intValue() <= minInviteNumber) {
batchNumber = 1;
} else {
for (GroupChatActivityRewardDTO rewardDTO : list) {
Integer inviteNumber = rewardDTO.getInviteNumber();
if (count.intValue() == inviteNumber) {
batchNumber = rewardDTO.getInviteLevel();
break;
} else if (count.intValue() > inviteNumber) {
batchNumber = rewardDTO.getInviteLevel() + 1;
break;
}
break;
} else if (count.intValue() >= inviteNumber) {
batchNumber = rewardDTO.getInviteLevel();
}
}
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment