邀请者、被邀请者的奖励,修改为绑定后的7天内充值累计

This commit is contained in:
tianfeng 2026-03-06 17:32:14 +08:00
parent 201364f809
commit bb225cfd00
2 changed files with 15 additions and 6 deletions

View File

@ -49,6 +49,7 @@ import org.apache.commons.lang3.StringUtils;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.sql.Timestamp; import java.sql.Timestamp;
import java.time.Duration; import java.time.Duration;
import java.time.LocalDateTime;
import java.time.ZoneId; import java.time.ZoneId;
import java.time.ZonedDateTime; import java.time.ZonedDateTime;
import java.util.List; import java.util.List;
@ -393,6 +394,10 @@ public class TaskListener implements MessageListener {
} }
UserInviteUser userInviteUser = allInvites.get(0); UserInviteUser userInviteUser = allInvites.get(0);
if (!isNewUserWithinDays(userInviteUser, 7)) {
return;
}
// 金币奖励发给邀请人A 500 // 金币奖励发给邀请人A 500
long gold = 500; long gold = 500;
walletGoldClient.changeBalance(GoldReceiptCmd.builder() walletGoldClient.changeBalance(GoldReceiptCmd.builder()
@ -424,6 +429,12 @@ public class TaskListener implements MessageListener {
} }
/** 判断绑定时间是否为N天内 */
private boolean isNewUserWithinDays(UserInviteUser userInviteUser, int days) {
Duration duration = Duration.between(userInviteUser.getCreateTime().toLocalDateTime(), LocalDateTime.now());
return duration.toDays() < days;
}
private void recordRanking(Long userId, Long quantity) { private void recordRanking(Long userId, Long quantity) {
RankingActivityRecord record = new RankingActivityRecord(); RankingActivityRecord record = new RankingActivityRecord();
record.setSysOrigin(SysOriginPlatformEnum.LIKEI.name()); record.setSysOrigin(SysOriginPlatformEnum.LIKEI.name());

View File

@ -54,7 +54,6 @@ public class InviteUserGatewayImpl implements InviteUserGateway {
private final UserInviteCacheService userInviteCacheService; private final UserInviteCacheService userInviteCacheService;
private final InviteUserSummaryService inviteUserSummaryService; private final InviteUserSummaryService inviteUserSummaryService;
private final UserInviteUserDAO userInviteUserDAO; private final UserInviteUserDAO userInviteUserDAO;
private final UserProfileGateway userProfileGateway;
private final InviteUserRechargeCommissionService inviteUserRechargeCommissionService; private final InviteUserRechargeCommissionService inviteUserRechargeCommissionService;
private final RankingActivityGateway rankingActivityGateway; private final RankingActivityGateway rankingActivityGateway;
private final RedisService redisService; private final RedisService redisService;
@ -121,7 +120,7 @@ public class InviteUserGatewayImpl implements InviteUserGateway {
result.setInviteeUserId(inviteUserId); result.setInviteeUserId(inviteUserId);
result.setInviteeTotalRecharge(totalRecharge); result.setInviteeTotalRecharge(totalRecharge);
result.setSysOrigin(sysOrigin); result.setSysOrigin(sysOrigin);
result.setNewUser(isNewUserWithinDays(inviteUserId, 7)); result.setNewUser(isNewUserWithinDays(userInviteUser, 7));
return result; return result;
} }
@ -177,10 +176,9 @@ public class InviteUserGatewayImpl implements InviteUserGateway {
return userInviteCacheService.getCommissionRate(SysOriginPlatformEnum.valueOf(sysOrigin)); return userInviteCacheService.getCommissionRate(SysOriginPlatformEnum.valueOf(sysOrigin));
} }
/** 判断用户是否为注册N天内的新用户 */ /** 判断绑定时间是否为N天内 */
private boolean isNewUserWithinDays(Long userId, int days) { private boolean isNewUserWithinDays(UserInviteUser userInviteUser, int days) {
UserProfile userProfile = userProfileGateway.getByUserId(userId); Duration duration = Duration.between(userInviteUser.getCreateTime().toLocalDateTime(), LocalDateTime.now());
Duration duration = Duration.between(userProfile.getCreateTime().toLocalDateTime(), LocalDateTime.now());
return duration.toDays() < days; return duration.toDays() < days;
} }