From c22dd7309bbf7b162f4580cf55e9f26cc171d1c7 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期三, 04 十一月 2026 15:21:32 +0800
Subject: [PATCH] 修复考勤汇总生成与新增节假日报错

---
 yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/service/employee/HrmEmployeeServiceImpl.java |   18 ++++++++++++++++++
 1 files changed, 18 insertions(+), 0 deletions(-)

diff --git a/yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/service/employee/HrmEmployeeServiceImpl.java b/yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/service/employee/HrmEmployeeServiceImpl.java
index c326a89..05ad5f0 100644
--- a/yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/service/employee/HrmEmployeeServiceImpl.java
+++ b/yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/service/employee/HrmEmployeeServiceImpl.java
@@ -325,11 +325,29 @@
 
     @Override
     public PageResult<HrmEmployeeDO> getEmployeePage(HrmEmployeePageReqVO pageReqVO) {
+        if (pageReqVO.getDeptId() != null) {
+            // 閫変腑閮ㄩ棬鏃讹紝杩炲甫鏌ヨ鍏舵墍鏈夊瓙閮ㄩ棬鐨勫憳宸ワ紙鍚嚜韬級
+            List<DeptRespDTO> childDepts = deptApi.getChildDeptList(pageReqVO.getDeptId());
+            Set<Long> deptIds = new LinkedHashSet<>();
+            deptIds.add(pageReqVO.getDeptId());
+            if (CollUtil.isNotEmpty(childDepts)) {
+                childDepts.forEach(dept -> deptIds.add(dept.getId()));
+            }
+            return employeeMapper.selectPageByDeptIds(pageReqVO, deptIds);
+        }
         return employeeMapper.selectPage(pageReqVO);
     }
 
     @Override
     public List<HrmEmployeeDO> getEmployeeList(Collection<Long> ids) {
+        // ids 涓� null 鏃惰〃绀烘煡璇㈠叏閮ㄥ憳宸ワ紙鑰冨嫟姹囨�汇�佽柂閰牳绠楃瓑鎵归噺鍦烘櫙渚濊禆姝よ涔夛級锛�
+        // 鏄惧紡浼犲叆绌洪泦鍚堟椂杩斿洖绌猴紝閬垮厤璇煡鍏ㄥ憳
+        if (ids == null) {
+            return employeeMapper.selectList(null);
+        }
+        if (ids.isEmpty()) {
+            return Collections.emptyList();
+        }
         return employeeMapper.selectByIds(ids);
     }
 

--
Gitblit v1.9.3