refactor(system): 优化代码结构和查询效率
- 移除了 RoleMenuRepository 中的冗余方法 selectByRoleId - 优化了 UserServiceImpl 中的权限刷新逻辑,减少了数据库查询次数
This commit is contained in:
parent
11a6405be3
commit
c125eb15b9
@ -11,6 +11,4 @@ import java.util.Set;
|
||||
* @author Yao
|
||||
*/
|
||||
public interface RoleMenuRepository extends BaseMapper<RoleMenu> {
|
||||
@Select("select * from role_menu where role_id = #{roleId}")
|
||||
Set<RoleMenu> selectByRoleId(@Param("roleId") Long roleId);
|
||||
}
|
||||
|
@ -140,9 +140,9 @@ public class UserServiceImpl extends ServiceImpl<UserRepository, User> implement
|
||||
.update();
|
||||
userDetails.setRole(role);
|
||||
if (updated) {
|
||||
// 刷新权限表
|
||||
List<Menu> menus = menuRepository.selectByRoleId(roleId);
|
||||
Set<String> permissions = menus.stream().map(Menu::getPermissions).collect(Collectors.toSet());
|
||||
Set<String> permissions = menuRepository.selectByRoleId(roleId).stream()
|
||||
.map(Menu::getPermissions)
|
||||
.collect(Collectors.toSet());
|
||||
userDetails.setPermissions(permissions);
|
||||
SecurityUtil.setUserInfo(userDetails);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user