From 1729474b4c7ffacb1790bb70981e64e7744bffb2 Mon Sep 17 00:00:00 2001
From: gongchunyi <deslre0381@gmail.com>
Date: 星期一, 26 一月 2026 17:51:06 +0800
Subject: [PATCH] feat: BOM导入模板下载接口,导入导出接口添加权限
---
src/main/java/com/ruoyi/inspectiontask/service/impl/TimingTaskServiceImpl.java | 33 +++++++++++++++++++++++++++++----
1 files changed, 29 insertions(+), 4 deletions(-)
diff --git a/src/main/java/com/ruoyi/inspectiontask/service/impl/TimingTaskServiceImpl.java b/src/main/java/com/ruoyi/inspectiontask/service/impl/TimingTaskServiceImpl.java
index 33c815e..6607d68 100644
--- a/src/main/java/com/ruoyi/inspectiontask/service/impl/TimingTaskServiceImpl.java
+++ b/src/main/java/com/ruoyi/inspectiontask/service/impl/TimingTaskServiceImpl.java
@@ -1,5 +1,6 @@
package com.ruoyi.inspectiontask.service.impl;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -47,7 +48,12 @@
@Override
public IPage<TimingTaskDto> selectTimingTaskList(Page<TimingTask> page, TimingTask timingTask) {
// 1. 鍏堝垎椤垫煡璇㈠畾鏃朵换鍔℃暟鎹�
- IPage<TimingTask> taskPage = timingTaskMapper.selectPage(page, null);
+ // 鏋勫缓鏌ヨ鏉′欢
+ LambdaQueryWrapper<TimingTask> queryWrapper = new LambdaQueryWrapper<>();
+ if (StringUtils.isNotBlank(timingTask.getTaskName())) {
+ queryWrapper.like(TimingTask::getTaskName, timingTask.getTaskName());
+ }
+ IPage<TimingTask> taskPage = timingTaskMapper.selectPage(page, queryWrapper);
// 2. 濡傛灉娌℃湁鏁版嵁锛岀洿鎺ヨ繑鍥炵┖鍒嗛〉
if (taskPage.getRecords().isEmpty()) {
@@ -66,6 +72,7 @@
// 鏀堕泦宸℃浜篒D锛堝涓狪D浠ラ�楀彿鍒嗛殧锛�
taskPage.getRecords().forEach(task -> {
+ task.setDateStr(task.getCreateTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd")));
if (StringUtils.isNotBlank(task.getInspectorIds())) {
Arrays.stream(task.getInspectorIds().split(","))
.filter(StringUtils::isNotBlank)
@@ -118,7 +125,18 @@
public int addOrEditTimingTask(TimingTaskDto timingTaskDto) throws SchedulerException {
TimingTask timingTask = new TimingTask();
BeanUtils.copyProperties(timingTaskDto, timingTask);
+ // 1. 瑙f瀽瀛楃涓蹭负 LocalDate锛堝彧鍖呭惈骞存湀鏃ワ級
+ DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
+ LocalDate localDate = LocalDate.now();
+ if(StringUtils.isNotEmpty(timingTaskDto.getDateStr())){
+ localDate = LocalDate.parse(timingTaskDto.getDateStr(), formatter);
+ }
+ // 2. 鑾峰彇褰撳墠绯荤粺鐨� LocalTime锛堝寘鍚椂鍒嗙锛�
+ LocalTime currentTime = LocalTime.now();
+ // 3. 鍚堝苟 LocalDate 鍜屽綋鍓� LocalTime 涓� LocalDateTime
+ LocalDateTime localDateTime = LocalDateTime.of(localDate, currentTime);
+ timingTask.setCreateTime(localDateTime);
// 璁剧疆鍒涘缓浜轰俊鎭拰榛樿鍊�
if (Objects.isNull(timingTaskDto.getId())) {
timingTask.setRegistrationDate(LocalDate.now());
@@ -127,7 +145,6 @@
// 璁$畻棣栨鎵ц鏃堕棿
LocalDateTime firstExecutionTime = calculateFirstExecutionTime(timingTask);
timingTask.setNextExecutionTime(firstExecutionTime);
-
int result = timingTaskMapper.insert(timingTask);
if (result > 0) {
// 鏂板鎴愬姛鍚庢坊鍔犲埌璋冨害鍣�
@@ -135,6 +152,8 @@
}
return result;
} else {
+
+
int result = timingTaskMapper.updateById(timingTask);
if (result > 0) {
// 鏇存柊鎴愬姛鍚庨噸鏂拌皟搴︿换鍔�
@@ -144,7 +163,7 @@
}
}
- private LocalDateTime calculateFirstExecutionTime(TimingTask task) {
+ public LocalDateTime calculateFirstExecutionTime(TimingTask task) {
// 鏍规嵁棰戠巼绫诲瀷鍜岃鎯呰绠楅娆℃墽琛屾椂闂�
String frequencyType = task.getFrequencyType();
if ("DAILY".equals(frequencyType)) {
@@ -444,7 +463,13 @@
@Override
public int delByIds(Long[] ids) {
- return timingTaskMapper.deleteBatchIds(Arrays.asList(ids));
+ int i = timingTaskMapper.deleteBatchIds(Arrays.asList(ids));
+ if(i > 0){
+ for (Long id : ids) {
+ timingTaskScheduler.unscheduleTimingTask(id);
+ }
+ }
+ return i;
}
}
--
Gitblit v1.9.3