이벤트 정리

This commit is contained in:
2025-10-27 15:17:30 +09:00
parent 6b006e21e3
commit edbd69893d
2 changed files with 16 additions and 16 deletions

View File

@@ -116,6 +116,7 @@ public class WorldEventService {
.status(CommonCode.SUCCESS.getHttpStatus())
.result(CommonCode.SUCCESS.getResult())
.resultData(WorldEventResponse.ResultData.builder()
.message(SuccessCode.UPDATE.getMessage())
.build())
.build();

View File

@@ -1,10 +1,9 @@
package com.caliverse.admin.scheduler.polling.service;
import com.caliverse.admin.domain.entity.Event;
import com.caliverse.admin.domain.entity.RewardEvent;
import com.caliverse.admin.domain.entity.log.LogAction;
import com.caliverse.admin.domain.entity.log.LogStatus;
import com.caliverse.admin.domain.service.EventService;
import com.caliverse.admin.global.common.annotation.BusinessProcess;
import com.caliverse.admin.domain.service.RewardEventService;
import com.caliverse.admin.global.component.manager.BusinessProcessIdManager;
import com.caliverse.admin.mongodb.service.BusinessLogService;
import com.caliverse.admin.scheduler.CommonScheduler;
@@ -22,13 +21,13 @@ import java.util.concurrent.atomic.AtomicInteger;
@Slf4j
@Component
public class EventScheduler extends CommonScheduler {
private final EventService eventService;
private final RewardEventService rewardEventService;
public EventScheduler(EventService eventService,
public EventScheduler(RewardEventService rewardEventService,
BusinessLogService businessLogService,
BusinessProcessIdManager processIdManager) {
super(businessLogService, processIdManager);
this.eventService = eventService;
this.rewardEventService = rewardEventService;
}
@Override
@@ -37,7 +36,7 @@ public class EventScheduler extends CommonScheduler {
}
private void executeLogic() {
List<Event> eventList = eventService.getScheduleMailList();
List<RewardEvent> rewardEventList = rewardEventService.getScheduleMailList();
LocalDateTime startTime = LocalDateTime.now();
List<Long> processedEventIds = new ArrayList<>();
@@ -46,13 +45,13 @@ public class EventScheduler extends CommonScheduler {
AtomicInteger finishedCount = new AtomicInteger(0);
try{
eventList.forEach(event -> {
rewardEventList.forEach(event -> {
LocalDateTime nowDate = LocalDateTime.now();
LocalDateTime eventStartTime = event.getStartDt();
LocalDateTime endTime = event.getEndDt();
if(nowDate.isAfter(endTime) && event.getStatus().equals(Event.EVENTSTATUS.WAIT)){
eventService.updateEventStatus(event.getId(), Event.EVENTSTATUS.FAIL);
if(nowDate.isAfter(endTime) && event.getStatus().equals(RewardEvent.EVENTSTATUS.WAIT)){
rewardEventService.updateEventStatus(event.getId(), RewardEvent.EVENTSTATUS.FAIL);
processedEventIds.add(event.getId());
timeoutCount.incrementAndGet();
@@ -61,16 +60,16 @@ public class EventScheduler extends CommonScheduler {
}
// 시작시간이 30분 남았을때 게임DB에 insert 해준다(서버에서 캐시 등록)
if (event.getStatus().equals(Event.EVENTSTATUS.WAIT) && Duration.between(nowDate, eventStartTime ).abs().toMinutes() <= 30 && !event.isAddFlag()) {
eventService.insertSystemMail(event);
if (event.getStatus().equals(RewardEvent.EVENTSTATUS.WAIT) && Duration.between(nowDate, eventStartTime ).abs().toMinutes() <= 30 && !event.isAddFlag()) {
rewardEventService.insertSystemMail(event);
processedEventIds.add(event.getId());
systemMailInsertedCount.incrementAndGet();
log.info("eventJob eventSchedule dynamoDB Insert & Start: {}", event);
}
if(!nowDate.isBefore(endTime) && event.getStatus().equals(Event.EVENTSTATUS.RUNNING)){
eventService.updateEventStatus(event.getId(), Event.EVENTSTATUS.FINISH);
if(!nowDate.isBefore(endTime) && event.getStatus().equals(RewardEvent.EVENTSTATUS.RUNNING)){
rewardEventService.updateEventStatus(event.getId(), RewardEvent.EVENTSTATUS.FINISH);
processedEventIds.add(event.getId());
finishedCount.incrementAndGet();
@@ -90,7 +89,7 @@ public class EventScheduler extends CommonScheduler {
startTime,
LocalDateTime.now(),
Map.of(
"totalEventCount", eventList.size(),
"totalEventCount", rewardEventList.size(),
"processedCount", processedEventIds.size(),
"processedEventIds", processedEventIds,
"timeoutCount", timeoutCount.get(),
@@ -100,7 +99,7 @@ public class EventScheduler extends CommonScheduler {
);
log.info("Event scheduler completed: {} items processed out of {} total",
processedEventIds.size(), eventList.size());
processedEventIds.size(), rewardEventList.size());
}
}catch (Exception e){
log.error("eventSchedule Exception: {}", e.getMessage());