博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
没有权限角色管理功能菜单加载
阅读量:6820 次
发布时间:2019-06-26

本文共 1822 字,大约阅读时间需要 6 分钟。

List<SuperMenu> superList=new ArrayList<SuperMenu>();

//取得所有显示为菜单的功能
List<Map<String, Object>> authorList = service.getfindAll();
List<String> superNameList = new ArrayList<String>();
Map<String,List<Menu>> menuMap = new HashMap<String, List<Menu>>();
List<Menu> menuList = new ArrayList<Menu>();
for(Map<String,Object> map:authorList){
if(StringUtils.isNullOrEmpty(String.valueOf(map.get("functiomParentId")))){
//取得父级菜单
List<Object> params=new ArrayList<Object>();
params.add(Long.valueOf(String.valueOf(map.get("functionId"))));
Map<String,Object> m=service.getfindMenu(params);
if(menuMap.get(m.get("functionName")) == null){
menuList = new ArrayList<Menu>();
superNameList.add(String.valueOf(m.get("functionId")));
superNameList.add(String.valueOf(m.get("functionName")));
}
params=new ArrayList<Object>();
params.add(Long.valueOf(String.valueOf(m.get("functionId"))));
List<Map<String, Object>> childList =service.getfindChild(params);//查询子级
for(Map<String,Object> fc:childList){
Menu menu = new Menu();
menu.setFunctionPath(String.valueOf(fc.get("functionPath")));
menu.setFunName(String.valueOf(fc.get("functionName")));
menuList.add(menu);
}
if(!menuMap.containsKey(String.valueOf(m.get("functionName")))){
menuMap.put(String.valueOf(m.get("functionName")), menuList);
}
}else{
continue;
}
}
superList = new ArrayList<SuperMenu>();
for(int i=0;i<superNameList.size();i++){
String supid= superNameList.get(i);
String superName = superNameList.get(i+1);
SuperMenu superMenu = new SuperMenu();
superMenu.setPid(Long.valueOf(supid));
superMenu.setFunName(superName);
superMenu.setMenuList(menuMap.get(superName));
superList.add(superMenu);
i=i+1;
}
request.setAttribute("superList",superList);
request.getRequestDispatcher("center.jsp").forward(request, response);

转载于:https://www.cnblogs.com/lanliying/p/4446427.html

你可能感兴趣的文章
HIVE常用操作以及函数
查看>>
【优达学城测评】SQL 支持许的数据类型(3)
查看>>
PHP CURL CURLOPT参数说明(curl_setopt)
查看>>
Learning NodeJs(1)
查看>>
怎么解决mysql远程连接报10038的错误
查看>>
js 父窗口可以找到子窗口的元素
查看>>
从FB10.3升级到11.0后几个问题的解决
查看>>
django使用MySql的基本步骤
查看>>
笔记《Java并发编程实战》[2]
查看>>
fpdf基本用法
查看>>
Linux下使用pure-ftpd建立匿名ftp访问
查看>>
PhalApi:[1.11] 快速入门: 接口开发示例 源码 图文
查看>>
分享插件
查看>>
HTML 页面中Buton 按钮提交,一个很坑的问题
查看>>
kitchen测试salt-formulas
查看>>
拿Nginx 部署你的静态网页
查看>>
23种设计模式
查看>>
制作自己的镜像(一)
查看>>
openstack命令整理
查看>>
服务Recipes
查看>>