From 2d03ec79e1892248b520cf097e8a58dd82a4892f Mon Sep 17 00:00:00 2001
From: liyong <18434998025@163.com>
Date: 星期五, 22 五月 2026 15:19:15 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev_天津_阳光彩印' into dev_天津_阳光彩印

---
 src/main/java/com/ruoyi/project/system/service/impl/SysUserServiceImpl.java |   32 +++++++++++++++++++++++++++++---
 1 files changed, 29 insertions(+), 3 deletions(-)

diff --git a/src/main/java/com/ruoyi/project/system/service/impl/SysUserServiceImpl.java b/src/main/java/com/ruoyi/project/system/service/impl/SysUserServiceImpl.java
index 6bb8927..062c117 100644
--- a/src/main/java/com/ruoyi/project/system/service/impl/SysUserServiceImpl.java
+++ b/src/main/java/com/ruoyi/project/system/service/impl/SysUserServiceImpl.java
@@ -75,7 +75,19 @@
     @DataScope(deptAlias = "d", userAlias = "u")
     public List<SysUser> selectUserList(SysUser user)
     {
-        return userMapper.selectUserList(user);
+        List<SysUser> userList = userMapper.selectUserList(user);
+        // 灏嗚鑹睮D瀛楃涓茶浆鎹负鏁扮粍
+        userList.forEach(u -> {
+            if (u.getRoleIdsStr() != null && !u.getRoleIdsStr().isEmpty()) {
+                String[] strIds = u.getRoleIdsStr().split(",");
+                Long[] roleIds = new Long[strIds.length];
+                for (int i = 0; i < strIds.length; i++) {
+                    roleIds[i] = Long.parseLong(strIds[i]);
+                }
+                u.setRoleIds(roleIds);
+            }
+        });
+        return userList;
     }
 
     /**
@@ -456,7 +468,7 @@
 
     /**
      * 鎵归噺鍒犻櫎鐢ㄦ埛淇℃伅
-     * 
+     *
      * @param userIds 闇�瑕佸垹闄ょ殑鐢ㄦ埛ID
      * @return 缁撴灉
      */
@@ -473,6 +485,9 @@
         userRoleMapper.deleteUserRole(userIds);
         // 鍒犻櫎鐢ㄦ埛涓庡矖浣嶅叧鑱�
         userPostMapper.deleteUserPost(userIds);
+        // 鍒犻櫎鐢ㄦ埛涓庨儴闂ㄦ暟鎹�
+        sysUserDeptMapper.delete(new LambdaQueryWrapper<SysUserDept>()
+                .in(SysUserDept::getUserId, userIds));
         return userMapper.deleteUserByIds(userIds);
     }
 
@@ -555,7 +570,18 @@
      */
     @Override
     public List<SysUser> userListNoPage(SysUser user) {
-        return userMapper.selectUserList(user);
+        List<SysUser> userList = userMapper.selectUserList(user);
+        userList.forEach(u -> {
+            if (u.getRoleIdsStr() != null && !u.getRoleIdsStr().isEmpty()) {
+                String[] strIds = u.getRoleIdsStr().split(",");
+                Long[] roleIds = new Long[strIds.length];
+                for (int i = 0; i < strIds.length; i++) {
+                    roleIds[i] = Long.parseLong(strIds[i]);
+                }
+                u.setRoleIds(roleIds);
+            }
+        });
+        return userList;
     }
 
     /**

--
Gitblit v1.9.3