From 0d5ce03a7e150d034fadc7f864ee659cf4c6150f Mon Sep 17 00:00:00 2001
From: zxl <763096477@qq.com>
Date: 星期五, 08 八月 2025 17:23:13 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev' into dev

---
 lmk-job/src/main/java/cn/lili/job/ActivityJob.java |   34 +++++++++++++++++++++-------------
 1 files changed, 21 insertions(+), 13 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 ceb4693..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,38 +41,45 @@
         //鑾峰緱鎵�鏈� 娲诲姩
         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.after(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) {
-        System.out.println("杩涜涓�");
-        return !now.before(activity.getReportStartTime()) && !now.after(activity.getReportEndTime());
+
+        return  !now.before(activity.getStartTime()) && !now.after(activity.getEndTime());
     }
-
-
+    //鍦ㄦ姤鍚嶆湡闂�
     private boolean isRecruiting(Date now, Activity activity) {
-        System.out.println("鎶ュ悕涓�");
-        return !now.before(activity.getStartTime()) && !now.after(activity.getEndTime());
+        return !now.before(activity.getReportStartTime()) && !now.after(activity.getReportEndTime());
     }
 
 }

--
Gitblit v1.8.0