**
**
[
{
"children": [
{
"label": "心绞痛",
"value": 31
},
{
"label": "急性心梗",
"value": 32
}
],
"label": "心血管系统疾病",
"value": 3
},
{
"label": "血液系统疾病",
"value": 4
},
{
"label": "内分泌及代谢疾病",
"value": 5
},
{
"label": "泌尿系统疾病",
"value": 6
},
{
"children": [
{
"label": "脑血管意外",
"value": 35
}
],
"label": "神经系统疾病",
"value": 7
},
{
"label": "普通外科疾病",
"value": 8
},
{
"children": [
{
"children": [
{
"label": "支气管炎",
"value": 29
},
{
"label": "肺炎",
"value": 30
}
],
"label": "呼吸系统疾病",
"value": 1
},
{
"label": "下肢外伤",
"value": 36
},
{
"label": "交通伤",
"value": 41
}
],
"label": "创伤",
"value": 9
},
{
"children": [
{
"label": "皮肤病",
"value": 40
}
],
"label": "烧伤",
"value": 10
},
{
"label": "车祸",
"value": 11
},
{
"children": [
{
"label": "胃癌",
"value": 37
}
],
"label": "恶性肿瘤",
"value": 12
}
]
java代码:
public ResponseData queryDiseasesType(){
List<Map<String,Object>> list = measureDetailDao.queryDiseasesType();
List<Object> list2 = new ArrayList<Object>();
for (Map<String,Object> x: list) {
Map<String,Object> mapArr = new HashMap<String, Object>();
if(null == x.get("parent_id") || "".equals(x.get("parent_id"))){
mapArr.put("value", x.get("id"));
mapArr.put("label", x.get("display_name"));
List<?> id1 = menuChild(list, x.get("id").toString());
if(null !=id1 && id1.size()>0){
mapArr.put("children", id1);
}
list2.add(mapArr);
}
}
System.out.println(JSONObject.toJSONString(list2));
return ResponseData.success(list2);
}
public List<?> menuChild(List<Map<String,Object>> list,String id){
List<Object> lists = new ArrayList<Object>();
for(Map<String,Object> a :list){
Map<String,Object> childArray = new HashMap<String, Object>();
if(null != a.get("parent_id") && String.valueOf(a.get("parent_id")).equals( id)){
childArray.put("value",a.get("id"));
childArray.put("label", a.get("display_name"));
List<?> id1 = menuChild(list, a.get("id").toString());
if(null !=id1 && id1.size()>0){
childArray.put("children",id1);
}
lists.add(childArray);
}
}
return lists;
}
by dk 2022/03/09