ソースを参照

术语映射预匹配

zhaops 4 年 前
コミット
4d0391a3ac
1 ファイル変更9 行追加5 行削除
  1. 9 5
      src/main/java/com/diagbot/facade/MappingConfigFacade.java

+ 9 - 5
src/main/java/com/diagbot/facade/MappingConfigFacade.java

@@ -608,16 +608,20 @@ public class MappingConfigFacade extends MappingConfigServiceImpl {
                 }
                 if (configMap.containsKey(item.getHisName())) {
                     Map<String, Map<String, List<String>>> subMap = configMap.get(item.getHisName());
-                    for (Map.Entry<String, Map<String, List<String>>> subEntry : subMap.entrySet()) {
-                        for (String name : subEntry.getValue().keySet()) {
+                    if (subMap != null && subMap.size() > 0) {
+                        Map<String, List<String>> thirdMap = subMap.get(item.getHisDetailName());
+                        if (thirdMap == null || thirdMap.size() == 0) {
+                            retList.add(item);
+                            continue;
+                        }
+                        for (Map.Entry<String, List<String>> thirdEntry : thirdMap.entrySet()) {
                             MappingConfigWrapper historyItem = new MappingConfigWrapper();
                             BeanUtils.copyProperties(item, historyItem);
-                            historyItem.setHisDetailName(subEntry.getKey());
-                            historyItem.setUniqueName(name);
+                            historyItem.setUniqueName(thirdEntry.getKey());
                             historyItem.setIsMatch(1);
                             historyItem.setSource(MatchSourceEnum.History.getKey());
                             if (type.equals(ConceptTypeEnum.Drug.getKey())) {
-                                List<String> forms = subEntry.getValue().get(name);
+                                List<String> forms = thirdEntry.getValue();
                                 if (ListUtil.isEmpty(forms)) {
                                     retList.add(historyItem);
                                 } else {