diff --git a/ruoyi-common/pom.xml b/ruoyi-common/pom.xml
index 2930fd0..55dc6b7 100644
--- a/ruoyi-common/pom.xml
+++ b/ruoyi-common/pom.xml
@@ -34,6 +34,7 @@
ruoyi-common-tenant
ruoyi-common-websocket
ruoyi-common-sse
+ ruoyi-common-quartz
ruoyi-common
diff --git a/ruoyi-common/ruoyi-common-bom/pom.xml b/ruoyi-common/ruoyi-common-bom/pom.xml
index 00b7e7f..a847fa3 100644
--- a/ruoyi-common/ruoyi-common-bom/pom.xml
+++ b/ruoyi-common/ruoyi-common-bom/pom.xml
@@ -179,6 +179,13 @@
${revision}
+
+
+ org.dromara
+ ruoyi-common-quartz
+ ${revision}
+
+
diff --git a/ruoyi-common/ruoyi-common-quartz/pom.xml b/ruoyi-common/ruoyi-common-quartz/pom.xml
new file mode 100644
index 0000000..92f8396
--- /dev/null
+++ b/ruoyi-common/ruoyi-common-quartz/pom.xml
@@ -0,0 +1,36 @@
+
+
+
+ org.dromara
+ ruoyi-common
+ ${revision}
+
+ 4.0.0
+
+ ruoyi-common-quartz
+
+
+ ruoyi-common-quartz Quartz定时任务
+
+
+
+
+
+ org.springframework.boot
+ spring-boot-starter-quartz
+
+
+
+ org.projectlombok
+ lombok
+
+
+
+ org.dromara
+ ruoyi-common-core
+
+
+
+
diff --git a/ruoyi-common/ruoyi-common-quartz/src/main/java/org/dromara/common/quartz/config/QuartzAutoConfiguration.java b/ruoyi-common/ruoyi-common-quartz/src/main/java/org/dromara/common/quartz/config/QuartzAutoConfiguration.java
new file mode 100644
index 0000000..89ccc4c
--- /dev/null
+++ b/ruoyi-common/ruoyi-common-quartz/src/main/java/org/dromara/common/quartz/config/QuartzAutoConfiguration.java
@@ -0,0 +1,49 @@
+package org.dromara.common.quartz.config;
+
+import lombok.extern.slf4j.Slf4j;
+import org.dromara.common.quartz.job.DemoTimeJob;
+import org.quartz.*;
+import org.springframework.boot.autoconfigure.AutoConfiguration;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.ComponentScan;
+
+/**
+ * Quartz 自动配置
+ *
+ * @author ruoyi
+ */
+@Slf4j
+@AutoConfiguration
+@ComponentScan("org.dromara.common.quartz")
+public class QuartzAutoConfiguration {
+
+ public QuartzAutoConfiguration() {
+ log.info("初始化 Quartz 定时任务配置");
+ }
+
+ /**
+ * Demo任务详情
+ */
+ @Bean
+ public JobDetail demoTimeJobDetail() {
+ return JobBuilder.newJob(DemoTimeJob.class)
+ .withIdentity("demoTimeJob", "demo")
+ .storeDurably()
+ .build();
+ }
+
+ /**
+ * Demo任务触发器 - 每秒执行一次
+ */
+ @Bean
+ public Trigger demoTimeJobTrigger(JobDetail demoTimeJobDetail) {
+ return TriggerBuilder.newTrigger()
+ .forJob(demoTimeJobDetail)
+ .withIdentity("demoTimeTrigger", "demo")
+ .withSchedule(SimpleScheduleBuilder.simpleSchedule()
+ .withIntervalInSeconds(1)
+ .repeatForever())
+ .build();
+ }
+
+}
diff --git a/ruoyi-common/ruoyi-common-quartz/src/main/java/org/dromara/common/quartz/job/DemoTimeJob.java b/ruoyi-common/ruoyi-common-quartz/src/main/java/org/dromara/common/quartz/job/DemoTimeJob.java
new file mode 100644
index 0000000..f17daa4
--- /dev/null
+++ b/ruoyi-common/ruoyi-common-quartz/src/main/java/org/dromara/common/quartz/job/DemoTimeJob.java
@@ -0,0 +1,25 @@
+package org.dromara.common.quartz.job;
+
+import lombok.extern.slf4j.Slf4j;
+import org.quartz.JobExecutionContext;
+import org.springframework.scheduling.quartz.QuartzJobBean;
+
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
+
+/**
+ * 演示定时任务 - 每秒打印当前时间
+ *
+ * @author ruoyi
+ */
+@Slf4j
+public class DemoTimeJob extends QuartzJobBean {
+
+ private static final DateTimeFormatter FORMATTER = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
+
+ @Override
+ protected void executeInternal(JobExecutionContext context) {
+ log.info("[Quartz Demo] 当前时间: {}", LocalDateTime.now().format(FORMATTER));
+ }
+
+}
diff --git a/ruoyi-common/ruoyi-common-quartz/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/ruoyi-common/ruoyi-common-quartz/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
new file mode 100644
index 0000000..595a941
--- /dev/null
+++ b/ruoyi-common/ruoyi-common-quartz/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
@@ -0,0 +1 @@
+org.dromara.common.quartz.config.QuartzAutoConfiguration
diff --git a/script/sql/zfjd-refactoring-v1/003-删除暂时没有作用的表.sql b/script/sql/zfjd-refactoring-v1/003-删除暂时没有作用的表.sql
index effa61b..8522517 100644
--- a/script/sql/zfjd-refactoring-v1/003-删除暂时没有作用的表.sql
+++ b/script/sql/zfjd-refactoring-v1/003-删除暂时没有作用的表.sql
@@ -15,7 +15,7 @@ drop table twkf_movelog;
drop table twkf_moveset;
drop table twkf_return_info;
# Quartz Scheduler
-drop table qrtz_blob_triggers;
+/*drop table qrtz_blob_triggers;
drop table qrtz_calendars;
drop table qrtz_cron_triggers;
drop table qrtz_fired_triggers;
@@ -25,7 +25,7 @@ drop table qrtz_scheduler_state;
drop table qrtz_simple_triggers;
drop table qrtz_simprop_triggers;
drop table qrtz_triggers;
-drop table qrtz_job_details;
+drop table qrtz_job_details;*/
# question相关
drop table question_answer;
drop table question_bank;
diff --git a/zdxt-web-server/zdxt-admin-web-server/pom.xml b/zdxt-web-server/zdxt-admin-web-server/pom.xml
index 3269a41..fbdadaf 100644
--- a/zdxt-web-server/zdxt-admin-web-server/pom.xml
+++ b/zdxt-web-server/zdxt-admin-web-server/pom.xml
@@ -76,6 +76,11 @@
ruoyi-job
+
+ org.dromara
+ ruoyi-common-quartz
+
+
org.dromara
diff --git a/zdxt-web-server/zdxt-admin-web-server/src/main/resources/application-dev.yml b/zdxt-web-server/zdxt-admin-web-server/src/main/resources/application-dev.yml
index 0fe69ab..9ec8459 100644
--- a/zdxt-web-server/zdxt-admin-web-server/src/main/resources/application-dev.yml
+++ b/zdxt-web-server/zdxt-admin-web-server/src/main/resources/application-dev.yml
@@ -36,6 +36,12 @@ snail-job:
# 客户端ip指定
host:
+--- # Quartz 定时任务配置
+spring:
+ quartz:
+ # 是否自动启动调度器,设为false则禁用全部定时任务
+ auto-startup: true
+
--- # 数据源配置
spring:
datasource:
diff --git a/zdxt-web-server/zdxt-admin-web-server/src/main/resources/application.yml b/zdxt-web-server/zdxt-admin-web-server/src/main/resources/application.yml
index 9f5066b..8d6adc3 100644
--- a/zdxt-web-server/zdxt-admin-web-server/src/main/resources/application.yml
+++ b/zdxt-web-server/zdxt-admin-web-server/src/main/resources/application.yml
@@ -249,6 +249,12 @@ websocket:
# 设置访问源地址
allowedOrigins: '*'
+--- # Quartz 定时任务配置
+spring:
+ quartz:
+ # 是否自动启动调度器,设为false则禁用全部定时任务
+ auto-startup: true
+
--- # warm-flow工作流配置
warm-flow:
# 是否开启工作流,默认true