From a2d3c6f8d43fbf9daa372fea53acf50642094de4 Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期六, 16 五月 2026 10:49:06 +0800
Subject: [PATCH] feat(task): 添加定时任务启用禁用功能

---
 src/main/java/com/ruoyi/inspectiontask/controller/TimingTaskController.java |   78 ++++++++++++++++++++++-----------------
 1 files changed, 44 insertions(+), 34 deletions(-)

diff --git a/src/main/java/com/ruoyi/inspectiontask/controller/TimingTaskController.java b/src/main/java/com/ruoyi/inspectiontask/controller/TimingTaskController.java
index ccaf969..2fce72f 100644
--- a/src/main/java/com/ruoyi/inspectiontask/controller/TimingTaskController.java
+++ b/src/main/java/com/ruoyi/inspectiontask/controller/TimingTaskController.java
@@ -7,71 +7,81 @@
 import com.ruoyi.framework.aspectj.lang.enums.BusinessType;
 import com.ruoyi.framework.web.controller.BaseController;
 import com.ruoyi.framework.web.domain.R;
+import com.ruoyi.inspectiontask.dto.InspectionTaskDto;
 import com.ruoyi.inspectiontask.dto.TimingTaskDto;
 import com.ruoyi.inspectiontask.pojo.TimingTask;
+import com.ruoyi.inspectiontask.service.InspectionTaskService;
 import com.ruoyi.inspectiontask.service.TimingTaskService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.quartz.SchedulerException;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
 
 import javax.servlet.http.HttpServletResponse;
+import java.util.List;
 
-/**
- * @author :yys
- * @date : 2025/9/19 10:53
- */
 @RestController
-@Api(tags = "宸℃绠$悊")
+@Api(tags = "Inspection Timing Task")
 @RequestMapping("/timingTask")
 public class TimingTaskController extends BaseController {
-
 
     @Autowired
     private TimingTaskService timingTaskService;
 
-    /**
-     * 瀹氭椂宸℃浠诲姟琛ㄦ煡璇�
-     */
+    @Autowired
+    private InspectionTaskService inspectionTaskService;
+
     @GetMapping("/list")
-    @ApiOperation(value = "瀹氭椂浠诲姟鍒楄〃")
+    @ApiOperation(value = "Timing task list")
     public R<IPage<TimingTaskDto>> list(Page<TimingTask> page, TimingTask timingTask) {
-        IPage<TimingTaskDto> list = timingTaskService.selectTimingTaskList(page,timingTask);
+        IPage<TimingTaskDto> list = timingTaskService.selectTimingTaskList(page, timingTask);
         return R.ok(list);
     }
 
-    /**
-     * 瀵煎嚭
-     */
-    @PostMapping("/export")
-    @ApiOperation(value = "瀵煎嚭瀹氭椂浠诲姟")
-    public void export(HttpServletResponse response) {
-        Page page = new Page<>(-1,-1);
-        TimingTaskDto timingTask = new TimingTaskDto();
-        IPage<TimingTaskDto> list = timingTaskService.selectTimingTaskList(page,timingTask);
-        ExcelUtil<TimingTaskDto> util = new ExcelUtil<>(TimingTaskDto.class);
-        util.exportExcel(response, list.getRecords(), "瀵煎嚭瀹氭椂浠诲姟");
+    @GetMapping("/recordList/{timingId}")
+    @ApiOperation(value = "Inspection records by timing task id")
+    public R<List<InspectionTaskDto>> recordList(@PathVariable Long timingId) {
+        return R.ok(inspectionTaskService.selectInspectionTaskRecordListByTimingId(timingId));
     }
 
-    /**
-     * 瀹氭椂宸℃浠诲姟琛ㄦ柊澧炰慨鏀�
-     */
+    @PostMapping("/export")
+    @ApiOperation(value = "Export timing tasks")
+    public void export(HttpServletResponse response) {
+        Page page = new Page<>(-1, -1);
+        TimingTaskDto timingTask = new TimingTaskDto();
+        IPage<TimingTaskDto> list = timingTaskService.selectTimingTaskList(page, timingTask);
+        ExcelUtil<TimingTaskDto> util = new ExcelUtil<>(TimingTaskDto.class);
+        util.exportExcel(response, list.getRecords(), "timing_task_export");
+    }
+
     @PostMapping("/addOrEditTimingTask")
-    @ApiOperation(value = "鏂板淇敼瀹氭椂浠诲姟")
-    @Log(title = "瀹氭椂浠诲姟", businessType = BusinessType.INSERT)
+    @ApiOperation(value = "Create or update timing task")
+    @Log(title = "Timing Task", businessType = BusinessType.INSERT)
     public R addOrEditTimingTask(@RequestBody TimingTaskDto timingTaskDto) throws SchedulerException {
         return R.ok(timingTaskService.addOrEditTimingTask(timingTaskDto));
     }
 
-    /**
-     * 瀹氭椂宸℃浠诲姟琛ㄥ垹闄�
-     */
+    @PostMapping("/changeEnable")
+    @ApiOperation(value = "Change enable status")
+    @Log(title = "Timing Task", businessType = BusinessType.UPDATE)
+    public R changeEnable(@RequestBody TimingTask timingTask) throws SchedulerException {
+        if (timingTask.getId() == null || timingTask.getIsEnabled() == null) {
+            return R.fail("id and isEnabled are required");
+        }
+        return R.ok(timingTaskService.changeEnable(timingTask.getId(), timingTask.getIsEnabled()));
+    }
+
     @DeleteMapping("/delTimingTask")
-    @ApiOperation(value = "鍒犻櫎瀹氭椂浠诲姟")
-    @Log(title = "瀹氭椂浠诲姟", businessType = BusinessType.DELETE)
+    @ApiOperation(value = "Delete timing tasks")
+    @Log(title = "Timing Task", businessType = BusinessType.DELETE)
     public R remove(@RequestBody Long[] ids) {
         return R.ok(timingTaskService.delByIds(ids));
     }
-
 }

--
Gitblit v1.9.3