|
@@ -18,6 +18,7 @@ import com.diagbot.vo.PushPlanVO;
|
|
import com.diagbot.vo.PushVO;
|
|
import com.diagbot.vo.PushVO;
|
|
import com.diagbot.vo.SearchData;
|
|
import com.diagbot.vo.SearchData;
|
|
import com.google.common.collect.Lists;
|
|
import com.google.common.collect.Lists;
|
|
|
|
+import org.apache.commons.collections4.MapUtils;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.stereotype.Component;
|
|
import org.springframework.stereotype.Component;
|
|
|
|
|
|
@@ -59,83 +60,100 @@ public class PushFacade {
|
|
searchData = assembleFacade.assembleData(searchData);
|
|
searchData = assembleFacade.assembleData(searchData);
|
|
BeanUtil.copyProperties(searchData, pushVO);
|
|
BeanUtil.copyProperties(searchData, pushVO);
|
|
RespDTO<PushDTO> resp = cdssCoreClient.push(pushVO);
|
|
RespDTO<PushDTO> resp = cdssCoreClient.push(pushVO);
|
|
- //RespDTOUtil.respNGDeal(resp, "远程调用推理接口失败");
|
|
|
|
- //PushDTO data = resp.data;
|
|
|
|
- PushDTO data = new PushDTO();
|
|
|
|
|
|
+ RespDTOUtil.respNGDeal(resp, "远程调用推理接口失败");
|
|
|
|
+ PushDTO data = resp.data;
|
|
|
|
+ // PushDTO data = new PushDTO();
|
|
//症状
|
|
//症状
|
|
- List<PushBaseDTO> symptom = Lists.newArrayList();
|
|
|
|
- PushBaseDTO sympItem1 = new PushBaseDTO();
|
|
|
|
- sympItem1.setName("发热");
|
|
|
|
- symptom.add(sympItem1);
|
|
|
|
- PushBaseDTO sympItem2 = new PushBaseDTO();
|
|
|
|
- sympItem2.setName("咳嗽");
|
|
|
|
- symptom.add(sympItem2);
|
|
|
|
- data.setSymptom(symptom);
|
|
|
|
|
|
+ if (ListUtil.isEmpty(data.getSymptom())){
|
|
|
|
+ List<PushBaseDTO> symptom = Lists.newArrayList();
|
|
|
|
+ PushBaseDTO sympItem1 = new PushBaseDTO();
|
|
|
|
+ sympItem1.setName("发热");
|
|
|
|
+ symptom.add(sympItem1);
|
|
|
|
+ PushBaseDTO sympItem2 = new PushBaseDTO();
|
|
|
|
+ sympItem2.setName("咳嗽");
|
|
|
|
+ symptom.add(sympItem2);
|
|
|
|
+ data.setSymptom(symptom);
|
|
|
|
+ }
|
|
//体格检查
|
|
//体格检查
|
|
- List<PushBaseDTO> vital = Lists.newArrayList();
|
|
|
|
- PushBaseDTO vital1 = new PushBaseDTO();
|
|
|
|
- vital1.setName("肾区叩痛阳性");
|
|
|
|
- vital.add(vital1);
|
|
|
|
- PushBaseDTO vital2 = new PushBaseDTO();
|
|
|
|
- vital2.setName("血压升高");
|
|
|
|
- vital.add(vital2);
|
|
|
|
- data.setVital(vital);
|
|
|
|
|
|
+ if (ListUtil.isEmpty(data.getVital())){
|
|
|
|
+ List<PushBaseDTO> vital = Lists.newArrayList();
|
|
|
|
+ PushBaseDTO vital1 = new PushBaseDTO();
|
|
|
|
+ vital1.setName("肾区叩痛阳性");
|
|
|
|
+ vital.add(vital1);
|
|
|
|
+ PushBaseDTO vital2 = new PushBaseDTO();
|
|
|
|
+ vital2.setName("血压升高");
|
|
|
|
+ vital.add(vital2);
|
|
|
|
+ data.setVital(vital);
|
|
|
|
+ }
|
|
//检验
|
|
//检验
|
|
- List<PushBaseDTO> lis = Lists.newArrayList();
|
|
|
|
- PushBaseDTO lis1 = new PushBaseDTO();
|
|
|
|
- lis1.setName("血常规");
|
|
|
|
- lis.add(lis1);
|
|
|
|
- PushBaseDTO lis2 = new PushBaseDTO();
|
|
|
|
- lis2.setName("尿常规");
|
|
|
|
- lis.add(lis2);
|
|
|
|
- PushBaseDTO lis3 = new PushBaseDTO();
|
|
|
|
- lis3.setName("幽门螺杆菌抗体测定");
|
|
|
|
- lis.add(lis3);
|
|
|
|
- data.setLis(lis);
|
|
|
|
|
|
+ if (ListUtil.isEmpty(data.getLis())){
|
|
|
|
+ List<PushBaseDTO> lis = Lists.newArrayList();
|
|
|
|
+ PushBaseDTO lis1 = new PushBaseDTO();
|
|
|
|
+ lis1.setName("血常规");
|
|
|
|
+ lis.add(lis1);
|
|
|
|
+ PushBaseDTO lis2 = new PushBaseDTO();
|
|
|
|
+ lis2.setName("尿常规");
|
|
|
|
+ lis.add(lis2);
|
|
|
|
+ PushBaseDTO lis3 = new PushBaseDTO();
|
|
|
|
+ lis3.setName("幽门螺杆菌抗体测定");
|
|
|
|
+ lis.add(lis3);
|
|
|
|
+ data.setLis(lis);
|
|
|
|
+ }
|
|
//检查
|
|
//检查
|
|
- List<PushBaseDTO> pacs = Lists.newArrayList();
|
|
|
|
- PushBaseDTO pacs1 = new PushBaseDTO();
|
|
|
|
- pacs1.setName("普通胃镜检查");
|
|
|
|
- pacs.add(pacs1);
|
|
|
|
- PushBaseDTO pacs2 = new PushBaseDTO();
|
|
|
|
- pacs2.setName("经直肠前列腺彩超检查");
|
|
|
|
- pacs.add(pacs2);
|
|
|
|
- data.setPacs(pacs);
|
|
|
|
|
|
+ if (ListUtil.isEmpty(data.getPacs())){
|
|
|
|
+ List<PushBaseDTO> pacs = Lists.newArrayList();
|
|
|
|
+ PushBaseDTO pacs1 = new PushBaseDTO();
|
|
|
|
+ pacs1.setName("普通胃镜检查");
|
|
|
|
+ pacs.add(pacs1);
|
|
|
|
+ PushBaseDTO pacs2 = new PushBaseDTO();
|
|
|
|
+ pacs2.setName("经直肠前列腺彩超检查");
|
|
|
|
+ pacs.add(pacs2);
|
|
|
|
+ data.setPacs(pacs);
|
|
|
|
+ }
|
|
//药品
|
|
//药品
|
|
- List<PushBaseDTO> medicines = Lists.newArrayList();
|
|
|
|
- PushBaseDTO medicines1 = new PushBaseDTO();
|
|
|
|
- medicines1.setName("钙通道阻滞剂");
|
|
|
|
- medicines.add(medicines1);
|
|
|
|
- PushBaseDTO medicines2 = new PushBaseDTO();
|
|
|
|
- medicines2.setName("盐酸肾上腺素注射液");
|
|
|
|
- medicines.add(medicines2);
|
|
|
|
- data.setMedicines(medicines);
|
|
|
|
|
|
+ if (ListUtil.isEmpty(data.getMedicines())){
|
|
|
|
+ List<PushBaseDTO> medicines = Lists.newArrayList();
|
|
|
|
+ PushBaseDTO medicines1 = new PushBaseDTO();
|
|
|
|
+ medicines1.setName("钙通道阻滞剂");
|
|
|
|
+ medicines.add(medicines1);
|
|
|
|
+ PushBaseDTO medicines2 = new PushBaseDTO();
|
|
|
|
+ medicines2.setName("盐酸肾上腺素注射液");
|
|
|
|
+ medicines.add(medicines2);
|
|
|
|
+ data.setMedicines(medicines);
|
|
|
|
+ }
|
|
//手术和操作
|
|
//手术和操作
|
|
- List<PushBaseDTO> operations = Lists.newArrayList();
|
|
|
|
- PushBaseDTO operations1 = new PushBaseDTO();
|
|
|
|
- operations1.setName("前列腺按摩");
|
|
|
|
- operations.add(operations1);
|
|
|
|
- PushBaseDTO operations2 = new PushBaseDTO();
|
|
|
|
- operations2.setName("经皮冠状动脉介入治疗(PCI)");
|
|
|
|
- operations.add(operations2);
|
|
|
|
- data.setOperations(operations);
|
|
|
|
|
|
+ if (ListUtil.isEmpty(data.getOperations())){
|
|
|
|
+ List<PushBaseDTO> operations = Lists.newArrayList();
|
|
|
|
+ PushBaseDTO operations1 = new PushBaseDTO();
|
|
|
|
+ operations1.setName("前列腺按摩");
|
|
|
|
+ operations.add(operations1);
|
|
|
|
+ PushBaseDTO operations2 = new PushBaseDTO();
|
|
|
|
+ operations2.setName("经皮冠状动脉介入治疗(PCI)");
|
|
|
|
+ operations.add(operations2);
|
|
|
|
+ data.setOperations(operations);
|
|
|
|
+ }
|
|
//诊断
|
|
//诊断
|
|
- List<PushBaseDTO> dis = Lists.newArrayList();
|
|
|
|
- PushBaseDTO disItem1 = new PushBaseDTO();
|
|
|
|
- disItem1.setName("急性胰腺炎");
|
|
|
|
- dis.add(disItem1);
|
|
|
|
- PushBaseDTO disItem2 = new PushBaseDTO();
|
|
|
|
- disItem2.setName("无晶状体眼");
|
|
|
|
- dis.add(disItem2);
|
|
|
|
- Map<String, List<PushBaseDTO>> disMap = new HashMap<>();
|
|
|
|
- disMap.put("可能诊断", dis);
|
|
|
|
- data.setDis(disMap);
|
|
|
|
- List<TreatDTO> treat = new ArrayList<>();
|
|
|
|
- TreatDTO treatDTO1 = new TreatDTO();
|
|
|
|
- treatDTO1.setName("无晶状体眼");
|
|
|
|
- treatDTO1.setUniqueName("无晶状体眼");
|
|
|
|
- treat.add(treatDTO1);
|
|
|
|
- data.setTreat(treat);
|
|
|
|
|
|
+ if (MapUtils.isEmpty(data.getDis())){
|
|
|
|
+ List<PushBaseDTO> dis = Lists.newArrayList();
|
|
|
|
+ PushBaseDTO disItem1 = new PushBaseDTO();
|
|
|
|
+ disItem1.setName("急性胰腺炎");
|
|
|
|
+ dis.add(disItem1);
|
|
|
|
+ PushBaseDTO disItem2 = new PushBaseDTO();
|
|
|
|
+ disItem2.setName("无晶状体眼");
|
|
|
|
+ dis.add(disItem2);
|
|
|
|
+ Map<String, List<PushBaseDTO>> disMap = new HashMap<>();
|
|
|
|
+ disMap.put("可能诊断", dis);
|
|
|
|
+ data.setDis(disMap);
|
|
|
|
+ }
|
|
|
|
+ //一般治疗
|
|
|
|
+ if (ListUtil.isEmpty(data.getTreat())){
|
|
|
|
+ List<TreatDTO> treat = new ArrayList<>();
|
|
|
|
+ TreatDTO treatDTO1 = new TreatDTO();
|
|
|
|
+ treatDTO1.setName("无晶状体眼");
|
|
|
|
+ treatDTO1.setUniqueName("无晶状体眼");
|
|
|
|
+ treat.add(treatDTO1);
|
|
|
|
+ data.setTreat(treat);
|
|
|
|
+ }
|
|
//出参映射
|
|
//出参映射
|
|
data = assembleFacade.assemblePushDTO(data, pushVO.getHospitalId());
|
|
data = assembleFacade.assemblePushDTO(data, pushVO.getHospitalId());
|
|
//是否有静态信息
|
|
//是否有静态信息
|