From 66d041ed14b3ed3ed7183a28a5c588e235fc21d0 Mon Sep 17 00:00:00 2001
From: yuan <123@>
Date: 星期二, 26 五月 2026 11:14:07 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev_pro_河南鹤壁' into dev_鹤壁_强信宇_pro
---
src/main/java/com/ruoyi/inspectiontask/service/impl/TimingTaskScheduler.java | 30 ++++++++++++++++++------------
1 files changed, 18 insertions(+), 12 deletions(-)
diff --git a/src/main/java/com/ruoyi/inspectiontask/service/impl/TimingTaskScheduler.java b/src/main/java/com/ruoyi/inspectiontask/service/impl/TimingTaskScheduler.java
index a6179f6..63289a7 100644
--- a/src/main/java/com/ruoyi/inspectiontask/service/impl/TimingTaskScheduler.java
+++ b/src/main/java/com/ruoyi/inspectiontask/service/impl/TimingTaskScheduler.java
@@ -35,6 +35,17 @@
// 鑾峰彇鐜版湁瑙﹀彂鍣ㄥ苟杞崲涓� CronTrigger
Trigger oldTrigger = scheduler.getTrigger(triggerKey);
+ if (oldTrigger == null) {
+ JobKey jobKey = new JobKey("timingTask_" + task.getId());
+ JobDetail jobDetail = scheduler.getJobDetail(jobKey);
+ if (jobDetail != null) {
+ Trigger trigger = buildJobTrigger(task, jobDetail);
+ scheduler.scheduleJob(trigger);
+ } else {
+ scheduleTimingTask(task);
+ }
+ return;
+ }
if (!(oldTrigger instanceof CronTrigger)) {
throw new SchedulerException("Existing trigger is not a CronTrigger");
}
@@ -144,18 +155,13 @@
// 浣跨敤switch纭繚鏉′欢浜掓枼
String frequencyType = task.getFrequencyType().toUpperCase(); // 缁熶竴杞负澶у啓姣旇緝
- switch (frequencyType) {
- case "DAILY":
- return convertDailyToCron(task.getFrequencyDetail());
- case "WEEKLY":
- return convertWeeklyToCron(task.getFrequencyDetail());
- case "MONTHLY":
- return convertMonthlyToCron(task.getFrequencyDetail());
- case "QUARTERLY":
- return convertQuarterlyToCron(task.getFrequencyDetail());
- default:
- throw new IllegalArgumentException("涓嶆敮鎸佺殑棰戠巼绫诲瀷: " + task.getFrequencyType());
- }
+ return switch (frequencyType) {
+ case "DAILY" -> convertDailyToCron(task.getFrequencyDetail());
+ case "WEEKLY" -> convertWeeklyToCron(task.getFrequencyDetail());
+ case "MONTHLY" -> convertMonthlyToCron(task.getFrequencyDetail());
+ case "QUARTERLY" -> convertQuarterlyToCron(task.getFrequencyDetail());
+ default -> throw new IllegalArgumentException("涓嶆敮鎸佺殑棰戠巼绫诲瀷: " + task.getFrequencyType());
+ };
}
// 姣忔棩浠诲姟杞崲
--
Gitblit v1.9.3