diff --git a/rds-console/console-system/src/main/java/com/tongtech/system/service/impl/SysRoleServiceImpl.java b/rds-console/console-system/src/main/java/com/tongtech/system/service/impl/SysRoleServiceImpl.java index 901457b68839efc8faeabb1e675511e5287143f7..b9408d9143b90f36b9a525d85c3c65674723657e 100644 --- a/rds-console/console-system/src/main/java/com/tongtech/system/service/impl/SysRoleServiceImpl.java +++ b/rds-console/console-system/src/main/java/com/tongtech/system/service/impl/SysRoleServiceImpl.java @@ -62,17 +62,32 @@ public class SysRoleServiceImpl implements ISysRoleService { List userRoles = roleMapper.selectRolePermissionByUserId(userId); List roles = selectRoleAll(); - for (SysRole role : roles) - { - for (SysRole userRole : userRoles) - { - if (role.getRoleId().longValue() == userRole.getRoleId().longValue()) - { - role.setFlag(true); - break; - } +// for (SysRole role : roles) +// { +// for (SysRole userRole : userRoles) +// { +// if (role.getRoleId().longValue() == userRole.getRoleId().longValue()) +// { +// role.setFlag(true); +// break; +// } +// } +// } +// return roles; + + // 使用 Set 来存储用户角色的 ID + Set userRoleIds = new HashSet<>(); + for (SysRole userRole : userRoles) { + userRoleIds.add(userRole.getRoleId()); + } + + // 遍历所有角色,并检查其是否在用户角色ID集合中 + for (SysRole role : roles) { + if (userRoleIds.contains(role.getRoleId())) { + role.setFlag(true); } } + return roles; }