|
|
@@ -92,6 +92,22 @@ public class MenuServiceImpl extends ServiceImpl<MenuMapper, Menu> implements IM
|
|
|
return buildRoutes(allMenus, roleMenus);
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 首页常用菜单
|
|
|
+ * @param roleId
|
|
|
+ * @param topMenuId
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ @Override
|
|
|
+ public List<MenuVO> getCustomRoutes(String roleId, Long topMenuId) {
|
|
|
+ if (StringUtil.isBlank(roleId)) {
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+ List<Menu> allMenus = baseMapper.allMenu();
|
|
|
+ List<Menu> roleMenus = (AuthUtil.isAdministrator() && Func.isEmpty(topMenuId)) ? allMenus : baseMapper.roleMenu(Func.toLongList(roleId), topMenuId);
|
|
|
+ return buildRoutes(allMenus, roleMenus);
|
|
|
+ }
|
|
|
+
|
|
|
private List<MenuVO> buildRoutes(List<Menu> allMenus, List<Menu> roleMenus) {
|
|
|
List<Menu> routes = new LinkedList<>(roleMenus);
|
|
|
roleMenus.forEach(roleMenu -> recursion(allMenus, routes, roleMenu));
|