解决管理员权限相关问题

This commit is contained in:
Chopper 2022-04-25 10:31:39 +08:00
parent ce1954e7d3
commit bb50510ecb
5 changed files with 5 additions and 23 deletions

View File

@ -24,7 +24,7 @@ public interface MenuMapper extends BaseMapper<Menu> {
@Select("SELECT menu.* FROM li_menu AS menu WHERE menu.id IN (" +
"SELECT rm.menu_id FROM li_role_menu AS rm WHERE rm.role_id IN (" +
"SELECT ur.role_id FROM li_user_role AS ur WHERE ur.user_id=#{userId}) OR rm.role_id IN (" +
"SELECT dr.role_id FROM li_department_role AS dr WHERE dr.id=(" +
"SELECT dr.role_id FROM li_department_role AS dr WHERE dr.department_id =(" +
"SELECT department_id FROM li_admin_user AS au WHERE au.id = #{userId})))")
List<Menu> findByUserId(String userId);

View File

@ -141,15 +141,6 @@ public class AdminUserServiceImpl extends ServiceImpl<AdminUserMapper, AdminUser
if (user == null) {
return null;
}
AdminUserVO adminUserVO = new AdminUserVO(user);
//关联部门
if (user.getDepartmentId() != null) {
Department department = departmentService.getById(user.getDepartmentId());
if (department != null) {
adminUserVO.setDepartmentTitle(department.getTitle());
}
}
adminUserVO.setMenus(menuService.findUserList(user.getId()));
return user;
}

View File

@ -60,7 +60,7 @@ public class MenuServiceImpl extends ServiceImpl<MenuMapper, Menu> implements Me
if (Boolean.TRUE.equals(authUser.getIsSuper())) {
return this.tree();
}
List<Menu> userMenus = this.baseMapper.findByUserId(authUser.getId());
List<Menu> userMenus = this.findUserList(authUser.getId());
return this.tree(userMenus);
}

View File

@ -47,13 +47,7 @@ public class RoleMenuServiceImpl extends ServiceImpl<RoleMenuMapper, RoleMenu> i
@Override
public List<UserMenuVO> findAllMenu(String userId) {
String cacheKey = CachePrefix.USER_MENU.getPrefix() + userId;
List<UserMenuVO> menuList = (List<UserMenuVO>) cache.get(cacheKey);
if (menuList == null) {
menuList = menuMapper.getUserRoleMenu(userId);
cache.put(cacheKey, menuList);
}
return menuList;
return menuMapper.getUserRoleMenu(userId);
}

View File

@ -88,13 +88,10 @@ public class AdminUserManagerController {
@GetMapping(value = "/info")
@ApiOperation(value = "获取当前登录用户接口")
public ResultMessage<AdminUserVO> getUserInfo() {
public ResultMessage<AdminUser> getUserInfo() {
AuthUser tokenUser = UserContext.getCurrentUser();
if (tokenUser != null) {
AdminUserVO adminUser = new AdminUserVO(adminUserService.findByUsername(tokenUser.getUsername()));
if (StringUtils.isNotEmpty(adminUser.getDepartmentId())) {
adminUser.setDepartmentTitle(departmentService.getById(adminUser.getDepartmentId()).getTitle());
}
AdminUser adminUser = adminUserService.findByUsername(tokenUser.getUsername());
adminUser.setPassword(null);
return ResultUtil.data(adminUser);
}