码迷,mamicode.com
首页 > 其他好文 > 详细

获取常用收藏菜单

时间:2019-08-29 16:26:28      阅读:108      评论:0      收藏:0      [点我收藏+]

标签:turn   常用   bre   ima   add   map   string   null   children   

@Data
public class SysUserFavoriteMenu {
/**
* 账号ID
*/
private String userId;
/**
* 菜单ID
*/
private String menuId;
/**
* 父菜单ID
*/
private String parentId;
/**
* 经销商编码
*/
private String did;
}


public List<SysMenu> getFavoriteMenu(String userId,String did){ List<SysMenu> sysMenus = new ArrayList<>(); //获取常用菜单叶子节点 List<SysUserFavoriteMenu> sysUserFavoriteMenuMappers = sysUserFavoriteMenuMapper.getSysUserFavoriteMenu(userId,did); for(SysUserFavoriteMenu sysUserFavoriteMenu : sysUserFavoriteMenuMappers){ //获取叶子节点对应的父节点 SysMenu sysMenu = sysMenuMapper.selectByPrimaryKey(sysUserFavoriteMenu.getParentId()); //把父节点加入sysMenus中 并把这个叶子节点放在这个父节点下 SysMenu child = sysMenuMapper.selectByPrimaryKey(sysUserFavoriteMenu.getMenuId()); child.setIsFavorite("1"); if(sysMenus == null || sysMenus.isEmpty()){ sysMenu.getChildrens().add(child); sysMenus.add(sysMenu); }else{ int flag = 0; for(int a=0;a<sysMenus.size();a++){ //如果父节点等于收藏的父节点 那么 就是同一个父节点 则把这个childs也放在这个父节点下 if(sysMenus.get(a).getRowId().equals(sysMenu.getRowId())){ sysMenus.get(a).getChildrens().add(child); flag++; break; } } if(flag==0){ sysMenu.getChildrens().add(child); sysMenus.add(sysMenu); } } } return sysMenus; }

 

获取常用收藏菜单

标签:turn   常用   bre   ima   add   map   string   null   children   

原文地址:https://www.cnblogs.com/pan-my/p/11429760.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!