From cf330c6a6c2ae7ec86d20de465d5af27a4684cf6 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期二, 03 十一月 2026 19:16:58 +0800
Subject: [PATCH] 巡检任务频次增加“每年”支持
---
src/main/java/com/ruoyi/inspectiontask/service/impl/TimingTaskScheduler.java | 10 ++++++++++
1 files changed, 10 insertions(+), 0 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..59248ab 100644
--- a/src/main/java/com/ruoyi/inspectiontask/service/impl/TimingTaskScheduler.java
+++ b/src/main/java/com/ruoyi/inspectiontask/service/impl/TimingTaskScheduler.java
@@ -145,6 +145,8 @@
// 浣跨敤switch纭繚鏉′欢浜掓枼
String frequencyType = task.getFrequencyType().toUpperCase(); // 缁熶竴杞负澶у啓姣旇緝
switch (frequencyType) {
+ case "YEARLY":
+ return convertYearlyToCron(task.getFrequencyDetail());
case "DAILY":
return convertDailyToCron(task.getFrequencyDetail());
case "WEEKLY":
@@ -158,6 +160,14 @@
}
}
+ // 姣忓勾浠诲姟杞崲锛坒requencyDetail 鏍煎紡涓� "鏈�,鏃�"锛岄粯璁� 07:00 鎵ц锛�
+ private String convertYearlyToCron(String frequencyDetail) {
+ String[] parts = validateAndSplit(frequencyDetail, ",", 2);
+ int month = validateMonth(parts[0]);
+ int day = validateDayOfMonth(parts[1]);
+ return String.format("0 0 7 %d %d ? *", day, month);
+ }
+
// 姣忔棩浠诲姟杞崲
private String convertDailyToCron(String frequencyDetail) {
LocalTime time = parseTime(frequencyDetail);
--
Gitblit v1.9.3