游戏王0点快照处理

This commit is contained in:
tianfeng 2026-01-23 14:59:14 +08:00
parent b7671d5963
commit ce78518698

View File

@ -66,7 +66,15 @@ public class RankingRewardGrantCmdExe {
lastUserMap = lastSnapshot.getRankingUsers().stream()
.collect(Collectors.toMap(RankingRewardSnapshot.RankingUserSnapshot::getUserId, u -> u));
}
// 检查是否为星期一0点(活动重置时间)
if (isWeeklyReset()) {
log.info("星期一0点活动重置收回所有用户道具");
revokeAllUserRewards(lastUserMap);
return;
}
processRewardChanges(currentRankMap, lastUserMap, activityConfig);
saveNewSnapshot(activityType, origin, cycleKey, templateId, currentRankingUsers, activityConfig);
@ -78,16 +86,6 @@ public class RankingRewardGrantCmdExe {
private void processRewardChanges(Map<Integer, RankingUserData> currentRankMap,
Map<Long, RankingRewardSnapshot.RankingUserSnapshot> lastUserMap,
ActivityConfigVO activityConfig) {
// 检查是否为星期一0点(活动重置时间)
if (isWeeklyReset()) {
log.info("星期一0点活动重置收回所有用户道具");
revokeAllUserRewards(lastUserMap);
lastUserMap.clear(); // 清空历史使所有用户视为新用户重新发放
return;
}
Set<Long> currentUserIds = currentRankMap.values().stream()
.map(RankingUserData::getUserId)
.collect(Collectors.toSet());