From 0a4d548b6bf9cfef252400fb6d6612e45cf5b602 Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期二, 27 十月 2026 13:21:23 +0800
Subject: [PATCH] fix(scheduler): 修复定时任务调度问题并增强系统稳定性
---
src/main/java/com/ruoyi/device/service/impl/MaintenanceTaskJob.java | 11 +++++++++--
1 files changed, 9 insertions(+), 2 deletions(-)
diff --git a/src/main/java/com/ruoyi/device/service/impl/MaintenanceTaskJob.java b/src/main/java/com/ruoyi/device/service/impl/MaintenanceTaskJob.java
index fca829a..fbc1b15 100644
--- a/src/main/java/com/ruoyi/device/service/impl/MaintenanceTaskJob.java
+++ b/src/main/java/com/ruoyi/device/service/impl/MaintenanceTaskJob.java
@@ -2,6 +2,7 @@
import com.ruoyi.device.pojo.DeviceMaintenance;
import com.ruoyi.device.pojo.MaintenanceTask;
+import lombok.RequiredArgsConstructor;
import org.quartz.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.BeanPropertyRowMapper;
@@ -18,9 +19,9 @@
import java.util.Set;
@Component
-@DisallowConcurrentExecution // 绂佹骞跺彂鎵ц鍚屼竴涓狫ob
+@DisallowConcurrentExecution
public class MaintenanceTaskJob implements Job, Serializable {
- private static final long serialVersionUID = 1L; // 蹇呴』瀹氫箟搴忓垪鍖朓D
+ private static final long serialVersionUID = 1L;
@Autowired
private DeviceMaintenanceServiceImpl deviceMaintenanceService;
@@ -46,6 +47,10 @@
MaintenanceTask timingTask = tasks.isEmpty() ? null : tasks.get(0);
if (timingTask == null) {
throw new JobExecutionException("MaintenanceTaskJob鎵句笉鍒板畾鏃朵换鍔�: " + taskId);
+ }
+ // 浠诲姟宸插仠鐢ㄦ椂涓嶇敓鎴愪繚鍏昏褰�
+ if (!timingTask.isActive()) {
+ return;
}
// 2. 鍒涘缓骞朵繚瀛樺贰妫�浠诲姟璁板綍 - 杩欏氨鏄偍鎻愪緵鐨勪唬鐮佸簲璇ユ斁鐨勪綅缃�
@@ -92,11 +97,13 @@
inspectionTask.setMaintenanceTaskId(timingTask.getId());
inspectionTask.setDeviceLedgerId(timingTask.getTaskId());
inspectionTask.setMaintenancePlanTime(LocalDateTime.now());
+ inspectionTask.setMaintenanceActuallyName(timingTask.getMaintenancePerson());
inspectionTask.setFrequencyType(timingTask.getFrequencyType());
inspectionTask.setFrequencyDetail(timingTask.getFrequencyDetail());
inspectionTask.setTenantId(timingTask.getTenantId());
inspectionTask.setStatus(0);
inspectionTask.setDeviceModel(timingTask.getDeviceModel());
+ inspectionTask.setMachineryCategory(timingTask.getMachineryCategory());
inspectionTask.setCreateUser(Integer.parseInt(timingTask.getRegistrantId().toString()));
inspectionTask.setUpdateTime(LocalDateTime.now());
inspectionTask.setCreateTime(LocalDateTime.now());
--
Gitblit v1.9.3