Browse Source

1、医学知识术语映射

zhaops 4 years ago
parent
commit
622bf1728e
1 changed files with 51 additions and 43 deletions
  1. 51 43
      src/main/java/com/diagbot/facade/ConceptInfoFacade.java

+ 51 - 43
src/main/java/com/diagbot/facade/ConceptInfoFacade.java

@@ -15,6 +15,7 @@ import com.diagbot.dto.StaticKnowledgeHISDTO;
 import com.diagbot.dto.StaticKnowledgeIndexDTO;
 import com.diagbot.entity.ConceptDetail;
 import com.diagbot.entity.ConceptInfo;
+import com.diagbot.enums.ConceptTypeEnum;
 import com.diagbot.enums.IsDeleteEnum;
 import com.diagbot.enums.StatusEnum;
 import com.diagbot.exception.CommonErrorCode;
@@ -44,7 +45,6 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Qualifier;
 import org.springframework.stereotype.Component;
 
-import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.Date;
 import java.util.HashMap;
@@ -69,19 +69,7 @@ public class ConceptInfoFacade extends ConceptInfoServiceImpl {
     @Qualifier("conceptDetailServiceImpl")
     private ConceptDetailService conceptDetailService;
     @Autowired
-    private LisConfigFacade lisConfigFacade;
-    @Autowired
-    private PacsConfigFacade pacsConfigFacade;
-    @Autowired
-    private DrugConfigFacade drugConfigFacade;
-    @Autowired
-    private DiseaseConfigFacade diseaseConfigFacade;
-    @Autowired
-    private OperationConfigFacade operationConfigFacade;
-    @Autowired
-    private ScaleConfigFacade scaleConfigFacade;
-    @Autowired
-    private NurseConfigFacade nurseConfigFacade;
+    private MappingConfigFacade mappingConfigFacade;
 
     /**
      * 返回带静态知识的检索结果
@@ -618,75 +606,95 @@ public class ConceptInfoFacade extends ConceptInfoServiceImpl {
         List<String> nameList = null;
         switch (staticKnowledgeHISVO.getType()) {
             case 1:
-                Map<String, Map<String, Long>> disConfigMap
-                        = diseaseConfigFacade.getConfigMap(hospitalId,
-                        ListUtil.arrayToList(new String[] { staticKnowledgeHISVO.getHisName() }), null);
+                Map<String, Map<String, Map<String, List<String>>>> disConfigMap
+                        = mappingConfigFacade.groupByHisNameWithName(ListUtil.arrayToList(new String[] { staticKnowledgeHISVO.getHisName() }),
+                        ConceptTypeEnum.Disease.getKey(), hospitalId);
                 if (disConfigMap != null
                         && disConfigMap.get(staticKnowledgeHISVO.getHisName()) != null) {
-                    nameList = new ArrayList<>(disConfigMap.get(staticKnowledgeHISVO.getHisName()).keySet());
+                    nameList = disConfigMap.get(staticKnowledgeHISVO.getHisName())
+                            .get("")
+                            .keySet()
+                            .stream().collect(Collectors.toList());
                 }
                 break;
             case 2:
-                Map<String, Map<String, Long>> drugConfigMap
-                        = drugConfigFacade.getConfigMapWithoutForm(hospitalId,
-                        ListUtil.arrayToList(new String[] { staticKnowledgeHISVO.getHisName() }), null);
+                Map<String, Map<String, Map<String, List<String>>>> drugConfigMap
+                        = mappingConfigFacade.groupByHisNameWithName(ListUtil.arrayToList(new String[] { staticKnowledgeHISVO.getHisName() }),
+                        ConceptTypeEnum.Drug.getKey(), hospitalId);
                 if (drugConfigMap != null
                         && drugConfigMap.get(staticKnowledgeHISVO.getHisName()) != null) {
-                    nameList = new ArrayList<>(drugConfigMap.get(staticKnowledgeHISVO.getHisName()).keySet());
+                    nameList = drugConfigMap.get(staticKnowledgeHISVO.getHisName())
+                            .get("")
+                            .keySet()
+                            .stream().collect(Collectors.toList());
                 }
                 break;
             case 3:
             case 4:
-                Map<String, Map<String, Map<String, Long>>> lisConfigMap
-                        = lisConfigFacade.getConfigMap(hospitalId,
-                        ListUtil.arrayToList(new String[] { staticKnowledgeHISVO.getHisName() }), null);
+                Map<String, Map<String, Map<String, List<String>>>> lisConfigMap
+                        = mappingConfigFacade.groupByHisNameWithName(ListUtil.arrayToList(new String[] { staticKnowledgeHISVO.getHisName() }),
+                        ConceptTypeEnum.LisPack.getKey(), hospitalId);
                 if (lisConfigMap != null) {
                     if (StringUtil.isBlank(staticKnowledgeHISVO.getHisDetailName())) {
                         staticKnowledgeHISVO.setHisDetailName("");
                     }
                     if (lisConfigMap.containsKey(staticKnowledgeHISVO.getHisName())) {
                         if (lisConfigMap.get(staticKnowledgeHISVO.getHisName()).containsKey(staticKnowledgeHISVO.getHisDetailName())) {
-                            nameList = new ArrayList<>(lisConfigMap.get(staticKnowledgeHISVO.getHisName())
-                                    .get(staticKnowledgeHISVO.getHisDetailName()).keySet());
+                            nameList = lisConfigMap.get(staticKnowledgeHISVO.getHisName())
+                                    .get(staticKnowledgeHISVO.getHisDetailName())
+                                    .keySet()
+                                    .stream().collect(Collectors.toList());
                         }
                     }
                 }
                 break;
             case 5:
             case 6:
-                Map<String, Map<String, Long>> pacsConfigMap
-                        = pacsConfigFacade.getConfigMap(hospitalId,
-                        ListUtil.arrayToList(new String[] { staticKnowledgeHISVO.getHisName() }), null);
+                Map<String, Map<String, Map<String, List<String>>>> pacsConfigMap
+                        = mappingConfigFacade.groupByHisNameWithName(ListUtil.arrayToList(new String[] { staticKnowledgeHISVO.getHisName() }),
+                        ConceptTypeEnum.Pacs.getKey(), hospitalId);
                 if (pacsConfigMap != null
                         && pacsConfigMap.get(staticKnowledgeHISVO.getHisName()) != null) {
-                    nameList = new ArrayList<>(pacsConfigMap.get(staticKnowledgeHISVO.getHisName()).keySet());
+                    nameList = pacsConfigMap.get(staticKnowledgeHISVO.getHisName())
+                            .get("")
+                            .keySet()
+                            .stream().collect(Collectors.toList());
                 }
                 break;
             case 7:
-                Map<String, Map<String, Long>> operationConfigMap
-                        = operationConfigFacade.getConfigMap(hospitalId,
-                        ListUtil.arrayToList(new String[] { staticKnowledgeHISVO.getHisName() }), null);
+                Map<String, Map<String, Map<String, List<String>>>> operationConfigMap
+                        = mappingConfigFacade.groupByHisNameWithName(ListUtil.arrayToList(new String[] { staticKnowledgeHISVO.getHisName() }),
+                        ConceptTypeEnum.Operation.getKey(), hospitalId);
                 if (operationConfigMap != null &&
                         operationConfigMap.get(staticKnowledgeHISVO.getHisName()) != null) {
-                    nameList = new ArrayList<>(operationConfigMap.get(staticKnowledgeHISVO.getHisName()).keySet());
+                    nameList = operationConfigMap.get(staticKnowledgeHISVO.getHisName())
+                            .get("")
+                            .keySet()
+                            .stream().collect(Collectors.toList());
                 }
                 break;
             case 8:
-                Map<String, Map<String, Long>> scaleConfigMap
-                        = scaleConfigFacade.getConfigMap(hospitalId,
-                        ListUtil.arrayToList(new String[] { staticKnowledgeHISVO.getHisName() }), null);
+                Map<String, Map<String, Map<String, List<String>>>> scaleConfigMap
+                        = mappingConfigFacade.groupByHisNameWithName(ListUtil.arrayToList(new String[] { staticKnowledgeHISVO.getHisName() }),
+                        ConceptTypeEnum.Scale.getKey(), hospitalId);
                 if (scaleConfigMap != null &&
                         scaleConfigMap.get(staticKnowledgeHISVO.getHisName()) != null) {
-                    nameList = new ArrayList<>(scaleConfigMap.get(staticKnowledgeHISVO.getHisName()).keySet());
+                    nameList = scaleConfigMap.get(staticKnowledgeHISVO.getHisName())
+                            .get("")
+                            .keySet()
+                            .stream().collect(Collectors.toList());
                 }
                 break;
             case 9:
-                Map<String, Map<String, Long>> nurseConfigMap
-                        = nurseConfigFacade.getConfigMap(hospitalId,
-                        ListUtil.arrayToList(new String[] { staticKnowledgeHISVO.getHisName() }), null);
+                Map<String, Map<String, Map<String, List<String>>>> nurseConfigMap
+                        = mappingConfigFacade.groupByHisNameWithName(ListUtil.arrayToList(new String[] { staticKnowledgeHISVO.getHisName() }),
+                        ConceptTypeEnum.Scale.getKey(), hospitalId);
                 if (nurseConfigMap != null &&
                         nurseConfigMap.get(staticKnowledgeHISVO.getHisName()) != null) {
-                    nameList = new ArrayList<>(nurseConfigMap.get(staticKnowledgeHISVO.getHisName()).keySet());
+                    nameList = nurseConfigMap.get(staticKnowledgeHISVO.getHisName())
+                            .get("")
+                            .keySet()
+                            .stream().collect(Collectors.toList());
                 }
                 break;
             default: