java封装树形目录json数据

@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;
	}

猜你喜欢

转载自blog.csdn.net/cai_hongfei/article/details/83010516