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