Commit 1cbf9edd by Suvalue

疾病接口修改

parent a92825e8
package com.bsoft.api.service.Impl;
import com.bsoft.api.mapper.DicOrgMapper;
import com.bsoft.api.mapper.SerDiseaseMapper;
import com.bsoft.api.model.DicOrg;
import com.bsoft.api.model.SerDisease;
import com.bsoft.api.model.respmodel.DiseaseLevel;
import com.bsoft.api.service.SerDiseaseService;
......@@ -17,8 +15,6 @@ import java.util.List;
public class SerDiseaseServiceImpl implements SerDiseaseService {
@Resource
private SerDiseaseMapper serDiseaseMapper;
@Resource
private DicOrgMapper dicOrgMapper;
@Override
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 {
if(disease == 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> diseaseLevelList = new ArrayList<>();
......@@ -80,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,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