处理问题
This commit is contained in:
parent
e642afd0e2
commit
7d73684052
@ -64,8 +64,8 @@ public class IndexRouteController {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@GetMapping("default-main/{rootMenuId}")
|
@GetMapping("default-main/{menuIdAndDefaultHome}")
|
||||||
public ModelAndView defaultMain(@PathVariable("rootMenuId") String rootMenuId) {
|
public ModelAndView defaultMain(@PathVariable("menuIdAndDefaultHome") String menuIdAndDefaultHome) {
|
||||||
ModelAndView mv = new ModelAndView("default-main");
|
ModelAndView mv = new ModelAndView("default-main");
|
||||||
UserInfoBO userInfoBO = securityComponent.getCurrentUser();
|
UserInfoBO userInfoBO = securityComponent.getCurrentUser();
|
||||||
mv.addObject("userUsername", userInfoBO.getUserUsername());
|
mv.addObject("userUsername", userInfoBO.getUserUsername());
|
||||||
@ -89,9 +89,15 @@ public class IndexRouteController {
|
|||||||
if (!StringUtils.isBlank(config.get(IUserCenterConst.MENU_MODE))) {
|
if (!StringUtils.isBlank(config.get(IUserCenterConst.MENU_MODE))) {
|
||||||
mv.addObject(IUserCenterConst.MENU_MODE, config.get(IUserCenterConst.MENU_MODE));
|
mv.addObject(IUserCenterConst.MENU_MODE, config.get(IUserCenterConst.MENU_MODE));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 得到根节点菜单ID与默认home页面
|
||||||
|
String[] menuIdAndDefaultHomeArray = menuIdAndDefaultHome.split(SYSTEM_HOME_SPLIT);
|
||||||
|
String rootMenuId = menuIdAndDefaultHomeArray[0];
|
||||||
|
|
||||||
|
// 处理系统菜单
|
||||||
if (menuBaseService != null) {
|
if (menuBaseService != null) {
|
||||||
// 所有系统菜单
|
// 查询所有系统菜单
|
||||||
List<MenuDTO> systems = menuBaseService.listByParentId("0");
|
List<MenuDTO> systemsRootMenus = menuBaseService.listByParentId("0");
|
||||||
List<MenuDTO> menus;
|
List<MenuDTO> menus;
|
||||||
if (securityComponent.isAdmin()) {
|
if (securityComponent.isAdmin()) {
|
||||||
// 管理员
|
// 管理员
|
||||||
@ -99,10 +105,10 @@ public class IndexRouteController {
|
|||||||
if (menuIds.isEmpty()) {
|
if (menuIds.isEmpty()) {
|
||||||
menus = menuBaseService.listSystemMenu(rootMenuId);
|
menus = menuBaseService.listSystemMenu(rootMenuId);
|
||||||
// 移除菜单中的第一个斜杠,保证跳转正常
|
// 移除菜单中的第一个斜杠,保证跳转正常
|
||||||
systems = MenuUtil.listSystems(systems);
|
systemsRootMenus = MenuUtil.listSystems(systemsRootMenus);
|
||||||
} else {
|
} else {
|
||||||
menus = menuBaseService.listSystemMenu(rootMenuId, menuIds);
|
menus = menuBaseService.listSystemMenu(rootMenuId, menuIds);
|
||||||
systems = MenuUtil.listSystems(systems, menuIds);
|
systemsRootMenus = MenuUtil.listSystems(systemsRootMenus, menuIds);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
// 普通用户
|
// 普通用户
|
||||||
@ -117,16 +123,17 @@ public class IndexRouteController {
|
|||||||
List<String> menuIds = roleMenuBaseService.listMenuId(roleIds);
|
List<String> menuIds = roleMenuBaseService.listMenuId(roleIds);
|
||||||
menus = menuBaseService.listSystemMenu(rootMenuId, menuIds);
|
menus = menuBaseService.listSystemMenu(rootMenuId, menuIds);
|
||||||
// 去除多余的系统
|
// 去除多余的系统
|
||||||
systems = MenuUtil.listSystems(systems, menuIds);
|
systemsRootMenus = MenuUtil.listSystems(systemsRootMenus, menuIds);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
mv.addObject("menus", menus);
|
mv.addObject("menus", menus);
|
||||||
mv.addObject("systems", systems.isEmpty() ? null : systems);
|
mv.addObject("systems", systemsRootMenus.isEmpty() ? null : systemsRootMenus);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 默认home页面
|
||||||
String defaultHome = "default-home";
|
String defaultHome = "default-home";
|
||||||
// 含有系统首页分隔符,并且有内容
|
// 含有系统首页分隔符,并且有内容
|
||||||
if (rootMenuId.contains(SYSTEM_HOME_SPLIT) && !rootMenuId.endsWith(SYSTEM_HOME_SPLIT)) {
|
if (menuIdAndDefaultHomeArray.length > 1) {
|
||||||
String systemHomeUrl = rootMenuId.split(SYSTEM_HOME_SPLIT)[1];
|
String systemHomeUrl = rootMenuId.split(SYSTEM_HOME_SPLIT)[1];
|
||||||
if (!StringUtils.isBlank(systemHomeUrl)) {
|
if (!StringUtils.isBlank(systemHomeUrl)) {
|
||||||
defaultHome = systemHomeUrl;
|
defaultHome = systemHomeUrl;
|
||||||
|
Loading…
Reference in New Issue
Block a user