递归构造树型结构

/**
 * 类名称:MenuTreeUtil
 * 类描述:递归构造树型结构
 */
public class MenuTreeUtil {
   
  public List<SysPermission> menuCommon;
  public JSONArray list = new JSONArray();
    
  public JSONArray menuList(List<SysPermission> menu){   
    this.menuCommon = menu;
    for (SysPermission sys : menu) {   
      JSONObject obj = new JSONObject();
      if(sys.getParentId() == 0){
        obj.put("menuid", sys.getId());
        obj.put("menuname", sys.getName());  
        obj.put("pid", sys.getParentId());
        obj.put("parentName", sys.getParentName());
        obj.put("url", sys.getUrl());
        obj.put("icon", sys.getIcon());
        obj.put("type", sys.getResourceType().equals("menu") ? 1 : 2);
        obj.put("menus", menuChild(sys.getId()));  
        list.add(obj);
      }
    }   
    return list;
  }
   
  public JSONArray menuChild(Integer id){
    JSONArray lists = new JSONArray();
    for(SysPermission sys:menuCommon){
      JSONObject childObj = new JSONObject();
      if(sys.getParentId() == id){
        
        childObj.put("menuid", sys.getId());
        childObj.put("menuname", sys.getName());  
        childObj.put("pid", sys.getParentId());
        childObj.put("parentName", sys.getParentName());
        childObj.put("url", sys.getUrl());
        childObj.put("icon", sys.getIcon());
        childObj.put("type", sys.getResourceType().equals("menu") ? 1 : 2);
        childObj.put("menus", menuChild(sys.getId()));  
        
        lists.add(childObj);
      }
    }
    return lists;
  }
 
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值