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