Commit 1cbf9edd by Suvalue

疾病接口修改

parent a92825e8
package com.bsoft.api.service.Impl; package com.bsoft.api.service.Impl;
import com.bsoft.api.mapper.DicOrgMapper;
import com.bsoft.api.mapper.SerDiseaseMapper; import com.bsoft.api.mapper.SerDiseaseMapper;
import com.bsoft.api.model.DicOrg;
import com.bsoft.api.model.SerDisease; import com.bsoft.api.model.SerDisease;
import com.bsoft.api.model.respmodel.DiseaseLevel; import com.bsoft.api.model.respmodel.DiseaseLevel;
import com.bsoft.api.service.SerDiseaseService; import com.bsoft.api.service.SerDiseaseService;
...@@ -17,8 +15,6 @@ import java.util.List; ...@@ -17,8 +15,6 @@ import java.util.List;
public class SerDiseaseServiceImpl implements SerDiseaseService { public class SerDiseaseServiceImpl implements SerDiseaseService {
@Resource @Resource
private SerDiseaseMapper serDiseaseMapper; private SerDiseaseMapper serDiseaseMapper;
@Resource
private DicOrgMapper dicOrgMapper;
@Override @Override
public List<DiseaseLevel> selectListByIdorLevel(String date,String diseaseCode,Integer level,String docCode,String deptCode,Long userId) { public List<DiseaseLevel> selectListByIdorLevel(String date,String diseaseCode,Integer level,String docCode,String deptCode,Long userId) {
...@@ -55,10 +51,27 @@ public class SerDiseaseServiceImpl implements SerDiseaseService { ...@@ -55,10 +51,27 @@ public class SerDiseaseServiceImpl implements SerDiseaseService {
if(disease == null){ if(disease == null){
return null; return null;
} }
//查询父级菜单对象
DiseaseLevel diseaseLevel = serDiseaseMapper.selectParentById(date,disease.getId().intValue());
List<DiseaseLevel> parentList = new ArrayList<>();
boolean isParent = true;
DiseaseLevel diseaseLevelResult = null;
Integer diseaseId = disease.getId().intValue();
//查询父级菜单对象(直到查询到顶级)
while(isParent){
DiseaseLevel diseaseLevel = serDiseaseMapper.selectParentById(date,diseaseId);
if(diseaseLevel != null){
List<DiseaseLevel> sonList = new ArrayList<>();
if(diseaseLevelResult != null){
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> serDiseaseList = serDiseaseMapper.selectByParentId(date,disease.getParentId().intValue(),docCode,deptCode);
List<DiseaseLevel> diseaseLevelList = new ArrayList<>(); List<DiseaseLevel> diseaseLevelList = new ArrayList<>();
...@@ -80,15 +93,33 @@ public class SerDiseaseServiceImpl implements SerDiseaseService { ...@@ -80,15 +93,33 @@ public class SerDiseaseServiceImpl implements SerDiseaseService {
diseaseLevel1.setParentId(serDiseases.getParentId()); diseaseLevel1.setParentId(serDiseases.getParentId());
diseaseLevelList.add(diseaseLevel1); diseaseLevelList.add(diseaseLevel1);
} }
if(diseaseLevel != null){ if(diseaseLevelResult != null){
diseaseLevel.setDiseaseLevelList(diseaseLevelList); diseaseLevelResult = getSonDiseaseList(diseaseLevelResult,null,diseaseLevelList);
parentList.add(diseaseLevel); // diseaseLevelResult.setDiseaseLevelList(diseaseLevelList);
parentList.add(diseaseLevelResult);
return parentList; return parentList;
}else{ }else{
return diseaseLevelList; 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,diseaseLevel.getDiseaseLevelList(),diseaseLevelListSon);
}else if(diseaseLevelList != null && diseaseLevelList.size() > 0){
for(DiseaseLevel info : diseaseLevelList){
getSonDiseaseList(info,null,diseaseLevelListSon);
}
}else{
if(diseaseLevel != null && 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