From 8c65f898ed6e5b0c7a94c792c4562f6ec831dccd Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期六, 07 十一月 2026 08:50:53 +0800
Subject: [PATCH] feat: 完善质检、生产、销售、财务与人事模块并接入审批流程

---
 yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/qc/ipqc/MesQcIpqcController.java |   39 +++++++++++++++++++++++++++++++++++++++
 1 files changed, 39 insertions(+), 0 deletions(-)

diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/qc/ipqc/MesQcIpqcController.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/qc/ipqc/MesQcIpqcController.java
index aefce49..6c3c3ff 100644
--- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/qc/ipqc/MesQcIpqcController.java
+++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/qc/ipqc/MesQcIpqcController.java
@@ -13,6 +13,9 @@
 import cn.iocoder.yudao.module.mes.controller.admin.qc.ipqc.vo.MesQcIpqcPageReqVO;
 import cn.iocoder.yudao.module.mes.controller.admin.qc.ipqc.vo.MesQcIpqcRespVO;
 import cn.iocoder.yudao.module.mes.controller.admin.qc.ipqc.vo.MesQcIpqcSaveReqVO;
+import cn.iocoder.yudao.module.mes.controller.admin.qc.ipqc.vo.MesQcIpqcTemplateProcessRespVO;
+import cn.iocoder.yudao.module.mes.controller.admin.qc.ipqc.vo.MesQcIpqcWageFieldRespVO;
+import cn.iocoder.yudao.module.mes.controller.admin.qc.ipqc.vo.MesQcIpqcWageFieldSaveReqVO;
 import cn.iocoder.yudao.module.mes.controller.admin.qc.vo.MesQcImportRespVO;
 import cn.iocoder.yudao.module.mes.controller.admin.qc.vo.MesQcQualityExportVO;
 import cn.iocoder.yudao.module.mes.dal.dataobject.md.item.MesMdItemDO;
@@ -28,6 +31,7 @@
 import cn.iocoder.yudao.module.mes.dal.mysql.qc.ipqc.MesQcIpqcLineMapper;
 import cn.iocoder.yudao.module.mes.enums.DictTypeConstants;
 import cn.iocoder.yudao.module.mes.enums.MesBizTypeConstants;
+import cn.iocoder.yudao.module.mes.enums.qc.MesQcTypeEnum;
 import cn.iocoder.yudao.module.mes.service.md.item.MesMdItemService;
 import cn.iocoder.yudao.module.mes.service.md.unitmeasure.MesMdUnitMeasureService;
 import cn.iocoder.yudao.module.mes.service.md.workstation.MesMdWorkstationService;
@@ -36,6 +40,8 @@
 import cn.iocoder.yudao.module.mes.service.qc.indicator.MesQcIndicatorService;
 import cn.iocoder.yudao.module.mes.service.qc.indicatorresult.MesQcIndicatorResultService;
 import cn.iocoder.yudao.module.mes.service.qc.ipqc.MesQcIpqcService;
+import cn.iocoder.yudao.module.mes.service.qc.ipqc.MesQcIpqcWageFieldService;
+import cn.iocoder.yudao.module.mes.service.qc.template.MesQcTemplateProcessService;
 import cn.iocoder.yudao.module.system.api.user.AdminUserApi;
 import cn.iocoder.yudao.module.system.api.user.dto.AdminUserRespDTO;
 import io.swagger.v3.oas.annotations.Operation;
@@ -89,6 +95,10 @@
     private MesQcIndicatorService indicatorService;
     @Resource
     private MesQcIpqcLineMapper ipqcLineMapper;
+    @Resource
+    private MesQcTemplateProcessService templateProcessService;
+    @Resource
+    private MesQcIpqcWageFieldService ipqcWageFieldService;
 
     @Resource
     private AdminUserApi adminUserApi;
@@ -126,6 +136,35 @@
         return success(true);
     }
 
+    @GetMapping("/template-by-process")
+    @Operation(summary = "鎸夊伐搴忚幏鍙栭粯璁よ川妫�鏂规鍙婃娴嬫寚鏍囧瓧娈�")
+    @Parameter(name = "processId", description = "宸ュ簭缂栧彿", required = true)
+    @Parameter(name = "type", description = "璐ㄦ绉嶇被锛岄粯璁� 2-杩囩▼妫�楠�", example = "2")
+    public CommonResult<MesQcIpqcTemplateProcessRespVO> getTemplateByProcess(
+            @RequestParam("processId") Long processId,
+            @RequestParam(value = "type", required = false) Integer type) {
+        return success(templateProcessService.resolveTemplate(processId,
+                type != null ? type : MesQcTypeEnum.IPQC.getType()));
+    }
+
+    @GetMapping("/wage-field/list")
+    @Operation(summary = "鎸夊伐搴忚幏鍙栬繃绋嬫楠屽崟宸ヨ祫瀛楁锛堝伐搴忚嚜瀹氫箟瀛楁锛岃川妫�濉啓锛�")
+    @Parameter(name = "processId", description = "宸ュ簭缂栧彿锛涚┖鏃舵寜 ipqcId 瑙f瀽")
+    @Parameter(name = "ipqcId", description = "杩囩▼妫�楠屽崟缂栧彿锛涙柊寤烘椂涓嶄紶锛岀敤浜庡姞杞藉凡濉啓鐨勫��")
+    public CommonResult<List<MesQcIpqcWageFieldRespVO>> getWageFieldList(
+            @RequestParam(value = "processId", required = false) Long processId,
+            @RequestParam(value = "ipqcId", required = false) Long ipqcId) {
+        return success(ipqcWageFieldService.getFieldList(processId, ipqcId));
+    }
+
+    @PostMapping("/wage-field/save")
+    @Operation(summary = "淇濆瓨杩囩▼妫�楠屽崟宸ヨ祫瀛楁鍊�")
+    @PreAuthorize("@ss.hasAnyPermissions('mes:qc-ipqc:create', 'mes:qc-ipqc:update')")
+    public CommonResult<Boolean> saveWageFieldValues(@Valid @RequestBody MesQcIpqcWageFieldSaveReqVO reqVO) {
+        ipqcWageFieldService.saveValues(reqVO);
+        return success(true);
+    }
+
     @GetMapping("/get")
     @Operation(summary = "鑾峰緱杩囩▼妫�楠屽崟")
     @Parameter(name = "id", description = "缂栧彿", required = true, example = "1024")

--
Gitblit v1.9.3