From 286cc58be63c13a90f59eaf02879f6954ff9b142 Mon Sep 17 00:00:00 2001
From: tuqin <tuqin@local>
Date: 星期三, 04 十一月 2026 13:21:39 +0800
Subject: [PATCH] fix(hrm): 修复社保/考勤列表员工姓名、部门全空(ID 口径混用)

---
 yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/controller/admin/attendance/HrmAttendanceExceptionController.java |   16 ++++++++++------
 1 files changed, 10 insertions(+), 6 deletions(-)

diff --git a/yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/controller/admin/attendance/HrmAttendanceExceptionController.java b/yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/controller/admin/attendance/HrmAttendanceExceptionController.java
index 33c9f4a..9cfe7ad 100644
--- a/yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/controller/admin/attendance/HrmAttendanceExceptionController.java
+++ b/yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/controller/admin/attendance/HrmAttendanceExceptionController.java
@@ -13,6 +13,7 @@
 import cn.iocoder.yudao.module.hrm.service.employee.HrmEmployeeService;
 import cn.iocoder.yudao.module.system.api.dept.DeptApi;
 import cn.iocoder.yudao.module.system.api.dept.dto.DeptRespDTO;
+import cn.iocoder.yudao.module.system.api.storage.StorageAttachmentApi;
 import io.swagger.v3.oas.annotations.Operation;
 import io.swagger.v3.oas.annotations.Parameter;
 import io.swagger.v3.oas.annotations.tags.Tag;
@@ -39,6 +40,8 @@
     private HrmEmployeeService employeeService;
     @Resource
     private DeptApi deptApi;
+    @Resource
+    private StorageAttachmentApi storageAttachmentApi;
 
     @PostMapping("/create")
     @Operation(summary = "鏂板鑰冨嫟寮傚父鐢宠")
@@ -74,9 +77,9 @@
             return success(null);
         }
         HrmAttendanceExceptionRespVO respVO = BeanUtils.toBean(attendanceException, HrmAttendanceExceptionRespVO.class);
-        // 濉厖鍛樺伐鍜岄儴闂ㄤ俊鎭紙userId 鏄憳宸D锛�
+        // 濉厖鍛樺伐鍜岄儴闂ㄤ俊鎭紙userId 鏄郴缁熻处鍙� ID锛屼笉鏄憳宸ユ。妗� ID锛�
         if (attendanceException.getUserId() != null) {
-            HrmEmployeeDO employee = employeeService.getEmployee(attendanceException.getUserId());
+            HrmEmployeeDO employee = employeeService.getEmployeeByUserId(attendanceException.getUserId());
             if (employee != null) {
                 respVO.setUserName(employee.getName());
             }
@@ -87,6 +90,7 @@
                 respVO.setDeptName(dept.getName());
             }
         }
+        respVO.setAttachmentList(storageAttachmentApi.listAttachments("hrm_attendance_exception", id));
         return success(respVO);
     }
 
@@ -107,16 +111,16 @@
      * 濉厖鍛樺伐鍜岄儴闂ㄤ俊鎭紙userId 鏄憳宸D锛�
      */
     private void fillUserInfo(List<HrmAttendanceExceptionRespVO> respList, List<HrmAttendanceExceptionDO> exceptionList) {
-        // 鎵归噺鑾峰彇鍛樺伐淇℃伅
+        // 鎵归噺鑾峰彇鍛樺伐淇℃伅锛坲serId 鏄郴缁熻处鍙� ID锛岄渶鎸� getEmployeeByUserId 鏌ワ級
         Set<Long> employeeIds = exceptionList.stream()
                 .map(HrmAttendanceExceptionDO::getUserId)
                 .filter(Objects::nonNull)
                 .collect(Collectors.toSet());
         Map<Long, HrmEmployeeDO> employeeMap = new HashMap<>();
-        for (Long employeeId : employeeIds) {
-            HrmEmployeeDO employee = employeeService.getEmployee(employeeId);
+        for (Long userId : employeeIds) {
+            HrmEmployeeDO employee = employeeService.getEmployeeByUserId(userId);
             if (employee != null) {
-                employeeMap.put(employeeId, employee);
+                employeeMap.put(userId, employee);
             }
         }
         // 鎵归噺鑾峰彇閮ㄩ棬淇℃伅

--
Gitblit v1.9.3