Commit 315583ef by Suvalue

疾病接口修改

parent a013ac65
......@@ -51,10 +51,27 @@ public class SerDiseaseServiceImpl implements SerDiseaseService {
if(disease == null){
return null;
}
//查询父级菜单对象
DiseaseLevel diseaseLevel = serDiseaseMapper.selectParentById(date,disease.getId().intValue());
List<DiseaseLevel> parentList = new ArrayList<>();
boolean isParent = true;
DiseaseLevel diseaseLevelResult = new DiseaseLevel();
Integer diseaseId = disease.getId().intValue();
//查询父级菜单对象(直到查询到顶级)
while(isParent){
DiseaseLevel diseaseLevel = serDiseaseMapper.selectParentById(date,diseaseId);
if(diseaseLevel != null){
if(diseaseLevelResult != null){
List<DiseaseLevel> sonList = new ArrayList<>();
sonList.add(diseaseLevelResult);
diseaseLevel.setDiseaseLevelList(sonList);
diseaseId = diseaseLevel.getId().intValue();
diseaseLevelResult = diseaseLevel;
}
}else{
isParent = false;
}
}
List<DiseaseLevel> parentList = new ArrayList<>();
//查询同级菜单列表
List<DiseaseLevel> serDiseaseList = serDiseaseMapper.selectByParentId(date,disease.getParentId().intValue(),docCode,deptCode);
List<DiseaseLevel> diseaseLevelList = new ArrayList<>();
......@@ -76,15 +93,33 @@ public class SerDiseaseServiceImpl implements SerDiseaseService {
diseaseLevel1.setParentId(serDiseases.getParentId());
diseaseLevelList.add(diseaseLevel1);
}
if(diseaseLevel != null){
diseaseLevel.setDiseaseLevelList(diseaseLevelList);
parentList.add(diseaseLevel);
if(diseaseLevelResult != null){
diseaseLevelResult = getSonDiseaseList(diseaseLevelResult,null,diseaseLevelList);
// diseaseLevelResult.setDiseaseLevelList(diseaseLevelList);
parentList.add(diseaseLevelResult);
return parentList;
}else{
return diseaseLevelList;
}
}
private DiseaseLevel getSonDiseaseList(DiseaseLevel diseaseLevel,List<DiseaseLevel> diseaseLevelList,
List<DiseaseLevel> diseaseLevelListSon) {
if(diseaseLevel != null && diseaseLevel.getDiseaseLevelList() != null && diseaseLevel.getDiseaseLevelList().size() > 0){
getSonDiseaseList(null,diseaseLevelList,diseaseLevelListSon);
}else if(diseaseLevelList != null && diseaseLevelList.size() > 0){
for(DiseaseLevel info : diseaseLevelList){
getSonDiseaseList(info,null,diseaseLevelListSon);
}
}else{
if(diseaseLevelListSon != null && diseaseLevelListSon.size() > 0){
diseaseLevel.setDiseaseLevelList(diseaseLevelListSon);
}
}
return diseaseLevel;
}
/**
* 根据等级查询所有该等级数据
*
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment