From 6fb006c40ff90a615fa3c3a55a65c99b55acc03d Mon Sep 17 00:00:00 2001 From: zxl <763096477@qq.com> Date: 星期二, 29 七月 2025 14:43:35 +0800 Subject: [PATCH] 提取videoServiceImpl方法 --- lmk-job/src/main/java/cn/lili/job/ActivityJob.java | 27 +++++++++++++++++++-------- 1 files changed, 19 insertions(+), 8 deletions(-) diff --git a/lmk-job/src/main/java/cn/lili/job/ActivityJob.java b/lmk-job/src/main/java/cn/lili/job/ActivityJob.java index 40f0268..601ace7 100644 --- a/lmk-job/src/main/java/cn/lili/job/ActivityJob.java +++ b/lmk-job/src/main/java/cn/lili/job/ActivityJob.java @@ -16,6 +16,7 @@ import org.apache.commons.collections4.CollectionUtils; import org.springframework.stereotype.Component; +import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.Map; @@ -40,33 +41,43 @@ //鑾峰緱鎵�鏈� 娲诲姩 List<Activity> activeActivities = new LambdaQueryChainWrapper<Activity>(activityMapper) .orderByAsc(Activity::getCreateTime) // 鎸夊垱寤烘椂闂村崌搴� + .eq(Activity::getDeleteFlag,Boolean.FALSE) .list(); Date now = new Date(); // 鑾峰彇褰撳墠鏃堕棿 - - - + List<Activity> newActivities = new ArrayList<>(); for (Activity activity : activeActivities) { + String status = activity.getStatus(); + if (isInProgress(now, activity)) { activity.setStatus(ActivityStatusEnum.IN_PROGRESS.getType()); } else if (isRecruiting(now, activity)) { activity.setStatus(ActivityStatusEnum.REPORT.getType()); - } else if (now.before(activity.getReportStartTime())) { + } else if (now.before(activity.getReportStartTime())) { //鍦ㄦ姤鍚嶆椂闂翠箣鍓� activity.setStatus(ActivityStatusEnum.NOT_STARTED.getType()); - } else { + }else if(now.after(activity.getReportEndTime()) && now.before(activity.getStartTime())){ //鍙兘鍑虹幇 鍦ㄦ姤鍚嶇粨鏉熸椂闂村悗锛� 娲诲姩寮�濮嬩箣鍓嶇殑鎯呭喌 + activity.setStatus(ActivityStatusEnum.NOT_STARTED.getType()); + } + else { activity.setStatus(ActivityStatusEnum.ENDED.getType()); } + if (status != null && !status.equals(activity.getStatus())) { + newActivities.add(activity); + } } - activityMapper.batchUpdateActivities(activeActivities); + if (!newActivities.isEmpty()) { + activityMapper.batchUpdateActivities(newActivities); + } // 淇敼 XxlJobHelper.log("鎵ц瀹屾垚锛氭椿鍔ㄧ姸鎬佹敼鍙�"); } - + //娲诲姩寮�濮嬫椂闂翠箣鍚庯紝缁撴潫鏃堕棿涔嬪墠 鍦ㄦ椿鍔ㄦ湡闂� private boolean isInProgress(Date now, Activity activity) { + return !now.before(activity.getStartTime()) && !now.after(activity.getEndTime()); } - + //鍦ㄦ姤鍚嶆湡闂� private boolean isRecruiting(Date now, Activity activity) { return !now.before(activity.getReportStartTime()) && !now.after(activity.getReportEndTime()); } -- Gitblit v1.8.0