From 5db13c2ad6678cf4614b81c95df035c6f47d313d Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期五, 16 十月 2026 21:57:36 +0800
Subject: [PATCH] feat(hrm): 考勤规则放开部门唯一限制,支持同一部门多班次

---
 yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/service/user/AdminUserServiceImpl.java |   13 ++++++++-----
 1 files changed, 8 insertions(+), 5 deletions(-)

diff --git a/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/service/user/AdminUserServiceImpl.java b/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/service/user/AdminUserServiceImpl.java
index 6a832ad..fc11221 100644
--- a/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/service/user/AdminUserServiceImpl.java
+++ b/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/service/user/AdminUserServiceImpl.java
@@ -542,13 +542,13 @@
                 UserSaveReqVO saveReqVO = BeanUtils.toBean(importUser, UserSaveReqVO.class)
                         .setUsername(username).setDeptId(deptId).setPostIds(postIds).setPassword(password);
                 validateUserImportRow(saveReqVO, password);
-                // 2.1.3 鏍¢獙鐢ㄦ埛璐﹀彿銆佹墜鏈哄彿銆侀偖绠卞敮涓�锛屼互鍙婇儴闂ㄣ�佸矖浣嶅彲鐢�
-                validateUserForCreateOrUpdate(null, username, saveReqVO.getMobile(), saveReqVO.getEmail(),
-                        deptId, postIds);
 
-                // 2.2.1 鍒ゆ柇濡傛灉涓嶅瓨鍦紝鍦ㄨ繘琛屾彃鍏�
+                // 2.2.1 鍒ゆ柇濡傛灉涓嶅瓨鍦紝杩涜鎻掑叆
                 AdminUserDO existUser = userMapper.selectByUsername(username);
                 if (existUser == null) {
+                    // 2.2.2 鏍¢獙鐢ㄦ埛璐﹀彿銆佹墜鏈哄彿銆侀偖绠卞敮涓�锛屼互鍙婇儴闂ㄣ�佸矖浣嶅彲鐢�
+                    validateUserForCreateOrUpdate(null, username, saveReqVO.getMobile(), saveReqVO.getEmail(),
+                            deptId, postIds);
                     AdminUserDO user = BeanUtils.toBean(saveReqVO, AdminUserDO.class)
                             .setPassword(encodePassword(password))
                             .setStatus(ObjUtil.defaultIfNull(importUser.getStatus(),
@@ -558,11 +558,14 @@
                     respVO.getCreateUsernames().add(username);
                     return;
                 }
-                // 2.2.2 濡傛灉瀛樺湪锛屽垽鏂槸鍚﹀厑璁告洿鏂�
+                // 2.2.3 濡傛灉瀛樺湪锛屽垽鏂槸鍚﹀厑璁告洿鏂�
                 if (!isUpdateSupport) {
                     throw new ServiceException(USER_USERNAME_EXISTS.getCode(),
                             "鐢ㄦ埛璐﹀彿宸插瓨鍦ㄣ�傚闇�瑕嗙洊杩欎釜鐢ㄦ埛锛岃鍕鹃�夈�屾槸鍚﹁鐩栥�嶅悗閲嶆柊瀵煎叆锛涘惁鍒欒淇敼 Excel 涓殑鐢ㄦ埛璐﹀彿");
                 }
+                // 2.2.4 瑕嗙洊鏃舵寜鏇存柊鏍¢獙锛堝甫涓婄敤鎴风紪鍙凤紝鍞竴鎬ф牎楠屼細璺宠繃杩欎釜鐢ㄦ埛鑷繁锛�
+                validateUserForCreateOrUpdate(existUser.getId(), username, saveReqVO.getMobile(),
+                        saveReqVO.getEmail(), deptId, postIds);
                 AdminUserDO updateUser = BeanUtils.toBean(saveReqVO, AdminUserDO.class)
                         .setId(existUser.getId()).setPassword(null) // 瑕嗙洊鏃朵笉鏀瑰瘑鐮侊紝閬垮厤鎶婂湪鐢ㄨ处鍙风殑瀵嗙爜鏀规帀
                         .setStatus(importUser.getStatus()); //銆岃处鍙风姸鎬併�嶇暀绌烘椂淇濇寔鍘熺姸鎬�

--
Gitblit v1.9.3