From 1704e30de33833817a5fce4c4ab0b94ac8ce1cc6 Mon Sep 17 00:00:00 2001
From: hsy <1029150275@qq.com>
Date: 星期一, 31 八月 2026 17:32:31 +0800
Subject: [PATCH] fix: 修复多处表单验证与数据流转的缺陷,优化系统消息推送逻辑
---
src/main/java/com/ruoyi/device/service/impl/MaintenanceTaskJob.java | 39 +++++++++++++++++++++++++++++++++++++--
1 files changed, 37 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 09d5d77..049fe6f 100644
--- a/src/main/java/com/ruoyi/device/service/impl/MaintenanceTaskJob.java
+++ b/src/main/java/com/ruoyi/device/service/impl/MaintenanceTaskJob.java
@@ -8,7 +8,11 @@
import org.springframework.jdbc.core.BeanPropertyRowMapper;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Component;
+import com.ruoyi.project.system.service.ISysNoticeService;
+import com.ruoyi.project.system.domain.SysNotice;
+import com.ruoyi.project.system.service.impl.UnipushService;
+import java.util.Collections;
import java.io.Serializable;
import java.time.DayOfWeek;
import java.time.LocalDateTime;
@@ -28,6 +32,12 @@
@Autowired
private JdbcTemplate jdbcTemplate;
+
+ @Autowired
+ private ISysNoticeService sysNoticeService;
+
+ @Autowired
+ private UnipushService unipushService;
@Override
public void execute(JobExecutionContext context) throws JobExecutionException {
@@ -52,6 +62,26 @@
// 2. 鍒涘缓骞朵繚瀛樺贰妫�浠诲姟璁板綍 - 杩欏氨鏄偍鎻愪緵鐨勪唬鐮佸簲璇ユ斁鐨勪綅缃�
DeviceMaintenance deviceMaintenance = createInspectionTask(timingTask);
deviceMaintenanceService.save(deviceMaintenance);
+
+ // 缁欐墽琛屼汉鍙戦�佺郴缁熼�氱煡
+ if (timingTask.getExecutorId() != null) {
+ SysNotice notice = new SysNotice();
+ notice.setNoticeTitle("鏂颁繚鍏昏鍒掓彁閱�");
+ notice.setNoticeType("1"); // 1 閫氱煡
+ String dateStr = java.time.LocalDate.now().toString();
+ notice.setNoticeContent("浣犳湁涓�涓柊鐨勮澶囦繚鍏昏鍒� 锛�" + dateStr + " " + timingTask.getTaskName());
+ notice.setStatus("0"); // 姝e父
+ notice.setConsigneeId(timingTask.getExecutorId());
+ notice.setSenderId(0L); // 0浠h〃绯荤粺鍙戦��
+ notice.setTenantId(timingTask.getTenantId());
+ sysNoticeService.insertNotice(notice);
+
+ try {
+ unipushService.sendClientMessage(Collections.singletonList(notice));
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
// 3. 鏇存柊瀹氭椂浠诲姟鐨勬墽琛屾椂闂�
if (!tasks.isEmpty()) {
@@ -93,16 +123,21 @@
inspectionTask.setMaintenanceTaskId(timingTask.getId());
inspectionTask.setDeviceLedgerId(timingTask.getTaskId());
inspectionTask.setMaintenancePlanTime(LocalDateTime.now());
+ inspectionTask.setMaintenanceActuallyName(timingTask.getMaintenancePerson());
+ inspectionTask.setExecutorId(timingTask.getExecutorId());
+ inspectionTask.setMaintenanceType(timingTask.getMaintenanceType());
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()));
+ if (timingTask.getRegistrantId() != null) {
+ inspectionTask.setCreateUser(Integer.parseInt(timingTask.getRegistrantId().toString()));
+ inspectionTask.setUpdateUser(Integer.parseInt(timingTask.getRegistrantId().toString()));
+ }
inspectionTask.setUpdateTime(LocalDateTime.now());
inspectionTask.setCreateTime(LocalDateTime.now());
- inspectionTask.setUpdateUser(Integer.parseInt(timingTask.getRegistrantId().toString()));
return inspectionTask;
}
--
Gitblit v1.9.3