系统菜单精确搜索优化
parent
ecd5cb5a4c
commit
7a2f38b75e
|
@ -68,9 +68,31 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
|
||||||
menu.getParams().put("userId", userId);
|
menu.getParams().put("userId", userId);
|
||||||
menuList = menuMapper.selectMenuListByUserId(menu);
|
menuList = menuMapper.selectMenuListByUserId(menu);
|
||||||
}
|
}
|
||||||
|
if(menuList.size()==1){
|
||||||
|
SysMenu sysMenu = menuList.get(0);
|
||||||
|
this.getMenuList(menuList,sysMenu);
|
||||||
|
List<SysMenu> childList = this.getChildList(menuMapper.selectMenuList(null), sysMenu);
|
||||||
|
//找子节点
|
||||||
|
menuList.addAll(childList);
|
||||||
|
}
|
||||||
return menuList;
|
return menuList;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 递归找祖结点
|
||||||
|
* @param menuList 菜单集合
|
||||||
|
* @param menu 底层菜单
|
||||||
|
*/
|
||||||
|
public void getMenuList(List<SysMenu> menuList,SysMenu menu){
|
||||||
|
if(menu.getParentId().equals(0L)){
|
||||||
|
return;
|
||||||
|
}else {
|
||||||
|
SysMenu sysMenu = this.selectMenuById(menu.getParentId());
|
||||||
|
menuList.add(sysMenu);
|
||||||
|
getMenuList(menuList,sysMenu);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 根据用户ID查询权限
|
* 根据用户ID查询权限
|
||||||
*
|
*
|
||||||
|
|
Loading…
Reference in New Issue