Sfoglia il codice sorgente

正则抽取辅检,体征优化

kongwz 3 anni fa
parent
commit
5e4ed51a86

+ 31 - 2
src/main/java/com/diagbot/facade/KlRegularConfigFacade.java

@@ -32,6 +32,7 @@ import org.springframework.stereotype.Component;
 import java.util.*;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
+import java.util.stream.Collectors;
 
 /**
  * @author wangfeng
@@ -163,7 +164,7 @@ public class KlRegularConfigFacade extends KlRegularConfigServiceImpl {
         if (MapUtils.isNotEmpty(rulePacsCompiles)) {
             if (ListUtil.isNotEmpty(pacsNumList)) {
                 ListIterator<PacsNum> pacsNumListIterator = pacsNumList.listIterator();
-                while (pacsNumListIterator.hasNext()){
+                while (pacsNumListIterator.hasNext()) {
                     PacsNum x = pacsNumListIterator.next();
                     String name = x.getName();
                     PD pd = x.getPd();
@@ -176,9 +177,23 @@ public class KlRegularConfigFacade extends KlRegularConfigServiceImpl {
                                 unit = rulePacsCompiles.get(key);
                                 pd.setUnit(unit);
                             }
+                            rulePacsCompiles.remove(key);
                         }
                     }
                 }
+                if (MapUtils.isNotEmpty(rulePacsCompiles)) {
+                    rulePacsCompiles.forEach((x, y) -> {
+                        String[] nameValue = x.split("_");
+                        PacsNum pacsNum = new PacsNum();
+                        pacsNum.setName(nameValue[0]);
+                        pacsNum.setStandName(nameValue[0]);
+                        PD pdnew = new PD();
+                        pdnew.setValue(nameValue[1]);
+                        pdnew.setUnit(y);
+                        pacsNum.setPd(pdnew);
+                        pacsNumList.add(pacsNum);
+                    });
+                }
             } else {
                 rulePacsCompiles.forEach((x, y) -> {
                     String[] nameValue = x.split("_");
@@ -213,9 +228,23 @@ public class KlRegularConfigFacade extends KlRegularConfigServiceImpl {
                                 unit = rulevitalsCompiles.get(key);
                                 pd.setUnit(unit);
                             }
+                            rulevitalsCompiles.remove(key);
                         }
                     }
                 }
+                if (MapUtils.isNotEmpty(rulevitalsCompiles)) {
+                    rulevitalsCompiles.forEach((x, y) -> {
+                        String[] nameValue = x.split("_");
+                        Vital pacsNum = new Vital();
+                        pacsNum.setName(nameValue[0]);
+                        pacsNum.setStandName(nameValue[0]);
+                        PD pdnew = new PD();
+                        pdnew.setValue(nameValue[1]);
+                        pdnew.setUnit(y);
+                        pacsNum.setPd(pdnew);
+                        vitals.add(pacsNum);
+                    });
+                }
 
             } else {
                 rulevitalsCompiles.forEach((x, y) -> {
@@ -305,7 +334,7 @@ public class KlRegularConfigFacade extends KlRegularConfigServiceImpl {
             for (List<String> groupContents : regexGroupData) {
                 if (ListUtil.isNotEmpty(groupContents)) {
                     String s = "";
-                    if(groupContents.size() > 2){
+                    if (groupContents.size() > 2) {
                         s = groupContents.get(2);
                     }