浏览代码

字段标准化修改

rengb 4 年之前
父节点
当前提交
b8798eeb86

+ 18 - 12
trans/src/main/java/com/lantone/qc/trans/beilun/BeiLunBeHospitalizedDocTrans.java

@@ -3,6 +3,7 @@ package com.lantone.qc.trans.beilun;
 import com.google.common.collect.Lists;
 import com.lantone.qc.pub.model.doc.BeHospitalizedDoc;
 import com.lantone.qc.pub.model.vo.MedrecVo;
+import com.lantone.qc.pub.util.FastJsonUtils;
 import com.lantone.qc.trans.ModelDocTrans;
 import com.lantone.qc.trans.beilun.util.BeiLunBeHospitalizedHtmlAnalysis;
 import com.lantone.qc.trans.beilun.util.BeiLunHtmlAnalysis;
@@ -23,18 +24,23 @@ public class BeiLunBeHospitalizedDocTrans extends ModelDocTrans {
     public BeHospitalizedDoc extract(MedrecVo medrecVo) {
         Map<String, Object> contentMap = ((List<Map>) medrecVo.getContent().get("content")).get(0);
         String content = contentMap.get("xmlText").toString();
-        String recTitle = contentMap.get("recTitle").toString();
-        String recTypeId = contentMap.get("recTypeId").toString();
-        BeiLunHtmlAnalysis beiLunHtmlAnalysis = new BeiLunBeHospitalizedHtmlAnalysis();
-        Map<String, String> sourceMap = beiLunHtmlAnalysis.analysis(content, recTitle, recTypeId);
-        Map<String, String> structureMap = OrdinaryAssistant.mapKeyContrast(sourceMap, keyContrasts);
-        structureMap.put("记录编号", contentMap.get("recId").toString());
-        //初步诊断特殊处理
-        if (structureMap.containsKey("初步诊断")) {
-            String initDiag = structureMap.get("初步诊断");
-            if (initDiag.contains("<img")) {
-                initDiag = initDiag.split("<img")[0];
-                structureMap.put("初步诊断", initDiag);
+        Map<String, String> structureMap = null;
+        if (contentMap.get("isParsed") != null && "1".equals(contentMap.get("isParsed").toString())) {
+            structureMap = (Map) FastJsonUtils.getJsonToMap(content);
+        } else {
+            String recTitle = contentMap.get("recTitle").toString();
+            String recTypeId = contentMap.get("recTypeId").toString();
+            BeiLunHtmlAnalysis beiLunHtmlAnalysis = new BeiLunBeHospitalizedHtmlAnalysis();
+            Map<String, String> sourceMap = beiLunHtmlAnalysis.analysis(content, recTitle, recTypeId);
+            structureMap = OrdinaryAssistant.mapKeyContrast(sourceMap, keyContrasts);
+            structureMap.put("记录编号", contentMap.get("recId").toString());
+            //初步诊断特殊处理
+            if (structureMap.containsKey("初步诊断")) {
+                String initDiag = structureMap.get("初步诊断");
+                if (initDiag.contains("<img")) {
+                    initDiag = initDiag.split("<img")[0];
+                    structureMap.put("初步诊断", initDiag);
+                }
             }
         }
 

+ 12 - 6
trans/src/main/java/com/lantone/qc/trans/beilun/BeiLunClinicBloodEffectDocTrans.java

@@ -3,6 +3,7 @@ package com.lantone.qc.trans.beilun;
 import com.google.common.collect.Lists;
 import com.lantone.qc.pub.model.doc.ClinicBloodEffectDoc;
 import com.lantone.qc.pub.model.vo.MedrecVo;
+import com.lantone.qc.pub.util.FastJsonUtils;
 import com.lantone.qc.trans.ModelDocTrans;
 import com.lantone.qc.trans.beilun.util.BeiLunClinicBloodEffectHtmlAnalysis;
 import com.lantone.qc.trans.beilun.util.BeiLunHtmlAnalysis;
@@ -30,12 +31,17 @@ public class BeiLunClinicBloodEffectDocTrans extends ModelDocTrans {
 
     private ClinicBloodEffectDoc getClinicalBloodDoc(Map<String, Object> contentMap) {
         String content = contentMap.get("xmlText").toString();
-        String recTitle = contentMap.get("recTitle").toString();
-        String recTypeId = contentMap.get("recTypeId").toString();
-        BeiLunHtmlAnalysis beiLunHtmlAnalysis = new BeiLunClinicBloodEffectHtmlAnalysis();
-        Map<String, String> sourceMap = beiLunHtmlAnalysis.analysis(content, recTitle, recTypeId);
-        Map<String, String> structureMap = OrdinaryAssistant.mapKeyContrast(sourceMap, keyContrasts);
-        structureMap.put("记录编号", contentMap.get("recId").toString());
+        Map<String, String> structureMap = null;
+        if (contentMap.get("isParsed") != null && "1".equals(contentMap.get("isParsed").toString())) {
+            structureMap = (Map) FastJsonUtils.getJsonToMap(content);
+        } else {
+            String recTitle = contentMap.get("recTitle").toString();
+            String recTypeId = contentMap.get("recTypeId").toString();
+            BeiLunHtmlAnalysis beiLunHtmlAnalysis = new BeiLunClinicBloodEffectHtmlAnalysis();
+            Map<String, String> sourceMap = beiLunHtmlAnalysis.analysis(content, recTitle, recTypeId);
+            structureMap = OrdinaryAssistant.mapKeyContrast(sourceMap, keyContrasts);
+            structureMap.put("记录编号", contentMap.get("recId").toString());
+        }
 
         ClinicBloodEffectDoc clinicBloodEffectDoc = ModelDocGenerate.clinicBloodEffectDoc(structureMap);
         clinicBloodEffectDoc.setPageData((Map) structureMap);

+ 14 - 8
trans/src/main/java/com/lantone/qc/trans/beilun/BeiLunClinicalBloodDocTrans.java

@@ -3,6 +3,7 @@ package com.lantone.qc.trans.beilun;
 import com.google.common.collect.Lists;
 import com.lantone.qc.pub.model.doc.ClinicalBloodDoc;
 import com.lantone.qc.pub.model.vo.MedrecVo;
+import com.lantone.qc.pub.util.FastJsonUtils;
 import com.lantone.qc.trans.ModelDocTrans;
 import com.lantone.qc.trans.beilun.util.BeiLunClinicalBloodHtmlAnalysis;
 import com.lantone.qc.trans.beilun.util.BeiLunHtmlAnalysis;
@@ -31,12 +32,17 @@ public class BeiLunClinicalBloodDocTrans extends ModelDocTrans {
 
     private ClinicalBloodDoc getClinicalBloodDoc(Map<String, Object> contentMap) {
         String content = contentMap.get("xmlText").toString();
-        String recTitle = contentMap.get("recTitle").toString();
-        String recTypeId = contentMap.get("recTypeId").toString();
-        BeiLunHtmlAnalysis beiLunHtmlAnalysis = new BeiLunClinicalBloodHtmlAnalysis();
-        Map<String, String> sourceMap = beiLunHtmlAnalysis.analysis(content, recTitle, recTypeId);
-        Map<String, String> structureMap = OrdinaryAssistant.mapKeyContrast(sourceMap, keyContrasts);
-        structureMap.put("记录编号", contentMap.get("recId").toString());
+        Map<String, String> structureMap = null;
+        if (contentMap.get("isParsed") != null && "1".equals(contentMap.get("isParsed").toString())) {
+            structureMap = (Map) FastJsonUtils.getJsonToMap(content);
+        } else {
+            String recTitle = contentMap.get("recTitle").toString();
+            String recTypeId = contentMap.get("recTypeId").toString();
+            BeiLunHtmlAnalysis beiLunHtmlAnalysis = new BeiLunClinicalBloodHtmlAnalysis();
+            Map<String, String> sourceMap = beiLunHtmlAnalysis.analysis(content, recTitle, recTypeId);
+            structureMap = OrdinaryAssistant.mapKeyContrast(sourceMap, keyContrasts);
+            structureMap.put("记录编号", contentMap.get("recId").toString());
+        }
 
         ClinicalBloodDoc clinicalBloodDoc = ModelDocGenerate.clinicalBloodDocGen(structureMap);
         clinicalBloodDoc.setPageData((Map) structureMap);
@@ -44,8 +50,8 @@ public class BeiLunClinicalBloodDocTrans extends ModelDocTrans {
     }
 
     private List<String> keyContrasts = Lists.newArrayList(
-        "输注成分=输注种类、血型、数量",
-        "输血过程=输注过程"
+            "输注成分=输注种类、血型、数量",
+            "输血过程=输注过程"
     );
 
 }

+ 0 - 1
trans/src/main/java/com/lantone/qc/trans/beilun/util/BeiLunClinicalBloodHtmlAnalysis.java

@@ -27,7 +27,6 @@ public class BeiLunClinicalBloodHtmlAnalysis implements BeiLunHtmlAnalysis {
         String recTypeId = args[2];
         Element bigDivElement = Jsoup.parse(html).selectFirst("body").child(0);
         analysisGeneral(bigDivElement, map);
-        BeiLunHtmlAnalysisUtil.insertModuleId(modeId, recTypeId, map);
         if (map.containsKey("病情记录")) {
             String content = map.get("病情记录");
             CommonAnalysisUtil.cutByTitles(content, titles, 0, map);