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-hrm/src/main/java/cn/iocoder/yudao/module/hrm/controller/admin/salary/HrmEmployeeSocialSecurityController.java |   95 +++++++++++++++++------------------------------
 1 files changed, 34 insertions(+), 61 deletions(-)

diff --git a/yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/controller/admin/salary/HrmEmployeeSocialSecurityController.java b/yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/controller/admin/salary/HrmEmployeeSocialSecurityController.java
index c969f84..adb9e0d 100644
--- a/yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/controller/admin/salary/HrmEmployeeSocialSecurityController.java
+++ b/yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/controller/admin/salary/HrmEmployeeSocialSecurityController.java
@@ -7,10 +7,8 @@
 import cn.iocoder.yudao.module.hrm.controller.admin.salary.vo.HrmEmployeeSocialSecurityPageReqVO;
 import cn.iocoder.yudao.module.hrm.controller.admin.salary.vo.HrmEmployeeSocialSecurityRespVO;
 import cn.iocoder.yudao.module.hrm.controller.admin.salary.vo.HrmEmployeeSocialSecuritySaveReqVO;
-import cn.iocoder.yudao.module.hrm.dal.dataobject.employee.HrmEmployeeDO;
 import cn.iocoder.yudao.module.hrm.dal.dataobject.salary.HrmEmployeeSocialSecurityDO;
 import cn.iocoder.yudao.module.hrm.dal.dataobject.salary.HrmSocialSecuritySchemeDO;
-import cn.iocoder.yudao.module.hrm.service.employee.HrmEmployeeService;
 import cn.iocoder.yudao.module.hrm.service.salary.HrmEmployeeSocialSecurityService;
 import cn.iocoder.yudao.module.hrm.service.salary.HrmSocialSecuritySchemeService;
 import cn.iocoder.yudao.module.system.api.dept.DeptApi;
@@ -29,7 +27,7 @@
 
 import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
 
-@Tag(name = "绠$悊鍚庡彴 - HRM 鍛樺伐绀句繚鍏Н閲戞。妗�")
+@Tag(name = "绠$悊鍚庡彴 - HRM 閮ㄩ棬绀句繚鍏Н閲戞。妗�")
 @RestController
 @RequestMapping("/hrm/salary/employee-social-security")
 @Validated
@@ -38,14 +36,12 @@
     @Resource
     private HrmEmployeeSocialSecurityService employeeSocialSecurityService;
     @Resource
-    private HrmEmployeeService employeeService;
-    @Resource
     private DeptApi deptApi;
     @Resource
     private HrmSocialSecuritySchemeService schemeService;
 
     @PostMapping("/create")
-    @Operation(summary = "鍒涘缓鍛樺伐绀句繚鍏Н閲戞。妗�")
+    @Operation(summary = "鍒涘缓閮ㄩ棬绀句繚鍏Н閲戞。妗�")
     @PreAuthorize("@ss.hasPermission('hrm:employee-social-security:create')")
     public CommonResult<Long> createEmployeeSocialSecurity(@Valid @RequestBody HrmEmployeeSocialSecuritySaveReqVO createReqVO) {
         HrmEmployeeSocialSecurityDO socialSecurity = BeanUtils.toBean(createReqVO, HrmEmployeeSocialSecurityDO.class);
@@ -53,7 +49,7 @@
     }
 
     @PutMapping("/update")
-    @Operation(summary = "鏇存柊鍛樺伐绀句繚鍏Н閲戞。妗�")
+    @Operation(summary = "鏇存柊閮ㄩ棬绀句繚鍏Н閲戞。妗�")
     @PreAuthorize("@ss.hasPermission('hrm:employee-social-security:update')")
     public CommonResult<Boolean> updateEmployeeSocialSecurity(@Valid @RequestBody HrmEmployeeSocialSecuritySaveReqVO updateReqVO) {
         HrmEmployeeSocialSecurityDO socialSecurity = BeanUtils.toBean(updateReqVO, HrmEmployeeSocialSecurityDO.class);
@@ -62,7 +58,7 @@
     }
 
     @DeleteMapping("/delete")
-    @Operation(summary = "鍒犻櫎鍛樺伐绀句繚鍏Н閲戞。妗�")
+    @Operation(summary = "鍒犻櫎閮ㄩ棬绀句繚鍏Н閲戞。妗�")
     @Parameter(name = "id", description = "妗fID", required = true)
     @PreAuthorize("@ss.hasPermission('hrm:employee-social-security:delete')")
     public CommonResult<Boolean> deleteEmployeeSocialSecurity(@RequestParam("id") Long id) {
@@ -71,7 +67,7 @@
     }
 
     @GetMapping("/get")
