绑定邀请码,现在时间开放

This commit is contained in:
tianfeng 2025-10-30 15:31:10 +08:00
parent 6145efc7a4
commit 2f2e387c0d

View File

@ -87,18 +87,28 @@ public class BindInviteCodeExe {
throw new RuntimeException("The user does not exist.");
}
// 校验用户创建时间是否超过3天
// 校验用户创建时间是否超过3天 (11月2号0点后生效)
Timestamp createTime = userProfile.getCreateTime();
if (createTime != null) {
long createTimeMillis = createTime.getTime();
// 2025年11月2日 00:00:00 (利雅得时区)
ZonedDateTime effectiveDateTime = ZonedDateTime.of(2025, 11, 2, 0, 0, 0, 0,
ZonedDateTimeAsiaRiyadhUtils.now().getZone());
long effectiveTime = effectiveDateTime.toInstant().toEpochMilli();
long currentTime = TimestampUtils.now().getTime();
long threeDaysInMillis = 3 * 24 * 60 * 60 * 1000L; // 3天的毫秒数
long timeDiff = currentTime - createTimeMillis;
if (timeDiff > threeDaysInMillis) {
log.warn("用户创建时间超过3天不允许绑定邀请码, userId={}, createTime={}, currentTime={}, diffDays={}",
userId, createTimeMillis, currentTime, timeDiff / (24 * 60 * 60 * 1000L));
throw new RuntimeException("User registration time has exceeded 3 days and cannot bind invitation code");
// 只有在11月2号0点后才进行校验
if (currentTime >= effectiveTime) {
long createTimeMillis = createTime.getTime();
long threeDaysInMillis = 3 * 24 * 60 * 60 * 1000L; // 3天的毫秒数
long timeDiff = currentTime - createTimeMillis;
if (timeDiff > threeDaysInMillis) {
log.warn("用户创建时间超过3天不允许绑定邀请码, userId={}, createTime={}, currentTime={}, diffDays={}",
userId, createTimeMillis, currentTime, timeDiff / (24 * 60 * 60 * 1000L));
throw new RuntimeException("User registration time has exceeded 3 days and cannot bind invitation code");
}
} else {
log.info("当前时间在11月2号0点之前跳过用户创建时间校验, userId={}, currentTime={}", userId, currentTime);
}
}