package com.ruoyi.web; 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.domain.R; import com.ruoyi.common.core.page.TableDataInfo; import com.ruoyi.common.enums.BusinessType; import com.ruoyi.domain.SystemReviewTask; import com.ruoyi.service.SystemReviewTaskService; import com.ruoyi.web.request.*; import com.ruoyi.web.response.SystemReviewTaskViewResponse; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.apache.skywalking.apm.toolkit.trace.Tag; import org.apache.skywalking.apm.toolkit.trace.Tags; import org.apache.skywalking.apm.toolkit.trace.Trace; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RestController; import java.util.ArrayList; import java.util.List; @Api(tags = "体系审查任务") @RestController @RequestMapping("/system/review/task") public class SystemReviewTaskController extends BaseController { @Autowired private SystemReviewTaskService systemReviewTaskService; @ApiOperation("创建体系审查任务") @Trace @Tags({@Tag(key = "param", value = "arg[0]"), @Tag(key = "result", value = "returnedObj")}) @Log(title = "体系审查任务", businessType = BusinessType.INSERT) @RequestMapping(method = RequestMethod.POST, value = "/create") public R<String> create(@Validated @RequestBody SystemReviewTaskCreateRequest request) { systemReviewTaskService.createTaskTest(request); return R.ok(); } @ApiOperation("查看体系审查任务详情") @Trace @Tags({@Tag(key = "param", value = "arg[0]"), @Tag(key = "result", value = "returnedObj")}) @RequestMapping(method = RequestMethod.POST, value = "/view") public R<SystemReviewTaskViewResponse> view(@Validated @RequestBody SystemReviewTaskViewRequest request) { SystemReviewTaskViewResponse systemReviewTaskViewResponse = systemReviewTaskService.view(request.getTaskId()); return R.ok(systemReviewTaskViewResponse); } @ApiOperation("启动体系审查任务") @Trace @Tags({@Tag(key = "param", value = "arg[0]"), @Tag(key = "result", value = "returnedObj")}) @RequestMapping(method = RequestMethod.POST, value = "/start") public R<String> start(@Validated @RequestBody SystemReviewTaskStartRequest request) { systemReviewTaskService.start(request); return R.ok(); } @ApiOperation("确认体系审查问卷") @Trace @Tags({@Tag(key = "param", value = "arg[0]"), @Tag(key = "result", value = "returnedObj")}) @RequestMapping(method = RequestMethod.POST, value = "/confirm") public R<String> confirm(@Validated @RequestBody SystemReviewTaskConfirmRequest request) { systemReviewTaskService.confirm(request); return R.ok(); } @ApiOperation("提交体系审查任务") @Trace @Tags({@Tag(key = "param", value = "arg[0]"), @Tag(key = "result", value = "returnedObj")}) @RequestMapping(method = RequestMethod.POST, value = "/submit") public R<String> submit(@Validated @RequestBody SystemReviewTaskSubmitRequest request) { systemReviewTaskService.submit(request); return R.ok(); } @ApiOperation("查询处理中的任务") @Trace @Tags({@Tag(key = "param", value = "arg[0]"), @Tag(key = "result", value = "returnedObj")}) @RequestMapping(method = RequestMethod.POST, value = "/findInProcess") public TableDataInfo<SystemReviewTask> findInProcess(@Validated @RequestBody SystemReviewTaskFindInProcessRequest request) { startPage(request); return getDataTable(systemReviewTaskService.findListInProcess()); } @ApiOperation("查询处理完成的任务") @Trace @Tags({@Tag(key = "param", value = "arg[0]"), @Tag(key = "result", value = "returnedObj")}) @RequestMapping(method = RequestMethod.POST, value = "/findInFinish") public TableDataInfo<SystemReviewTask> findInFinish(@Validated @RequestBody SystemReviewTaskFindFinishRequest request) { startPage(request); return getDataTable(systemReviewTaskService.findListByStatus(SystemReviewTask.STATUS_FINISH)); } @ApiOperation("生成PDF报告") @Trace @Tags({@Tag(key = "param", value = "arg[0]"), @Tag(key = "result", value = "returnedObj")}) @RequestMapping(method = RequestMethod.POST, value = "/exportPDF") public R<SystemReviewTaskExportPDFResponse> exportPDF() { return null; } }