Selaa lähdekoodia

Merge remote-tracking branch 'origin/master'

MarkHuang 4 vuotta sitten
vanhempi
commit
67e7643a20

+ 5 - 3
src/main/java/com/diagbot/facade/NeoFacade.java

@@ -289,9 +289,11 @@ public class NeoFacade {
 
         for (Diag diag : neoPushVO.getDiagVo().getDiags()) {
             term = diag.getName();
-
-            ICDDisease icdDisease = icdDiseaseRepository.findByNameIs(term).get(0);
-
+            List<ICDDisease> byNameIs = icdDiseaseRepository.findByNameIs(term);
+            ICDDisease icdDisease = null;
+            if(ListUtil.isNotEmpty(byNameIs)){
+                icdDisease = icdDiseaseRepository.findByNameIs(term).get(0);
+            }
             if (icdDisease != null) {
                 pushDTO = icdDiseaseNode.ICDDiseasetoPushDTO(icdDisease, neoPushVO);
 

+ 9 - 8
src/main/java/com/diagbot/facade/PushFacade.java

@@ -53,7 +53,7 @@ public class PushFacade {
         Map<String, List<PushBaseDTO>> dis = new HashMap<>();
         //如果下的诊断有数据就反推
         if(pushVO.getDiagVo() != null && pushVO.getDiagVo().getDiags().size() > 0){
-            reversePushPackage(length, pushDTO, ruleTypeList, typeWords, pushVO,dis);
+            reversePushPackage(length, pushDTO, ruleTypeList, typeWords, pushVO,dis,wordCrfDTO.getDiag());
         }else {
             //正推
             List<NeoPushDTO> push = neoFacade.getPush(pushVO);
@@ -68,7 +68,7 @@ public class PushFacade {
                 //把第一个推送出来的诊断set到diagOrder中,再反推
                 setPushVo(pushVO, push);
                 //调用反推
-                reversePushPackage(length, pushDTO, ruleTypeList, typeWords, pushVO,dis);
+                reversePushPackage(length, pushDTO, ruleTypeList, typeWords, pushVO,dis,wordCrfDTO.getDiag());
             }
         }
 
@@ -86,7 +86,7 @@ public class PushFacade {
         pushVO.setDiagVo(diagVo);
     }
 
-    private void reversePushPackage(int length, PushDTO pushDTO, List<String> ruleTypeList, Map<String, List<String>> typeWords, NeoPushVO pushVO,Map<String, List<PushBaseDTO>> dis) {
+    private void reversePushPackage(int length, PushDTO pushDTO, List<String> ruleTypeList, Map<String, List<String>> typeWords, NeoPushVO pushVO, Map<String, List<PushBaseDTO>> dis, List<Item> diags) {
         List<NeoPushDTO> reversePush = neoFacade.getReversePush(pushVO);
         if(ListUtil.isNotEmpty(reversePush)){
             // 症状
@@ -184,11 +184,11 @@ public class PushFacade {
                     pushDTO.setDis(dis);
                 }
             }
-            if (ruleTypeList.contains("10") && ListUtil.isNotEmpty(pushVO.getDiagVo().getDiags())) {
-                TreatDTO treatDTO = new TreatDTO();
-                List<TreatDTO> collect = pushVO.getDiagVo().getDiags().stream().map(x -> {
+            if (ruleTypeList.contains("10") && ListUtil.isNotEmpty(diags)) {
+                List<TreatDTO> collect = diags.stream().map(x -> {
+                    TreatDTO treatDTO = new TreatDTO();
                     treatDTO.setName(x.getName());
-                    treatDTO.setUniqueName(x.getName());
+                    treatDTO.setUniqueName(x.getUniqueName());
                     return treatDTO;
                 }).collect(Collectors.toList());
                 pushDTO.setGeneraTreat(collect);
@@ -198,8 +198,9 @@ public class PushFacade {
     }
 
     private List<PushBaseDTO> getPackagePushBaseDTO(Map<String, List<String>> typeWords, List<String> symptoms, StandConvertEnum symptom) {
-        PushBaseDTO pushBaseDTO = new PushBaseDTO();
+
         List<PushBaseDTO> symptomPush = symptoms.stream().map(x -> {
+            PushBaseDTO pushBaseDTO = new PushBaseDTO();
             pushBaseDTO.setName(x);
             return pushBaseDTO;
         }).collect(Collectors.toList());