From 55d694aaae4e421b5e55cd941500e08f85cb5d4d Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期四, 27 八月 2026 18:21:33 +0800
Subject: [PATCH] feat(sales): 添加框架合同订单功能并优化销售台账管理
---
src/main/java/com/ruoyi/device/service/impl/MaintenanceTaskScheduler.java | 16 +++++++++++++---
1 files changed, 13 insertions(+), 3 deletions(-)
diff --git a/src/main/java/com/ruoyi/device/service/impl/MaintenanceTaskScheduler.java b/src/main/java/com/ruoyi/device/service/impl/MaintenanceTaskScheduler.java
index 384862b..18d426d 100644
--- a/src/main/java/com/ruoyi/device/service/impl/MaintenanceTaskScheduler.java
+++ b/src/main/java/com/ruoyi/device/service/impl/MaintenanceTaskScheduler.java
@@ -1,9 +1,9 @@
package com.ruoyi.device.service.impl;
import com.ruoyi.device.pojo.MaintenanceTask;
+import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.quartz.*;
-import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.time.LocalTime;
@@ -19,10 +19,10 @@
*/
@Service
@Slf4j
+@RequiredArgsConstructor
public class MaintenanceTaskScheduler {
- @Autowired
- private Scheduler scheduler;
+ private final Scheduler scheduler;
/**
* 娣诲姞鏂颁换鍔″埌璋冨害鍣�
@@ -160,6 +160,8 @@
return convertMonthlyToCron(task.getFrequencyDetail());
case "QUARTERLY":
return convertQuarterlyToCron(task.getFrequencyDetail());
+ case "YEARLY":
+ return convertYearlyToCron(task.getFrequencyDetail());
default:
throw new IllegalArgumentException("涓嶆敮鎸佺殑棰戠巼绫诲瀷: " + task.getFrequencyType());
}
@@ -204,6 +206,14 @@
quarterStartMonth);
}
+ private String convertYearlyToCron(String frequencyDetail) {
+ String[] parts = validateAndSplit(frequencyDetail, ",", 3);
+ int month = validateMonth(parts[0]);
+ int day = validateDayOfMonth(parts[1]);
+ LocalTime time = parseTime(parts[2]);
+ return String.format("0 %d %d %d %d ?", time.getMinute(), time.getHour(), day, month);
+ }
+
// 鏂板楠岃瘉鏈堜唤鐨勬柟娉�(1-12)
private int validateMonth(String monthStr) {
try {
--
Gitblit v1.9.3