lohir
2024-10-22 a0e0eca428f47c4d796f1d0917041b072b8e7aac
ycl-server/src/main/java/com/ycl/platform/controller/WorkOrderController.java
@@ -1,15 +1,27 @@
package com.ycl.platform.controller;
import annotation.Log;
import com.ycl.platform.domain.entity.WorkOrderAuditingRecord;
import com.ycl.platform.domain.entity.WorkOrderWhite;
import com.ycl.platform.domain.form.*;
import com.ycl.platform.domain.query.DistributeWorkOrderQuery;
import com.ycl.platform.domain.query.WorkOrderExportQuery;
import com.ycl.platform.domain.query.WorkOrderQuery;
import com.ycl.platform.domain.query.WorkOrderWhiteQuery;
import com.ycl.platform.domain.vo.DistributeWorkOrderVO;
import com.ycl.platform.domain.vo.WorkOrderVO;
import com.ycl.platform.domain.vo.WorkOrderYwConditionRecordVO;
import com.ycl.platform.service.WorkOrderService;
import com.ycl.system.Result;
import com.ycl.system.controller.BaseController;
import com.ycl.system.domain.group.Add;
import com.ycl.system.domain.group.Update;
import com.ycl.system.page.TableDataInfo;
import com.ycl.utils.poi.ExcelUtil;
import enumeration.BusinessType;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.NotEmpty;
import lombok.RequiredArgsConstructor;
import org.springframework.security.access.prepost.PreAuthorize;
@@ -17,7 +29,6 @@
import org.springframework.web.bind.annotation.*;
import java.util.List;
import java.util.Map;
/**
 * 工单 前端控制器
@@ -30,9 +41,16 @@
@Api(value = "工单", tags = "工单管理")
@RestController
@RequestMapping("/work-order")
public class WorkOrderController {
public class WorkOrderController extends BaseController {
    private final WorkOrderService workOrderService;
    @GetMapping("/process/{workOrderNo}")
    @ApiOperation(value = "过程图", notes = "过程图")
    @PreAuthorize("@ss.hasPermi('work:order:process')")
    public Result processImg(@PathVariable("workOrderNo") String workOrderNo) {
        return workOrderService.processImg(workOrderNo);
    }
    @PostMapping
    @ApiOperation(value = "添加", notes = "添加")
@@ -55,28 +73,17 @@
        return workOrderService.auditing(form);
    }
    @PutMapping("/batchAuditing")
    @ApiOperation(value = "审核", notes = "工单批量审核")
    @PreAuthorize("@ss.hasPermi('work:order:audit')")
    public Result batchAuditing(@RequestBody @Validated(Update.class) WorkOrderBatchAuditingForm form) {
        return workOrderService.batchAuditing(form);
    }
    @PutMapping("/yw-condition")
    @ApiOperation(value = "运维情况", notes = "运维情况")
    public Result ywCondition(@RequestBody @Validated(Update.class) WorkOrderYWConditionForm form) {
        return workOrderService.ywCondition(form);
    }
    @GetMapping("/yw-condition/{id}")
    @ApiOperation(value = "运维情况", notes = "运维情况")
    public Result ywCondition(@PathVariable @Validated(Update.class) String id) {
        return workOrderService.selectYwConditionByYwId(id);
    }
    @GetMapping("/yw-condition-list/{id}")
    @ApiOperation(value = "运维情况记录", notes = "运维情况记录")
    public Result ywConditionList(@PathVariable @Validated(Update.class) String id) {
        return workOrderService.selectYwConditionListByYwId(id);
    }
    @GetMapping("/yw-auditing-list/{id}")
    @ApiOperation(value = "运维审核记录", notes = "运维审核记录")
    public Result ywAuditingByYwId(@PathVariable @Validated(Update.class) String id) {
        return workOrderService.selectYwAuditingListByYwId(id);
    }
    @PutMapping("/yw-result")
@@ -112,9 +119,18 @@
        return workOrderService.page(query);
    }
    @PostMapping("/export")
    @ApiOperation(value = "导出", notes = "导出")
    @Log(title = "导出工单", businessType = BusinessType.EXPORT)
    public void export(HttpServletResponse response, WorkOrderExportQuery query) {
        List<WorkOrderVO> results = workOrderService.export(query);
        ExcelUtil<WorkOrderVO> util = new ExcelUtil<>(WorkOrderVO.class);
        util.exportExcel(response, results, "工单");
    }
    @PostMapping("/distribute/page")
    @ApiOperation(value = "下发分页", notes = "下发分页")
    @PreAuthorize("@ss.hasPermi('work:order:distribute')")
    @PreAuthorize("@ss.hasPermi('work:order:distribute:page')")
    public Result distributePage(@RequestBody DistributeWorkOrderQuery query) {
        return workOrderService.distributePage(query);
    }
@@ -127,7 +143,7 @@
    }
    @PostMapping("/distribute/ids")
    @ApiOperation(value = "下发选择", notes = "下发选择")
    @ApiOperation(value = "下发选择的工单", notes = "下发选择选择的工单")
    @PreAuthorize("@ss.hasPermi('work:order:distribute')")
    public Result selectedIdsDistribute(@RequestBody DistributeWorkOrderQuery query) {
        return workOrderService.selectedIdsDistribute(query);
@@ -135,7 +151,7 @@
    @GetMapping("/{id}")
    @ApiOperation(value = "详情", notes = "详情")
    @PreAuthorize("@ss.hasPermi('work:order:query')")
    @PreAuthorize("@ss.hasPermi('work:order:detail')")
    public Result detail(@PathVariable("id") String id) {
        return workOrderService.detail(id);
    }
@@ -146,4 +162,34 @@
    public Result list() {
        return workOrderService.all();
    }
    @GetMapping("/detail/info/{workOrderNo}")
    @ApiOperation(value = "详情", notes = "详情")
    @PreAuthorize("@ss.hasPermi('work:order:detail')")
    public Result detailByNo(@PathVariable("workOrderNo") String workOrderNo) {
        return workOrderService.detailByNo(workOrderNo);
    }
    @GetMapping("/yw-condition-list/{workOrderNo}")
    @ApiOperation(value = "运维情况记录列表", notes = "运维情况记录列表")
    public Result ywCondition(@PathVariable String workOrderNo) {
        List<WorkOrderYwConditionRecordVO> data = workOrderService.selectYwConditionByYwId(workOrderNo);
        return Result.ok().data(data);
    }
    @GetMapping("/yw-auditing-list/{workOrderNo}")
    @ApiOperation(value = "运维审核记录", notes = "运维审核记录")
    public Result ywAuditingByYwId(@PathVariable String workOrderNo) {
        List<WorkOrderAuditingRecord> data = workOrderService.selectYwAuditingListByYwId(workOrderNo);
        return Result.ok().data(data);
    }
    /**
     * 查询工单生成白名单列表
     */
    @PostMapping("/white/page")
    public Result whitePage(@RequestBody WorkOrderWhiteQuery workOrderWhiteQuery)
    {
        return workOrderService.selectWorkOrderWhiteList(workOrderWhiteQuery);
    }
}