public List<LinkedHashMap<String, Object>> queryTree() {
Map<String, Object> paramMap = new HashMap<>();
paramMap.put("pid",0);
List<LinkedHashMap<String, Object>> linkedHashMaps = TypeMapper
.queryType(paramMap);
if(linkedHashMaps != null && linkedHashMaps.size()>0){
for(LinkedHashMap<String, Object> map : linkedHashMaps){
Long pid = (Long)map.get("id");
List<LinkedHashMap<String, Object>> linkedHashMaps1 = recursiveTree(pid);
map.put("child",linkedHashMaps1);
}
}
return linkedHashMaps;
}
public List<LinkedHashMap<String, Object>> recursiveTree(Long pid) {
Map<String, Object> paramMap = new HashMap<>();
paramMap.put("pid",pid);
List<LinkedHashMap<String, Object>> treeNodes = TypeMapper
.queryType(paramMap);
for (LinkedHashMap<String, Object> node:treeNodes) {
List<LinkedHashMap<String, Object>> treeNodes1 = recursiveTree( (Long)node.get("id"));
if (!treeNodes1.isEmpty()) {
node.put("child",treeNodes1);
}
}
return treeNodes;
}