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;
|
import org.springframework.validation.annotation.Validated;
|
import org.springframework.web.bind.annotation.*;
|
|
import java.util.List;
|
|
/**
|
* 工单 前端控制器
|
*
|
* @author xp
|
* @since 2024-03-05
|
*/
|
@Validated
|
@RequiredArgsConstructor
|
@Api(value = "工单", tags = "工单管理")
|
@RestController
|
@RequestMapping("/work-order")
|
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 = "添加")
|
@PreAuthorize("@ss.hasPermi('work:order:add')")
|
public Result add(@RequestBody @Validated(Add.class) WorkOrderForm form) {
|
return workOrderService.add(form);
|
}
|
|
@PutMapping
|
@ApiOperation(value = "修改", notes = "修改")
|
@PreAuthorize("@ss.hasPermi('work:order:edit')")
|
public Result update(@RequestBody @Validated(Update.class) WorkOrderForm form) {
|
return workOrderService.update(form);
|
}
|
|
@PutMapping("/auditing")
|
@ApiOperation(value = "审核", notes = "工单审核")
|
@PreAuthorize("@ss.hasPermi('work:order:audit')")
|
public Result auditing(@RequestBody @Validated(Update.class) WorkOrderAuditingForm form) {
|
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 WorkOrderYWConditionForm form) {
|
return workOrderService.ywCondition(form);
|
}
|
|
//现在没用
|
@PutMapping("/yw-result")
|
@ApiOperation(value = "运维结果", notes = "运维结果")
|
public Result ywResult(@RequestBody @Validated WorkOrderYWResultForm form) {
|
return workOrderService.ywResult(form);
|
}
|
|
//现在没用
|
@PutMapping("/check-result")
|
@ApiOperation(value = "检测结果", notes = "检测结果")
|
public Result ywCheckResult(@RequestBody @Validated WorkOrderCheckResultForm form) {
|
return workOrderService.checkResult(form);
|
}
|
|
@DeleteMapping("/{id}")
|
@ApiOperation(value = "ID删除", notes = "ID删除")
|
@PreAuthorize("@ss.hasPermi('work:order:remove')")
|
public Result removeById(@PathVariable("id") String id) {
|
return workOrderService.removeById(id);
|
}
|
|
// @DeleteMapping("/batch")
|
// @ApiOperation(value = "批量删除", notes = "批量删除")
|
// @PreAuthorize("@ss.hasPermi('work:order:remove')")
|
// public Result remove(@RequestBody @NotEmpty(message = "请选择数据") List<String> ids) {
|
// return workOrderService.remove(ids);
|
// }
|
|
@PostMapping("/page")
|
@ApiOperation(value = "分页", notes = "分页")
|
@PreAuthorize("@ss.hasPermi('work:order:page')")
|
public Result page(@RequestBody WorkOrderQuery query) {
|
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:page')")
|
public Result distributePage(@RequestBody DistributeWorkOrderQuery query) {
|
return workOrderService.distributePage(query);
|
}
|
|
@PostMapping("/distribute/fast")
|
@ApiOperation(value = "快速下发", notes = "快速下发")
|
@PreAuthorize("@ss.hasPermi('work:order:distribute')")
|
public Result distributeFast(@RequestBody @Validated DistributeWorkOrderVO data) {
|
return workOrderService.distributeFast(data);
|
}
|
|
@PostMapping("/distribute/ids")
|
@ApiOperation(value = "下发选择的工单", notes = "下发选择选择的工单")
|
@PreAuthorize("@ss.hasPermi('work:order:distribute')")
|
public Result selectedIdsDistribute(@RequestBody DistributeWorkOrderQuery query) {
|
return workOrderService.selectedIdsDistribute(query);
|
}
|
|
@GetMapping("/{id}")
|
@ApiOperation(value = "详情", notes = "详情")
|
@PreAuthorize("@ss.hasPermi('work:order:detail')")
|
public Result detail(@PathVariable("id") String id) {
|
return workOrderService.detail(id);
|
}
|
|
@GetMapping("/check")
|
@ApiOperation(value = "图片检测", notes = "图片检测")
|
@PreAuthorize("@ss.hasPermi('work:order:check')")
|
public Result check(String workOrderNo,String serialNumber) {
|
return workOrderService.checkImage(workOrderNo,serialNumber);
|
}
|
|
@GetMapping("/list")
|
@ApiOperation(value = "列表", notes = "列表")
|
@PreAuthorize("@ss.hasPermi('work:order:list')")
|
public Result list() {
|
return workOrderService.all();
|
}
|
|
@GetMapping("/errorType/list")
|
@ApiOperation(value = "故障列表", notes = "故障列表")
|
@PreAuthorize("@ss.hasPermi('work:order:list')")
|
public Result errorList() {
|
return workOrderService.errorAll();
|
}
|
@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")
|
@ApiOperation(value = "工单白名单列表", notes = "工单白名单列表")
|
public Result whitePage(@RequestBody WorkOrderWhiteQuery workOrderWhiteQuery)
|
{
|
return workOrderService.selectWorkOrderWhiteList(workOrderWhiteQuery);
|
}
|
|
/**
|
* 工单白名单详情
|
*/
|
@GetMapping("/white/{id}")
|
@ApiOperation(value = "工单白名单详情", notes = "工单白名单详情")
|
public Result whiteDetail(@PathVariable Integer id)
|
{
|
return workOrderService.selectWorkOrderWhiteDetail(id);
|
}
|
/**
|
* 添加工单白名单
|
*
|
* @param workOrderWhite 白色工单
|
* @return {@link Result }
|
* @author
|
*/
|
@PostMapping("/white/add")
|
@ApiOperation(value = "新增工单白名单", notes = "新增工单白名单")
|
public Result addWorkOrderWhite(@RequestBody WorkOrderWhite workOrderWhite) {
|
return workOrderService.addWorkOrderWhite(workOrderWhite);
|
}
|
|
/**
|
* 修改工单白名单
|
*
|
* @param workOrderWhite 白色工单
|
* @return {@link Result }
|
* @author
|
*/
|
@PostMapping("/white/update")
|
@ApiOperation(value = "修改工单白名单", notes = "修改工单白名单")
|
public Result updateWorkOrderWhite(@RequestBody WorkOrderWhite workOrderWhite) {
|
return workOrderService.updateWorkOrderWhite(workOrderWhite);
|
}
|
/**
|
* 批量删除工单白名单
|
*
|
* @param ids ids
|
* @return {@link Result }
|
* @author
|
*/
|
@DeleteMapping("/white/batchDelete")
|
@ApiOperation(value = "批量删除工单白名单", notes = "批量删除工单白名单")
|
public Result batchDeleteWorkOrderWhite(@RequestBody List<String> ids) {
|
return workOrderService.batchDeleteWorkOrderWhite(ids);
|
}
|
|
/**
|
* 批量删除工单
|
*
|
* @return {@link Result }
|
* @author
|
*/
|
@DeleteMapping("/batchDelete")
|
@PreAuthorize("@ss.hasPermi('work:order:delete')")
|
@ApiOperation(value = "批量删除工单", notes = "批量删除工单")
|
public Result batchDeleteWorkOrder(@RequestBody List<String> workOrderNos) {
|
return workOrderService.batchDeleteWorkOrder(workOrderNos);
|
}
|
}
|