Browse Source

查体模板推理优化

Zhaops 6 years ago
parent
commit
0ea9c7b966
1 changed files with 17 additions and 9 deletions
  1. 17 9
      icss-service/src/main/java/com/diagbot/facade/PushFacade.java

+ 17 - 9
icss-service/src/main/java/com/diagbot/facade/PushFacade.java

@@ -281,18 +281,26 @@ public class PushFacade {
             QuestionDTO questionDTO = questionFacade.getById(questionVO);
             if (questionDTO != null && questionDTO.getId() != null) {
                 BeanUtil.copyProperties(questionDTO, questionPushDTO);
-                ConceptBaseVO conceptBaseVO = new ConceptBaseVO();
-                conceptBaseVO.setName(questionDTO.getTagName());
-                conceptBaseVO.setLibType(ConceptTypeEnum.Vital.getKey());
-                RespDTO<ConceptBaseDTO> res = aiptServiceClient.existConcept(conceptBaseVO);
-                if (RespDTOUtil.respIsOK(res)) {
-                    ConceptBaseDTO vitalConcept = res.data;
-                    questionPushDTO.setConceptId(vitalConcept.getConceptId());
-                    questionPushDTO.setLibType(ConceptTypeEnum.Vital.getKey());
-                }
+                questionPushDTO.setLibType(ConceptTypeEnum.Vital.getKey());
                 vitalDTO.add(questionPushDTO);
             }
         }
+        //增加概念id
+        if (ListUtil.isNotEmpty(vitalDTO)) {
+            ConceptExistVO conceptExistVO = new ConceptExistVO();
+            conceptExistVO.setType(ConceptTypeEnum.Vital.getKey());
+            List<String> vitalNames = vitalDTO.stream().map(vital -> vital.getTagName()).collect(Collectors.toList());
+            conceptExistVO.setNameList(vitalNames);
+            RespDTO<Map<String, Long>> respDTO = aiptServiceClient.getConceptMapByNameAndType(conceptExistVO);
+            if (RespDTOUtil.respIsOK(respDTO)) {
+                Map<String, Long> vitalMap = respDTO.data;
+                for (QuestionPushDTO questionPushDTO : vitalDTO) {
+                    if (vitalMap.get(questionPushDTO.getTagName()) != null) {
+                        questionPushDTO.setConceptId(vitalMap.get(questionPushDTO.getTagName()));
+                    }
+                }
+            }
+        }
         return vitalDTO;
     }