From b3fe06c151dc8455649bf0a46e481ceb83e3ea2a Mon Sep 17 00:00:00 2001
From: 吴羡 <16976746+Xian-TT3@user.noreply.gitee.com>
Date: 星期六, 07 十一月 2026 13:37:54 +0800
Subject: [PATCH] feat: 完成好水川 MOM 需求1/2/4/5/8(装箱、BOM成本、销售合同、劳动合同、留样)

---
 yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/controller/admin/employee/HrmEmployeeContractController.java |   15 ++++++++++++---
 1 files changed, 12 insertions(+), 3 deletions(-)

diff --git a/yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/controller/admin/employee/HrmEmployeeContractController.java b/yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/controller/admin/employee/HrmEmployeeContractController.java
index 0530349..e33d46d 100644
--- a/yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/controller/admin/employee/HrmEmployeeContractController.java
+++ b/yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/controller/admin/employee/HrmEmployeeContractController.java
@@ -3,6 +3,7 @@
 import cn.iocoder.yudao.framework.common.pojo.CommonResult;
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
 import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
+import cn.iocoder.yudao.module.hrm.controller.admin.employee.vo.HrmEmployeeContractDocumentRespVO;
 import cn.iocoder.yudao.module.hrm.controller.admin.employee.vo.HrmEmployeeContractImportExcelVO;
 import cn.iocoder.yudao.module.hrm.controller.admin.employee.vo.HrmEmployeeContractImportReqVO;
 import cn.iocoder.yudao.module.hrm.controller.admin.employee.vo.HrmEmployeeContractImportRespVO;
@@ -10,6 +11,7 @@
 import cn.iocoder.yudao.module.hrm.controller.admin.employee.vo.HrmEmployeeContractRespVO;
 import cn.iocoder.yudao.module.hrm.controller.admin.employee.vo.HrmEmployeeContractSaveReqVO;
 import cn.iocoder.yudao.module.hrm.controller.admin.employee.vo.HrmEmployeeContractTerminateReqVO;
+import cn.iocoder.yudao.module.hrm.service.employee.HrmEmployeeContractDocumentService;
 import cn.iocoder.yudao.module.hrm.service.employee.HrmEmployeeContractService;
 import io.swagger.v3.oas.annotations.Operation;
 import io.swagger.v3.oas.annotations.Parameter;
@@ -37,6 +39,8 @@
 
     @Resource
     private HrmEmployeeContractService contractService;
+    @Resource
+    private HrmEmployeeContractDocumentService contractDocumentService;
 
     @PostMapping("/create")
     @Operation(summary = "鍒涘缓鍛樺伐鍚堝悓")
@@ -73,25 +77,30 @@
     @GetMapping("/get")
     @Operation(summary = "鑾峰緱鍛樺伐鍚堝悓璇︽儏")
     @Parameter(name = "id", description = "鍚堝悓ID", required = true)
-    @PreAuthorize("@ss.hasPermission('hrm:employee-contract:query')")
     public CommonResult<HrmEmployeeContractRespVO> getContract(@RequestParam("id") Long id) {
         return success(contractService.getContract(id));
     }
 
     @GetMapping("/page")
     @Operation(summary = "鑾峰緱鍛樺伐鍚堝悓鍒嗛〉")
-    @PreAuthorize("@ss.hasPermission('hrm:employee-contract:query')")
     public CommonResult<PageResult<HrmEmployeeContractRespVO>> getContractPage(@Valid HrmEmployeeContractPageReqVO pageReqVO) {
         return success(contractService.getContractPage(pageReqVO));
     }
 
     @GetMapping("/expiring-count")
     @Operation(summary = "鑾峰緱鍗冲皢鍒版湡鍚堝悓鏁伴噺", description = "渚� HRM 寰呭姙/棣栭〉鎻愰啋浣跨敤")
-    @PreAuthorize("@ss.hasPermission('hrm:employee-contract:query')")
     public CommonResult<Long> getExpiringCount() {
         return success(contractService.getExpiringCount());
     }
 
+    @PostMapping("/generate-document")
+    @Operation(summary = "鐢熸垚鍛樺伐鍚堝悓鏂囨。", description = "鎸夊悎鍚屾槑缁嗗~鍏� Word 妯℃澘锛岀敓鎴愮粨鏋滃瓨鍏ョ郴缁熸枃浠跺簱骞剁粦瀹氬埌璇ュ悎鍚岀殑闄勪欢")
+    @Parameter(name = "id", description = "鍚堝悓ID", required = true)
+    @PreAuthorize("@ss.hasPermission('hrm:employee-contract:update')")
+    public CommonResult<HrmEmployeeContractDocumentRespVO> generateContractDocument(@RequestParam("id") Long id) {
+        return success(contractDocumentService.generateContractDocument(id));
+    }
+
     @GetMapping("/import-template")
     @Operation(summary = "涓嬭浇鍛樺伐鍚堝悓瀵煎叆妯℃澘")
     @PreAuthorize("@ss.hasPermission('hrm:employee-contract:import')")

--
Gitblit v1.9.3