From f77a9d8f16bae6b4cf809891f037c038070e81ed Mon Sep 17 00:00:00 2001
From: zxl <763096477@qq.com>
Date: 星期四, 19 六月 2025 17:12:50 +0800
Subject: [PATCH] 工单,数据中心用户查看数据的权限,合同考核每日,以及导出每日和按月

---
 ycl-server/src/main/java/com/ycl/platform/controller/WorkOrderController.java |  141 +++++++++++++++++++++++++++++++++++++---------
 1 files changed, 113 insertions(+), 28 deletions(-)

diff --git a/ycl-server/src/main/java/com/ycl/platform/controller/WorkOrderController.java b/ycl-server/src/main/java/com/ycl/platform/controller/WorkOrderController.java
index 1356a02..c32720a 100644
--- a/ycl-server/src/main/java/com/ycl/platform/controller/WorkOrderController.java
+++ b/ycl-server/src/main/java/com/ycl/platform/controller/WorkOrderController.java
@@ -1,22 +1,32 @@
 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.WorkOrderQuery;
+import com.ycl.platform.domain.query.*;
 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.io.IOException;
 import java.util.List;
-import java.util.Map;
 
 /**
  * 宸ュ崟 鍓嶇鎺у埗鍣�
@@ -29,109 +39,184 @@
 @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 = "娣诲姞")
+    @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(Update.class) WorkOrderYWConditionForm form) {
+    public Result ywCondition(@RequestBody @Validated WorkOrderYWConditionForm form) {
         return workOrderService.ywCondition(form);
     }
 
-    @GetMapping("/yw-condition/{id}")
+    @PutMapping("/yw-condition-list")
     @ApiOperation(value = "杩愮淮鎯呭喌", notes = "杩愮淮鎯呭喌")
-    public Result ywCondition(@PathVariable @Validated(Update.class) String id) {
-        return workOrderService.selectYwConditionByYwId(id);
+    public Result ywConditionList(@RequestBody @Validated WorkOrderYWConditionsForm form) {
+        System.out.println(form);
+//        return workOrderService.ywCondition(form);
+        return workOrderService.ywConditionList(form);
     }
 
-    @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")
     @ApiOperation(value = "杩愮淮缁撴灉", notes = "杩愮淮缁撴灉")
-    public Result ywCondition(@RequestBody @Validated(Update.class) WorkOrderYWResultForm form) {
+    public Result ywResult(@RequestBody @Validated WorkOrderYWResultForm form) {
         return workOrderService.ywResult(form);
     }
 
+    //鐜板湪娌$敤
     @PutMapping("/check-result")
     @ApiOperation(value = "妫�娴嬬粨鏋�", notes = "妫�娴嬬粨鏋�")
-    public Result ywCondition(@RequestBody @Validated(Update.class) WorkOrderCheckResultForm form) {
+    public Result ywCheckResult(@RequestBody @Validated WorkOrderCheckResultForm form) {
         return workOrderService.checkResult(form);
     }
 
     @DeleteMapping("/{id}")
     @ApiOperation(value = "ID鍒犻櫎", notes = "ID鍒犻櫎")
+    @PreAuthorize("@ss.hasPermi('work:order:remove')")
+    @Log(title = "鍒犻櫎宸ュ崟", businessType = BusinessType.DELETE)
     public Result removeById(@PathVariable("id") String id) {
         return workOrderService.removeById(id);
     }
 
-    @DeleteMapping("/batch")
-    @ApiOperation(value = "鎵归噺鍒犻櫎", notes = "鎵归噺鍒犻櫎")
-    public Result remove(@RequestBody @NotEmpty(message = "璇烽�夋嫨鏁版嵁") List<String> ids) {
-        return workOrderService.remove(ids);
-    }
+//    @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 = "涓嬪彂閫夋嫨")
+    @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);
+    }
+    /**
+     * 鎵归噺鍒犻櫎宸ュ崟
+     *
+     * @return {@link Result }
+     * @author
+     */
+    @DeleteMapping("/batchDelete")
+    @PreAuthorize("@ss.hasPermi('work:order:delete')")
+    @ApiOperation(value = "鎵归噺鍒犻櫎宸ュ崟", notes = "鎵归噺鍒犻櫎宸ュ崟")
+    @Log(title = "鎵归噺鍒犻櫎宸ュ崟", businessType = BusinessType.DELETE)
+    public Result batchDeleteWorkOrder(@RequestBody List<String> workOrderNos) {
+        return workOrderService.batchDeleteWorkOrder(workOrderNos);
+    }
+
 }

--
Gitblit v1.8.0