|
|
@@ -0,0 +1,174 @@
|
|
|
+package com.xunmei.core.drill.controller;
|
|
|
+
|
|
|
+
|
|
|
+import com.alibaba.nacos.shaded.com.google.gson.Gson;
|
|
|
+import com.xunmei.common.core.domain.drill.domain.CoreDrillTask;
|
|
|
+import com.xunmei.common.core.domain.drill.dto.*;
|
|
|
+import com.xunmei.common.core.domain.drill.vo.CoreDrillTaskPageVo;
|
|
|
+import com.xunmei.common.core.domain.drill.vo.CoreDrillTaskRecPageVo;
|
|
|
+import com.xunmei.common.core.domain.drill.vo.CoreDrillTaskRecTaskPageVo;
|
|
|
+import com.xunmei.common.core.event.WorkTimeChangeEvent;
|
|
|
+import com.xunmei.common.core.web.controller.BaseController;
|
|
|
+import com.xunmei.common.core.web.domain.AjaxResult;
|
|
|
+import com.xunmei.common.core.web.page.TableDataInfo;
|
|
|
+import com.xunmei.common.log.annotation.Log;
|
|
|
+import com.xunmei.common.log.enums.BusinessType;
|
|
|
+import com.xunmei.common.security.annotation.InnerAuth;
|
|
|
+import com.xunmei.common.security.annotation.RequiresPermissions;
|
|
|
+import com.xunmei.core.drill.service.ICoreDrillTaskService;
|
|
|
+import io.swagger.annotations.Api;
|
|
|
+import io.swagger.annotations.ApiOperation;
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.validation.annotation.Validated;
|
|
|
+import org.springframework.web.bind.annotation.*;
|
|
|
+
|
|
|
+import javax.servlet.http.HttpServletResponse;
|
|
|
+import java.io.IOException;
|
|
|
+import java.util.Date;
|
|
|
+
|
|
|
+/**
|
|
|
+ * 演练任务Controller
|
|
|
+ *
|
|
|
+ * @author xunmei
|
|
|
+ * @date 2023-09-11
|
|
|
+ */
|
|
|
+@Api(tags = {"CoreDrillTask"})
|
|
|
+@RestController
|
|
|
+@RequestMapping("/app/drill/task")
|
|
|
+public class CoreDrillTaskAppController extends BaseController {
|
|
|
+ @Autowired
|
|
|
+ private ICoreDrillTaskService coreDrillTaskService;
|
|
|
+
|
|
|
+
|
|
|
+ @ApiOperation(value = "查询预案任务分页")
|
|
|
+// @RequiresPermissions("core:drillTask:list")
|
|
|
+ @GetMapping("/list")
|
|
|
+ public TableDataInfo<CoreDrillTaskPageVo> list(CoreDrillTaskPageDto coreDrillTask) {
|
|
|
+ return coreDrillTaskService.selectPage(coreDrillTask);
|
|
|
+ }
|
|
|
+
|
|
|
+ @ApiOperation(value = "获取预案任务详细信息")
|
|
|
+// @RequiresPermissions("core:drillTask:query")
|
|
|
+ @GetMapping(value = "/{id}")
|
|
|
+ public AjaxResult getInfo(@PathVariable("id") Long id) {
|
|
|
+ return success(coreDrillTaskService.selectCoreDrillTaskById(id));
|
|
|
+ }
|
|
|
+
|
|
|
+ @ApiOperation(value = "新增预案任务")
|
|
|
+// @RequiresPermissions("core:drillTask:add")
|
|
|
+ @Log(title = "预案任务", businessType = BusinessType.INSERT)
|
|
|
+ @PostMapping
|
|
|
+ public AjaxResult add(@RequestBody CoreDrillTask coreDrillTask) {
|
|
|
+ return toAjax(coreDrillTaskService.insertCoreDrillTask(coreDrillTask));
|
|
|
+ }
|
|
|
+
|
|
|
+ @ApiOperation(value = "任务登记")
|
|
|
+// @RequiresPermissions("core:drillTask:edit")
|
|
|
+ @Log(title = "预案任务", businessType = BusinessType.UPDATE)
|
|
|
+ @PutMapping
|
|
|
+ public AjaxResult edit(@RequestBody @Validated CoreDrillTaskEditDto coreDrillTask) {
|
|
|
+ return toAjax(coreDrillTaskService.updateCoreDrillTask(coreDrillTask));
|
|
|
+ }
|
|
|
+
|
|
|
+ @ApiOperation(value = "ApiOperation")
|
|
|
+// @RequiresPermissions("core:drillTask:remove")
|
|
|
+ @Log(title = "预案任务", businessType = BusinessType.DELETE)
|
|
|
+ @DeleteMapping("/{ids}")
|
|
|
+ public AjaxResult remove(@PathVariable Long[] ids) {
|
|
|
+ return toAjax(coreDrillTaskService.deleteCoreDrillTaskByIds(ids));
|
|
|
+ }
|
|
|
+
|
|
|
+ @ApiOperation(value = "预案演练排行")
|
|
|
+// @RequiresPermissions("core:drillTask:list")
|
|
|
+ @PostMapping("report")
|
|
|
+ public AjaxResult report(@RequestBody @Validated CoreDrillTaskReportDto request) {
|
|
|
+ return success(coreDrillTaskService.selectCoreDrillTaskReport(request));
|
|
|
+ }
|
|
|
+
|
|
|
+ @ApiOperation(value = "导出预案演练排行报表")
|
|
|
+// @RequiresPermissions("core:drillTask:list")
|
|
|
+ @PostMapping("exportReport")
|
|
|
+ public void exportReport(@Validated CoreDrillTaskReportDto request,HttpServletResponse response) {
|
|
|
+ coreDrillTaskService.exportReport(request,response);
|
|
|
+ }
|
|
|
+
|
|
|
+ @ApiOperation(value = "预案培训签名")
|
|
|
+// @RequiresPermissions("core:drillTask:sign")
|
|
|
+ @PostMapping("sign")
|
|
|
+ public AjaxResult sign(@RequestBody @Validated CoreDrillTaskSignDto request) {
|
|
|
+ return success(coreDrillTaskService.sign(request));
|
|
|
+ }
|
|
|
+
|
|
|
+ @ApiOperation(value = "App端获取签名情况")
|
|
|
+// @RequiresPermissions("core:drillTask:list")
|
|
|
+ @GetMapping("/signUserList/{id}")
|
|
|
+ public AjaxResult signUserList(@PathVariable Long id) {
|
|
|
+ return success(coreDrillTaskService.signUserList(id));
|
|
|
+ }
|
|
|
+
|
|
|
+ @ApiOperation(value = "生成预案培训登记簿")
|
|
|
+ @GetMapping("build/{id}")
|
|
|
+ public AjaxResult pdf(@PathVariable("id") Long id) {
|
|
|
+ return coreDrillTaskService.buildDrillTaskPdf(id);
|
|
|
+ }
|
|
|
+
|
|
|
+ @ApiOperation(value = "生成任务")
|
|
|
+ @GetMapping(value = "/buildDrillTask")
|
|
|
+ AjaxResult buildDrillTask(@RequestParam(required = false, value = "cycle") Integer cycle, @RequestParam(required = false, value = "date") Date date) {
|
|
|
+ return success(coreDrillTaskService.buildDrillTask(cycle, date));
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ @ApiOperation(value = "预案演练任务评价")
|
|
|
+// @RequiresPermissions("core:drillTask:evaluate")
|
|
|
+ @PostMapping("/evaluate")
|
|
|
+ public AjaxResult evaluate(@RequestBody @Validated CoreDrillTaskEvaluateDto request) {
|
|
|
+ return success(coreDrillTaskService.evaluate(request));
|
|
|
+ }
|
|
|
+
|
|
|
+ @ApiOperation(value = "优秀案例管理分页",notes = "需要被确认的优秀案例")
|
|
|
+// @RequiresPermissions("core:drillTask:list")
|
|
|
+ @PostMapping("/recList")
|
|
|
+ public TableDataInfo<CoreDrillTaskRecPageVo> recList(@RequestBody @Validated CoreDrillTaskRecPageDto request) {
|
|
|
+ return coreDrillTaskService.recList(request);
|
|
|
+ }
|
|
|
+
|
|
|
+ @ApiOperation(value = "优秀案例分页",notes = "已经被确认的优秀案例")
|
|
|
+// @RequiresPermissions("core:drillTask:list")
|
|
|
+ @PostMapping("/recTaskList")
|
|
|
+ public TableDataInfo<CoreDrillTaskRecTaskPageVo> recTaskList(@RequestBody @Validated CoreDrillTaskRecPageDto request) {
|
|
|
+ return coreDrillTaskService.recTaskList(request);
|
|
|
+ }
|
|
|
+
|
|
|
+ @ApiOperation(value = "优秀案例推荐",notes = "推荐优秀案例")
|
|
|
+ //@RequiresPermissions("core:drillTask:edit")
|
|
|
+ @PostMapping("/doRecTask")
|
|
|
+ public AjaxResult doRecTask(@RequestBody @Validated CoreDrillTaskDoRec request) {
|
|
|
+ return success(coreDrillTaskService.doRecTask(request));
|
|
|
+ }
|
|
|
+
|
|
|
+ @ApiOperation(value = "未完成任务修改成已过期")
|
|
|
+ @GetMapping("/updateDrillTaskStatus")
|
|
|
+ public AjaxResult updateDrillTaskStatus() {
|
|
|
+ return toAjax(coreDrillTaskService.updateDrillTaskStatus());
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 导出excel
|
|
|
+ */
|
|
|
+ @ApiOperation(value = "导出演练任务")
|
|
|
+ //@RequiresPermissions("core:eduTask:export")
|
|
|
+ @Log(title = "导出培训任务", businessType = BusinessType.EXPORT)
|
|
|
+ @PostMapping("/export")
|
|
|
+ public void export(CoreDrillTaskPageDto request, HttpServletResponse response) throws IOException {
|
|
|
+ coreDrillTaskService.export(request, response);
|
|
|
+ }
|
|
|
+
|
|
|
+ @PostMapping(value = "/change")
|
|
|
+ @InnerAuth
|
|
|
+ void rebuildTask(@RequestBody String event){
|
|
|
+ coreDrillTaskService.taskChangeForTimeWorkChange(new Gson().fromJson(event, WorkTimeChangeEvent.class));
|
|
|
+ }
|
|
|
+
|
|
|
+}
|