Files
rtsp-video-analysis-system/ruoyi-video/src/main/java/com/ruoyi/video/controller/InspectionTaskController.java

117 lines
3.8 KiB
Java
Raw Normal View History

package com.ruoyi.video.controller;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.video.domain.InspectionTask;
import com.ruoyi.video.service.InspectionTaskService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import jakarta.servlet.http.HttpServletResponse;
import java.util.List;
/**
* 巡检任务Controller
*
* @Author: orange
* @CreateTime: 2025-01-16
*/
@RestController
@RequestMapping("/video/inspection")
public class InspectionTaskController extends BaseController {
@Autowired
private InspectionTaskService inspectionTaskService;
/**
* 查询巡检任务列表
*/
@GetMapping("/list")
public TableDataInfo list(InspectionTask inspectionTask) {
startPage();
List<InspectionTask> list = inspectionTaskService.selectInspectionTaskList(inspectionTask);
return getDataTable(list);
}
/**
* 导出巡检任务列表
*/
@Log(title = "巡检任务", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(HttpServletResponse response, InspectionTask inspectionTask) {
List<InspectionTask> list = inspectionTaskService.selectInspectionTaskList(inspectionTask);
ExcelUtil<InspectionTask> util = new ExcelUtil<InspectionTask>(InspectionTask.class);
util.exportExcel(response, list, "巡检任务数据");
}
/**
* 获取巡检任务详细信息
*/
@GetMapping(value = "/{taskId}")
public AjaxResult getInfo(@PathVariable("taskId") Long taskId) {
return success(inspectionTaskService.selectInspectionTaskById(taskId));
}
/**
* 新增巡检任务
*/
@Log(title = "巡检任务", businessType = BusinessType.INSERT)
@PostMapping
public AjaxResult add(@RequestBody InspectionTask inspectionTask) {
return toAjax(inspectionTaskService.insertInspectionTask(inspectionTask));
}
/**
* 修改巡检任务
*/
@Log(title = "巡检任务", businessType = BusinessType.UPDATE)
@PutMapping
public AjaxResult edit(@RequestBody InspectionTask inspectionTask) {
return toAjax(inspectionTaskService.updateInspectionTask(inspectionTask));
}
/**
* 删除巡检任务
*/
@Log(title = "巡检任务", businessType = BusinessType.DELETE)
@DeleteMapping("/{taskIds}")
public AjaxResult remove(@PathVariable Long[] taskIds) {
return toAjax(inspectionTaskService.deleteInspectionTaskByIds(taskIds));
}
/**
* 启动巡检任务
*/
@Log(title = "启动巡检任务", businessType = BusinessType.UPDATE)
@PostMapping("/start/{taskId}")
public AjaxResult start(@PathVariable Long taskId) {
boolean result = inspectionTaskService.startInspectionTask(taskId);
return result ? success("启动成功") : error("启动失败");
}
/**
* 停止巡检任务
*/
@Log(title = "停止巡检任务", businessType = BusinessType.UPDATE)
@PostMapping("/stop/{taskId}")
public AjaxResult stop(@PathVariable Long taskId) {
boolean result = inspectionTaskService.stopInspectionTask(taskId);
return result ? success("停止成功") : error("停止失败");
}
/**
* 手动执行巡检任务
*/
@Log(title = "执行巡检任务", businessType = BusinessType.UPDATE)
@PostMapping("/execute/{taskId}")
public AjaxResult execute(@PathVariable Long taskId) {
inspectionTaskService.executeInspectionTask(taskId);
return success("任务已提交执行");
}
}