From 2e71bd5a973c42f0d6af8100652ac6b439daa9a4 Mon Sep 17 00:00:00 2001
From: RuoYi <yzz_ivy@163.com>
Date: 星期五, 27 九月 2024 16:07:27 +0800
Subject: [PATCH] 修改上级菜单ID字段类型

---
 src/main/java/com/ruoyi/common/utils/job/ScheduleUtils.java |   13 +++++++++++--
 1 files changed, 11 insertions(+), 2 deletions(-)

diff --git a/src/main/java/com/ruoyi/common/utils/job/ScheduleUtils.java b/src/main/java/com/ruoyi/common/utils/job/ScheduleUtils.java
index 8c8b3c8..85a139c 100644
--- a/src/main/java/com/ruoyi/common/utils/job/ScheduleUtils.java
+++ b/src/main/java/com/ruoyi/common/utils/job/ScheduleUtils.java
@@ -15,6 +15,7 @@
 import com.ruoyi.common.exception.job.TaskException;
 import com.ruoyi.common.exception.job.TaskException.Code;
 import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.common.utils.spring.SpringUtils;
 import com.ruoyi.project.monitor.domain.SysJob;
 
 /**
@@ -82,7 +83,12 @@
             scheduler.deleteJob(getJobKey(jobId, jobGroup));
         }
 
-        scheduler.scheduleJob(jobDetail, trigger);
+        // 鍒ゆ柇浠诲姟鏄惁杩囨湡
+        if (StringUtils.isNotNull(CronUtils.getNextExecution(job.getCronExpression())))
+        {
+            // 鎵ц璋冨害浠诲姟
+            scheduler.scheduleJob(jobDetail, trigger);
+        }
 
         // 鏆傚仠浠诲姟
         if (job.getStatus().equals(ScheduleConstants.Status.PAUSE.getValue()))
@@ -127,6 +133,9 @@
         {
             return StringUtils.containsAnyIgnoreCase(invokeTarget, Constants.JOB_WHITELIST_STR);
         }
-        return true;
+        Object obj = SpringUtils.getBean(StringUtils.split(invokeTarget, ".")[0]);
+        String beanPackageName = obj.getClass().getPackage().getName();
+        return StringUtils.containsAnyIgnoreCase(beanPackageName, Constants.JOB_WHITELIST_STR)
+                && !StringUtils.containsAnyIgnoreCase(beanPackageName, Constants.JOB_ERROR_STR);
     }
 }

--
Gitblit v1.9.3