-    @Operation(summary = "鑾峰彇鍛樺伐绀句繚鍏Н閲戞。妗�")
+    @Operation(summary = "鑾峰彇閮ㄩ棬绀句繚鍏Н閲戞。妗�")
     @Parameter(name = "id", description = "妗fID", required = true)
     public CommonResult<HrmEmployeeSocialSecurityRespVO> getEmployeeSocialSecurity(@RequestParam("id") Long id) {
         HrmEmployeeSocialSecurityDO socialSecurity = employeeSocialSecurityService.getEmployeeSocialSecurity(id);
@@ -79,14 +75,13 @@
             return success(null);
         }
         HrmEmployeeSocialSecurityRespVO respVO = BeanUtils.toBean(socialSecurity, HrmEmployeeSocialSecurityRespVO.class);
-        // 濉厖鍛樺伐鍜屾柟妗堜俊鎭�
-        fillEmployeeInfo(respVO, socialSecurity.getUserId());
+        fillDeptInfo(respVO, socialSecurity.getDeptId());
         fillSchemeInfo(respVO, socialSecurity.getSocialSecuritySchemeId());
         return success(respVO);
     }
 
     @GetMapping("/page")
-    @Operation(summary = "鑾峰彇鍛樺伐绀句繚鍏Н閲戞。妗堝垎椤�")
+    @Operation(summary = "鑾峰彇閮ㄩ棬绀句繚鍏Н閲戞。妗堝垎椤�")
     public CommonResult<PageResult<HrmEmployeeSocialSecurityRespVO>> getEmployeeSocialSecurityPage(
             @Valid HrmEmployeeSocialSecurityPageReqVO pageReqVO) {
         PageResult<HrmEmployeeSocialSecurityDO> pageResult = employeeSocialSecurityService.getEmployeeSocialSecurityPage(pageReqVO);
@@ -94,23 +89,11 @@
         if (CollUtil.isEmpty(recordList)) {
             return success(new PageResult<>(Collections.emptyList(), pageResult.getTotal()));
         }
-        // userId 鏄憳宸D锛屾壒閲忚幏鍙栧憳宸ヤ俊鎭�
-        Set<Long> employeeIds = recordList.stream()
-                .map(HrmEmployeeSocialSecurityDO::getUserId)
+        // 鎵归噺鑾峰彇閮ㄩ棬淇℃伅
+        Set<Long> deptIds = recordList.stream()
+                .map(HrmEmployeeSocialSecurityDO::getDeptId)
                 .filter(Objects::nonNull)
                 .collect(Collectors.toSet());
-        Map<Long, HrmEmployeeDO> employeeMap = new HashMap<>();
-        Set<Long> deptIds = new HashSet<>();
-        for (Long employeeId : employeeIds) {
-            HrmEmployeeDO employee = employeeService.getEmployee(employeeId);
-            if (employee != null) {
-                employeeMap.put(employeeId, employee);
-                if (employee.getDeptId() != null) {
-                    deptIds.add(employee.getDeptId());
-                }
-            }
-        }
-        // 鎵归噺鑾峰彇閮ㄩ棬淇℃伅
         Map<Long, DeptRespDTO> deptMap = CollUtil.isEmpty(deptIds) ? Collections.emptyMap() : deptApi.getDeptMap(deptIds);
         // 鎵归噺鑾峰彇鏂规淇℃伅
         Set<Long> schemeIds = recordList.stream()
@@ -128,18 +111,12 @@
         List<HrmEmployeeSocialSecurityRespVO> list = recordList.stream()
                 .map(socialSecurity -> {
                     HrmEmployeeSocialSecurityRespVO respVO = BeanUtils.toBean(socialSecurity, HrmEmployeeSocialSecurityRespVO.class);
-                    // 濉厖鍛樺伐濮撳悕鍜岄儴闂ㄥ悕绉帮紙userId 鏄憳宸D锛�
-                    HrmEmployeeDO employee = employeeMap.get(socialSecurity.getUserId());
-                    if (employee != null) {
-                        respVO.setUserName(employee.getName());
-                        if (employee.getDeptId() != null) {
-                            DeptRespDTO dept = deptMap.get(employee.getDeptId());
-                            if (dept != null) {
-                                respVO.setDeptName(dept.getName());
-                            }
+                    if (socialSecurity.getDeptId() != null) {
+                        DeptRespDTO dept = deptMap.get(socialSecurity.getDeptId());
+                        if (dept != null) {
+                            respVO.setDeptName(dept.getName());
                         }
                     }
-                    // 濉厖鏂规鍚嶇О
                     if (socialSecurity.getSocialSecuritySchemeId() != null) {
                         HrmSocialSecuritySchemeDO scheme = schemeMap.get(socialSecurity.getSocialSecuritySchemeId());
                         if (scheme != null) {
@@ -152,15 +129,16 @@
         return success(new PageResult<>(list, pageResult.getTotal()));
     }
 
-    @GetMapping("/list-by-user")
-    @Operation(summary = "鑾峰彇鍛樺伐绀句繚鍏Н閲戞。妗堝巻鍙插垪琛�")
-    @Parameter(name = "userId", description = "绯荤粺鐢ㄦ埛ID", required = true)
+    @GetMapping("/list-by-dept")
+    @Operation(summary = "鑾峰彇閮ㄩ棬绀句繚鍏Н閲戞。妗堝巻鍙插垪琛�")
+    @Parameter(name = "deptId", description = "閮ㄩ棬ID", required = true)
     public CommonResult<List<HrmEmployeeSocialSecurityRespVO>> getEmployeeSocialSecurityList(
-            @RequestParam("userId") Long userId) {
-        List<HrmEmployeeSocialSecurityDO> list = employeeSocialSecurityService.getEmployeeSocialSecurityList(userId);
+            @RequestParam("deptId") Long deptId) {
+        List<HrmEmployeeSocialSecurityDO> list = employeeSocialSecurityService.getEmployeeSocialSecurityList(deptId);
         List<HrmEmployeeSocialSecurityRespVO> result = list.stream()
                 .map(socialSecurity -> {
                     HrmEmployeeSocialSecurityRespVO respVO = BeanUtils.toBean(socialSecurity, HrmEmployeeSocialSecurityRespVO.class);
+                    fillDeptInfo(respVO, socialSecurity.getDeptId());
                     fillSchemeInfo(respVO, socialSecurity.getSocialSecuritySchemeId());
                     return respVO;
                 })
@@ -169,35 +147,30 @@
     }
 
     @GetMapping("/get-latest")
-    @Operation(summary = "鑾峰彇鍛樺伐鏈�鏂扮敓鏁堢殑绀句繚鍏Н閲戞。妗�")
-    @Parameter(name = "userId", description = "绯荤粺鐢ㄦ埛ID", required = true)
+    @Operation(summary = "鑾峰彇閮ㄩ棬鏈�鏂扮敓鏁堢殑绀句繚鍏Н閲戞。妗�")
+    @Parameter(name = "deptId", description = "閮ㄩ棬ID", required = true)
     public CommonResult<HrmEmployeeSocialSecurityRespVO> getLatestEmployeeSocialSecurity(
-            @RequestParam("userId") Long userId) {
-        HrmEmployeeSocialSecurityDO socialSecurity = employeeSocialSecurityService.getLatestEmployeeSocialSecurity(userId);
+            @RequestParam("deptId") Long deptId) {
+        HrmEmployeeSocialSecurityDO socialSecurity = employeeSocialSecurityService.getLatestEmployeeSocialSecurity(deptId);
         if (socialSecurity == null) {
             return success(null);
         }
         HrmEmployeeSocialSecurityRespVO respVO = BeanUtils.toBean(socialSecurity, HrmEmployeeSocialSecurityRespVO.class);
-        // 濉厖鍛樺伐鍜屾柟妗堜俊鎭�
-        fillEmployeeInfo(respVO, socialSecurity.getUserId());
+        fillDeptInfo(respVO, socialSecurity.getDeptId());
         fillSchemeInfo(respVO, socialSecurity.getSocialSecuritySchemeId());
         return success(respVO);
     }
 
     /**
-     * 濉厖鍛樺伐淇℃伅锛堥�氳繃鍛樺伐ID锛�
+     * 濉厖閮ㄩ棬淇℃伅
      */
-    private void fillEmployeeInfo(HrmEmployeeSocialSecurityRespVO respVO, Long userId) {
-        // userId 鏄憳宸D锛岄�氳繃鍛樺伐琛ㄨ幏鍙栧鍚嶅拰閮ㄩ棬
-        HrmEmployeeDO employee = employeeService.getEmployee(userId);
-        if (employee != null) {
-            respVO.setUserName(employee.getName());
-            if (employee.getDeptId() != null) {
-                DeptRespDTO dept = deptApi.getDept(employee.getDeptId());
-                if (dept != null) {
-                    respVO.setDeptName(dept.getName());
-                }
-            }
+    private void fillDeptInfo(HrmEmployeeSocialSecurityRespVO respVO, Long deptId) {
+        if (deptId == null) {
+            return;
+        }
+        DeptRespDTO dept = deptApi.getDept(deptId);
+        if (dept != null) {
+            respVO.setDeptName(dept.getName());
         }
     }
 
@@ -213,4 +186,4 @@
         }
     }
 
-}
\ No newline at end of file
+}

--
Gitblit v1.9.3