Browse Source

剖宫产记录 新生儿性别 术后宫缩 入院记录去掉单位

chengyao 4 years ago
parent
commit
1148d2d59d

+ 7 - 7
structure-center/src/main/java/com/lantone/structure/facade/tran/BeHospitalizedTran.java

@@ -417,9 +417,9 @@ public class BeHospitalizedTran extends TargetTran {
                                 flag = "/";
                             }
                             String b = split.substring(split.indexOf(bp)+bp.length(),split.indexOf(flag)).replace("血压","");
-                            String p = split.substring(split.indexOf(flag)+flag.length(),split.lastIndexOf("mmHg")+"mmHg".length()).replace("血压","");;
+                            String p = split.substring(split.indexOf(flag)+flag.length(),split.lastIndexOf("mmHg")).replace("血压","");
                             if(StringUtil.isNotEmpty(b)){
-                                retMap.put("体格检查--收缩压(mmHg)", b+"mmHg");
+                                retMap.put("体格检查--收缩压(mmHg)", b);
                             }
                             if(StringUtil.isNotEmpty(p)){
                                 retMap.put("体格检查--舒张压(mmHg)", p);
@@ -456,19 +456,19 @@ public class BeHospitalizedTran extends TargetTran {
                     if(split.length>0){
                         for (String str : split) {
                             if(str.contains("骶耻外径") ){
-                                String t = str.substring(str.indexOf("骶耻外径")+"骶耻外径".length());
+                                String t = str.substring(str.indexOf("骶耻外径")+"骶耻外径".length()).replace("cm","");
                                 if(StringUtil.isNotEmpty(t)){
                                     retMap.put("骶耻外径", t);
                                 }
                             }
                             if(str.contains("坐骨结节间径") && str.contains("cm") ){
-                                String t = str.substring(str.indexOf("坐骨结节间径")+"坐骨结节间径".length());
+                                String t = str.substring(str.indexOf("坐骨结节间径")+"坐骨结节间径".length()).replace("cm","");
                                 if(StringUtil.isNotEmpty(t)){
                                     retMap.put("坐骨结节间径", t);
                                 }
                             }
                             if(str.contains("宫底") && str.contains("cm") ){
-                                String t = str.substring(str.indexOf("宫底")+"宫底".length());
+                                String t = str.substring(str.indexOf("宫底")+"宫底".length()).replace("cm","");
                                 if(StringUtil.isNotEmpty(t)){
                                     retMap.put("宫底高度", t);
                                 }
@@ -480,13 +480,13 @@ public class BeHospitalizedTran extends TargetTran {
                                 }
                             }
                             if(str.contains("腹围") && str.contains("cm") ){
-                                String t = str.substring(str.indexOf("腹围")+"腹围".length());
+                                String t = str.substring(str.indexOf("腹围")+"腹围".length()).replace("cm","");
                                 if(StringUtil.isNotEmpty(t)){
                                     retMap.put("腹围", t);
                                 }
                             }
                             if(str.contains("胎心") && str.contains("次/分") ){
-                                String t = str.substring(str.indexOf("胎心")+"胎心".length(),str.indexOf("次/分")+"次/分".length()).replace("胎儿","");
+                                String t = str.substring(str.indexOf("胎心")+"胎心".length(),str.indexOf("次/分")+"次/分".length()).replace("胎儿","").replace("次/分","");
                                 if(StringUtil.isNotEmpty(t)){
                                     retMap.put("胎心率", t);
                                 }

+ 31 - 0
structure-center/src/main/java/com/lantone/structure/facade/tran/CesareanSectionTran.java

@@ -37,6 +37,7 @@ public class CesareanSectionTran extends TargetTran {
         aiProcess();
 
         Map<String, String> sourceMap = cutWord(text);
+        sourceMap = caesareanSectionMethod(sourceMap);
         insertCrf(sourceMap);
         return sourceMap;
     }
@@ -60,6 +61,36 @@ public class CesareanSectionTran extends TargetTran {
         return ret;
     }
 
+    private Map<String, String> caesareanSectionMethod( Map<String, String> retMap) {
+        if(retMap.containsKey("剖宫产手术过程")){
+            String caesareanSection = retMap.get("剖宫产手术过程").replace("子宫下段收缩","宫缩").replace("子宫下段仍收缩","宫缩").replace("子宫收缩","宫缩").replace("。",",").replace(":",",");
+            if(caesareanSection.contains(",")){
+                String[] split = caesareanSection.split(",");
+                for (String str : split) {
+                    if(!(str.contains("宫缩") || str.contains("性别"))){
+                        continue;
+                    }
+                    if(str.contains("宫缩")){
+                        String strFir = str.substring(str.indexOf("宫缩")+"宫缩".length());
+                        if(strFir.trim().length()>0){
+                            retMap.put("术后宫缩", strFir);
+                        }
+                    }
+                    if(str.contains("性别")){
+                        if(str.contains("男")){
+                            retMap.put("新生儿性别", "男");
+                        }
+                        if(str.contains("女")){
+                            retMap.put("新生儿性别", "女");
+                        }
+
+                    }
+                }
+            }
+        }
+        return retMap;
+    }
+
     private void opeTimeHandle(Map<String, String> sourceMap, Map<String, String> ret) {
         try {
             String opeStartTime = sourceMap.get("手术开始时间");