java封裝樹形目錄json資料
阿新 • • 發佈:2018-12-14
@SuppressWarnings("unchecked") @RequestMapping("/test/catalog/{id}") @ResponseBody public List<Map<String, Object>> json(@PathVariable("id") String id) { Map<String, Object> childrenList = manualDirectoryService.getChildrenList(id); //查詢出的目錄資料集合 List<ManualDirectory> list = (List<ManualDirectory>) childrenList.get("nodes"); return (List<Map<String, Object>>) getChild(list, id).get(0).get("children"); } private List<Map<String, Object>> getChild(List<ManualDirectory> list, String id) { List<Map<String, Object>> tree = new ArrayList<>(); for (ManualDirectory md : list) { if (md.getPid().equals(id)) { Map<String, Object> map = new HashMap<>(); map.put("name", md.getCnName()); map.put("code", md.getCode()); map.put("path", "template/" + md.getCode() + ".html"); if (getChild(list, md.getId()).size() >= 1) { map.put("children", getChild(list, md.getId())); } tree.add(map); } } return tree; }