From f02d0df2f1dfc7a8b775cf50d45375e57628a5ef Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期二, 10 十一月 2026 11:26:22 +0800
Subject: [PATCH] feat(ncr): 完善NCR处置联动逻辑与关闭校验

---
 yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/qc/ncr/MesQcNcrController.java |   17 +++++++++++------
 1 files changed, 11 insertions(+), 6 deletions(-)

diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/qc/ncr/MesQcNcrController.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/qc/ncr/MesQcNcrController.java
index bc6e5d3..501d659 100644
--- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/qc/ncr/MesQcNcrController.java
+++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/qc/ncr/MesQcNcrController.java
@@ -80,9 +80,16 @@
     @PutMapping("/dispose")
     @Operation(summary = "鎵ц涓嶅悎鏍煎搧澶勭疆")
     @PreAuthorize("@ss.hasPermission('mes:qc-ncr:dispose')")
-    public CommonResult<Boolean> disposeNcr(@Valid @RequestBody MesQcNcrDisposeReqVO disposeReqVO) {
-        ncrService.disposeNcr(disposeReqVO.getId(),
-                disposeReqVO.getHandlerUserId(), disposeReqVO.getHandleResult());
+    public CommonResult<MesQcNcrDisposeRespVO> disposeNcr(@Valid @RequestBody MesQcNcrDisposeReqVO disposeReqVO) {
+        return success(ncrService.disposeNcr(disposeReqVO));
+    }
+
+    @PutMapping("/submit-approval")
+    @Operation(summary = "鎻愪氦涓嶅悎鏍煎搧澶勭悊鍗曞鎵�")
+    @Parameter(name = "id", description = "缂栧彿", required = true)
+    @PreAuthorize("@ss.hasPermission('mes:qc-ncr:update')")
+    public CommonResult<Boolean> submitNcrApproval(@RequestParam("id") Long id) {
+        ncrService.submitNcrApproval(id);
         return success(true);
     }
 
@@ -90,7 +97,7 @@
     @Operation(summary = "鍏抽棴涓嶅悎鏍煎搧澶勭悊鍗�")
     @PreAuthorize("@ss.hasPermission('mes:qc-ncr:close')")
     public CommonResult<Boolean> closeNcr(@Valid @RequestBody MesQcNcrCloseReqVO closeReqVO) {
-        ncrService.closeNcr(closeReqVO.getId(), closeReqVO.getCloseOpinion());
+        ncrService.closeNcr(closeReqVO.getId(), closeReqVO.getCloseOpinion(), closeReqVO.getReinspectionIpqcId());
         return success(true);
     }
 
@@ -106,7 +113,6 @@
     @GetMapping("/get")
     @Operation(summary = "鑾峰緱涓嶅悎鏍煎搧澶勭悊鍗曡鎯�")
     @Parameter(name = "id", description = "缂栧彿", required = true, example = "1024")
-    @PreAuthorize("@ss.hasPermission('mes:qc-ncr:query')")
     public CommonResult<MesQcNcrRespVO> getNcr(@RequestParam("id") Long id) {
         MesQcNcrDO ncr = ncrService.getNcr(id);
         return success(buildNcrRespVOList(Collections.singletonList(ncr)).get(0));
@@ -114,7 +120,6 @@
 
     @GetMapping("/page")
     @Operation(summary = "鑾峰緱涓嶅悎鏍煎搧澶勭悊鍗曞垎椤�")
-    @PreAuthorize("@ss.hasPermission('mes:qc-ncr:query')")
     public CommonResult<PageResult<MesQcNcrRespVO>> getNcrPage(@Valid MesQcNcrPageReqVO pageReqVO) {
         PageResult<MesQcNcrDO> pageResult = ncrService.getNcrPage(pageReqVO);
         return success(new PageResult<>(buildNcrRespVOList(pageResult.getList()), pageResult.getTotal()));

--
Gitblit v1.9.3