Переглянути джерело

1.html解析方法改为静态

huj 4 роки тому
батько
коміт
49bd23bc6d

+ 10 - 13
trans/src/main/java/com/lantone/qc/trans/beilun/util/BeiLunConsultationHtmlAnalysis.java

@@ -3,7 +3,6 @@ package com.lantone.qc.trans.beilun.util;
 import com.google.common.collect.Lists;
 import com.google.common.collect.Maps;
 import com.lantone.qc.pub.util.StringUtil;
-import org.springframework.beans.factory.annotation.Autowired;
 
 import java.util.List;
 import java.util.Map;
@@ -14,8 +13,6 @@ import java.util.Map;
  * @time: 2020/9/12 13:53
  */
 public class BeiLunConsultationHtmlAnalysis implements BeiLunHtmlAnalysis {
-    @Autowired
-    CommonAnalysisUtil commonAnalysisUtil;
 
     @Override
     public Map<String, String> analysis(String... args) {
@@ -29,18 +26,18 @@ public class BeiLunConsultationHtmlAnalysis implements BeiLunHtmlAnalysis {
         String htmlContent = null;
         switch (recTitle) {
             case "377":
-                htmlContent = commonAnalysisUtil.html2String(html);
+                htmlContent = CommonAnalysisUtil.html2String(html);
                 if (StringUtil.isNotBlank(htmlContent)) {
                     htmlContent = htmlContent.replaceAll("[   ]", " ");
-                    commonAnalysisUtil.html2StructureMap(titles, htmlContent, structureMap);
+                    CommonAnalysisUtil.html2StructureMap(titles, htmlContent, structureMap);
                 }
                 structureMap.put("rec_title=", recTitle);
                 break;
             case "7883":
-                htmlContent = commonAnalysisUtil.html2String(html);
+                htmlContent = CommonAnalysisUtil.html2String(html);
                 if (StringUtil.isNotBlank(htmlContent)) {
                     htmlContent = htmlContent.replaceAll("[   ]", " ");
-                    commonAnalysisUtil.html2StructureMap(titles, htmlContent, structureMap);
+                    CommonAnalysisUtil.html2StructureMap(titles, htmlContent, structureMap);
                 }
                 if (StringUtil.isNotBlank(structureMap.get("会诊时间"))) {
                     String[] strArr = structureMap.get("会诊时间").split(" ");
@@ -54,24 +51,24 @@ public class BeiLunConsultationHtmlAnalysis implements BeiLunHtmlAnalysis {
                         "申请科室", "入院/首诊时间", "住院号", "病情概述(含主诉、病史、诊断、诊治过程等)", "拟申请MDT时间、地点",
                         "拟请MDT参加科室", "MDT目的", "申请人签名", "申请递交时间", "科主任签字", "专家诊治建议", "专家科室", "签名",
                         "填写时间", "主持科室小结(MDT的最终诊治决议)", "科主任(主持人)签名", "记录人(主管医师)签字", "日期");
-                htmlContent = commonAnalysisUtil.html2String(html);
+                htmlContent = CommonAnalysisUtil.html2String(html);
                 if (StringUtil.isNotBlank(htmlContent)) {
                     htmlContent = htmlContent.replaceAll("[   ]", " ");
-                    commonAnalysisUtil.html2StructureMap(titles, htmlContent, structureMap);
+                    CommonAnalysisUtil.html2StructureMap(titles, htmlContent, structureMap);
                 }
                 structureMap.put("rec_title=", recTitle);
                 break;
             default:
-                htmlContent = commonAnalysisUtil.html2String(html);
+                htmlContent = CommonAnalysisUtil.html2String(html);
                 if (StringUtil.isNotBlank(htmlContent)) {
                     htmlContent = htmlContent.replaceAll("[   ]", " ");
-                    commonAnalysisUtil.html2StructureMap(titles, htmlContent, structureMap);
+                    CommonAnalysisUtil.html2StructureMap(titles, htmlContent, structureMap);
                 }
                 structureMap.put("rec_title=", "371");
                 break;
         }
-        commonAnalysisUtil.extractDateByTitle(structureMap, "会诊到达时间");
-        commonAnalysisUtil.processType(structureMap, "会诊类型");
+        CommonAnalysisUtil.extractDateByTitle(structureMap, "会诊到达时间");
+        CommonAnalysisUtil.processType(structureMap, "会诊类型");
         return structureMap;
     }
 

+ 3 - 6
trans/src/main/java/com/lantone/qc/trans/beilun/util/BeiLunCriticallyIllNoticeHtmlAnalysis.java

@@ -3,7 +3,6 @@ package com.lantone.qc.trans.beilun.util;
 import com.google.common.collect.Lists;
 import com.google.common.collect.Maps;
 import com.lantone.qc.pub.util.StringUtil;
-import org.springframework.beans.factory.annotation.Autowired;
 
 import java.util.List;
 import java.util.Map;
@@ -14,8 +13,6 @@ import java.util.Map;
  * @time: 2020/9/14 15:28
  */
 public class BeiLunCriticallyIllNoticeHtmlAnalysis implements BeiLunHtmlAnalysis {
-    @Autowired
-    CommonAnalysisUtil commonAnalysisUtil;
 
     @Override
     public Map<String, String> analysis(String... args) {
@@ -24,12 +21,12 @@ public class BeiLunCriticallyIllNoticeHtmlAnalysis implements BeiLunHtmlAnalysis
         String html = args[0];
         String recTitle = args[1];
         Map<String, String> structureMap = Maps.newLinkedHashMap();
-        String htmlContent = commonAnalysisUtil.html2String(html);
+        String htmlContent = CommonAnalysisUtil.html2String(html);
         if (StringUtil.isNotBlank(htmlContent)) {
             htmlContent = htmlContent.replaceAll("[   ]", " ");
-            commonAnalysisUtil.html2StructureMap(titles, htmlContent, structureMap);
+            CommonAnalysisUtil.html2StructureMap(titles, htmlContent, structureMap);
         }
-        commonAnalysisUtil.extractDateByTitle(structureMap, "告知时间");
+        CommonAnalysisUtil.extractDateByTitle(structureMap, "告知时间");
         structureMap.put("rec_title=", "405");
         return structureMap;
     }

+ 2 - 5
trans/src/main/java/com/lantone/qc/trans/beilun/util/BeiLunDeathRecordHtmlAnalysis.java

@@ -3,7 +3,6 @@ package com.lantone.qc.trans.beilun.util;
 import com.google.common.collect.Lists;
 import com.google.common.collect.Maps;
 import com.lantone.qc.pub.util.StringUtil;
-import org.springframework.beans.factory.annotation.Autowired;
 
 import java.util.List;
 import java.util.Map;
@@ -14,8 +13,6 @@ import java.util.Map;
  * @time: 2020/9/14 15:41
  */
 public class BeiLunDeathRecordHtmlAnalysis implements BeiLunHtmlAnalysis {
-    @Autowired
-    CommonAnalysisUtil commonAnalysisUtil;
 
     @Override
     public Map<String, String> analysis(String... args) {
@@ -24,10 +21,10 @@ public class BeiLunDeathRecordHtmlAnalysis implements BeiLunHtmlAnalysis {
         String html = args[0];
         String recTitle = args[1];
         Map<String, String> structureMap = Maps.newLinkedHashMap();
-        String htmlContent = commonAnalysisUtil.html2String(html);
+        String htmlContent = CommonAnalysisUtil.html2String(html);
         if (StringUtil.isNotBlank(htmlContent)) {
             htmlContent = htmlContent.replaceAll("[   ]", " ");
-            commonAnalysisUtil.html2StructureMap(titles, htmlContent, structureMap);
+            CommonAnalysisUtil.html2StructureMap(titles, htmlContent, structureMap);
         }
         structureMap.put("rec_title=", "5254");
         return structureMap;

+ 3 - 6
trans/src/main/java/com/lantone/qc/trans/beilun/util/BeiLunDifficultCaseDiscussHtmlAnalysis.java

@@ -3,7 +3,6 @@ package com.lantone.qc.trans.beilun.util;
 import com.google.common.collect.Lists;
 import com.google.common.collect.Maps;
 import com.lantone.qc.pub.util.StringUtil;
-import org.springframework.beans.factory.annotation.Autowired;
 
 import java.util.List;
 import java.util.Map;
@@ -14,8 +13,6 @@ import java.util.Map;
  * @time: 2020/9/14 15:41
  */
 public class BeiLunDifficultCaseDiscussHtmlAnalysis implements BeiLunHtmlAnalysis {
-    @Autowired
-    CommonAnalysisUtil commonAnalysisUtil;
 
     @Override
     public Map<String, String> analysis(String... args) {
@@ -25,12 +22,12 @@ public class BeiLunDifficultCaseDiscussHtmlAnalysis implements BeiLunHtmlAnalysi
         String html = args[0];
         String recTitle = args[1];
         Map<String, String> structureMap = Maps.newLinkedHashMap();
-        String htmlContent = commonAnalysisUtil.html2String(html);
+        String htmlContent = CommonAnalysisUtil.html2String(html);
         if (StringUtil.isNotBlank(htmlContent)) {
             htmlContent = htmlContent.replaceAll("[   ]", " ");
-            commonAnalysisUtil.html2StructureMap(titles, htmlContent, structureMap);
+            CommonAnalysisUtil.html2StructureMap(titles, htmlContent, structureMap);
         }
-        commonAnalysisUtil.extractDateByTitle(structureMap, "告知时间");
+        CommonAnalysisUtil.extractDateByTitle(structureMap, "告知时间");
         structureMap.put("rec_title=", "141");
         return structureMap;
     }

+ 3 - 6
trans/src/main/java/com/lantone/qc/trans/beilun/util/BeiLunFirstCourseRecordHtmlAnalysis.java

@@ -3,7 +3,6 @@ package com.lantone.qc.trans.beilun.util;
 import com.google.common.collect.Lists;
 import com.google.common.collect.Maps;
 import com.lantone.qc.pub.util.StringUtil;
-import org.springframework.beans.factory.annotation.Autowired;
 
 import java.util.List;
 import java.util.Map;
@@ -14,8 +13,6 @@ import java.util.Map;
  * @time: 2020/9/9 11:24
  */
 public class BeiLunFirstCourseRecordHtmlAnalysis implements BeiLunHtmlAnalysis {
-    @Autowired
-    CommonAnalysisUtil commonAnalysisUtil;
 
     @Override
     public Map<String, String> analysis(String... args) {
@@ -24,12 +21,12 @@ public class BeiLunFirstCourseRecordHtmlAnalysis implements BeiLunHtmlAnalysis {
         String html = args[0];
         String recTitle = args[1];
         Map<String, String> structureMap = Maps.newLinkedHashMap();
-        String htmlContent = commonAnalysisUtil.html2String(html);
+        String htmlContent = CommonAnalysisUtil.html2String(html);
         if (StringUtil.isNotBlank(htmlContent)) {
             htmlContent = htmlContent.replaceAll("[   ]", " ");
-            commonAnalysisUtil.html2StructureMap(titles, htmlContent, structureMap);
+            CommonAnalysisUtil.html2StructureMap(titles, htmlContent, structureMap);
         }
-        commonAnalysisUtil.extractDateByTitle(structureMap, "时间");
+        CommonAnalysisUtil.extractDateByTitle(structureMap, "时间");
         structureMap.put("rec_title=", "107");
 
         return structureMap;

+ 2 - 5
trans/src/main/java/com/lantone/qc/trans/beilun/util/BeiLunLeaveHospitalHtmlAnalysis.java

@@ -3,7 +3,6 @@ package com.lantone.qc.trans.beilun.util;
 import com.google.common.collect.Lists;
 import com.google.common.collect.Maps;
 import com.lantone.qc.pub.util.StringUtil;
-import org.springframework.beans.factory.annotation.Autowired;
 
 import java.util.List;
 import java.util.Map;
@@ -14,8 +13,6 @@ import java.util.Map;
  * @time: 2020/9/9 11:24
  */
 public class BeiLunLeaveHospitalHtmlAnalysis implements BeiLunHtmlAnalysis {
-    @Autowired
-    CommonAnalysisUtil commonAnalysisUtil;
 
     @Override
     public Map<String, String> analysis(String... args) {
@@ -24,10 +21,10 @@ public class BeiLunLeaveHospitalHtmlAnalysis implements BeiLunHtmlAnalysis {
         String html = args[0];
         String recTitle = args[1];
         Map<String, String> structureMap = Maps.newLinkedHashMap();
-        String htmlContent = commonAnalysisUtil.html2String(html);
+        String htmlContent = CommonAnalysisUtil.html2String(html);
         if (StringUtil.isNotBlank(htmlContent)) {
             htmlContent = htmlContent.replaceAll("[   ]", " ");
-            commonAnalysisUtil.html2StructureMap(titles, htmlContent, structureMap);
+            CommonAnalysisUtil.html2StructureMap(titles, htmlContent, structureMap);
         }
         structureMap.put("rec_title=", "183");
         return structureMap;

+ 1 - 4
trans/src/main/java/com/lantone/qc/trans/beilun/util/BeiLunThreeLevelWardHtmlAnalysis.java

@@ -7,7 +7,6 @@ import org.jsoup.nodes.Document;
 import org.jsoup.nodes.Element;
 import org.jsoup.nodes.Node;
 import org.jsoup.select.Elements;
-import org.springframework.beans.factory.annotation.Autowired;
 
 import java.util.List;
 import java.util.Map;
@@ -18,8 +17,6 @@ import java.util.Map;
  * @time: 2020/9/15 10:28
  */
 public class BeiLunThreeLevelWardHtmlAnalysis implements BeiLunHtmlAnalysis {
-    @Autowired
-    CommonAnalysisUtil commonAnalysisUtil;
 
     @Override
     public Map<String, String> analysis(String... args) {
@@ -28,7 +25,7 @@ public class BeiLunThreeLevelWardHtmlAnalysis implements BeiLunHtmlAnalysis {
         Map<String, String> structureMap = Maps.newLinkedHashMap();
         List<String> htmlText = html2List(html, true);
         String dateTitle = htmlText.get(0).replaceAll("[   ]", " ");
-        String date = commonAnalysisUtil.extractDate(dateTitle);
+        String date = CommonAnalysisUtil.extractDate(dateTitle);
         if (date != null) {
             structureMap.put("查房日期", date);
             String title = dateTitle.replace(date, "").trim();

+ 8 - 8
trans/src/main/java/com/lantone/qc/trans/beilun/util/CommonAnalysisUtil.java

@@ -27,7 +27,7 @@ public class CommonAnalysisUtil {
      * @param html
      * @return
      */
-    public String html2String(String html) {
+    public static String html2String(String html) {
         Document document = Jsoup.parse(html);
         Element body = document.select("body").first();
         List<Node> nodes = body.childNodes();
@@ -40,7 +40,7 @@ public class CommonAnalysisUtil {
         return htmlContent;
     }
 
-    public void html2StructureMap(List<String> titles, String htmlText, Map<String, String> structureMap) {
+    public static void html2StructureMap(List<String> titles, String htmlText, Map<String, String> structureMap) {
         sortTitles(titles, htmlText);
         cutByTitles(htmlText, titles, 0, structureMap);
     }
@@ -126,7 +126,7 @@ public class CommonAnalysisUtil {
      * @param depth        递归深度,也就是titles取值时的下标值
      * @param structureMap 存储结构化数据
      */
-    private void cutByTitles(String line, List<String> titles, int depth, Map<String, String> structureMap) {
+    private static void cutByTitles(String line, List<String> titles, int depth, Map<String, String> structureMap) {
         if (depth > titles.size()) {
             return;
         }
@@ -163,7 +163,7 @@ public class CommonAnalysisUtil {
      * @param content
      * @return
      */
-    public List<String> sortTitles(List<String> titles, String content) {
+    public static List<String> sortTitles(List<String> titles, String content) {
         Map<Integer, String> titleIndex = new TreeMap<>();
         int index, index_1, index_2;
         for (String title : titles) {
@@ -248,7 +248,7 @@ public class CommonAnalysisUtil {
      * @param top
      * @return
      */
-    public String extractDate(String top) {
+    public static String extractDate(String top) {
         Pattern pattern = Pattern.compile("[0-9]{4}[-][0-9]{1,2}[-][0-9]{1,2}([ ][0-9]{1,2}[:][0-9]{1,2}([:][0-9]{1,2})?)?");
         Matcher matcher = pattern.matcher(top);
         if (matcher.find()) {
@@ -263,7 +263,7 @@ public class CommonAnalysisUtil {
      * @param structmap
      * @param title
      */
-    public void extractDateByTitle(Map<String, String> structmap, String title) {
+    public static void extractDateByTitle(Map<String, String> structmap, String title) {
         if (structmap.containsKey(title)) {
             String date = extractDate(structmap.get(title));
             if (StringUtil.isNotBlank(date)) {
@@ -277,7 +277,7 @@ public class CommonAnalysisUtil {
      *
      * @param structureMap
      */
-    public void processType(Map<String, String> structureMap, String title) {
+    public static void processType(Map<String, String> structureMap, String title) {
         if (structureMap.containsKey(title)) {
             String type = structureMap.get(title);
             String[] types = type.split(" ");
@@ -295,7 +295,7 @@ public class CommonAnalysisUtil {
      *
      * @param htmlList
      */
-    public void removeRepeat(List<String> htmlList) {
+    public static void removeRepeat(List<String> htmlList) {
         List<Integer> index = Lists.newArrayList();
         if (htmlList.size() < 3) return;
         String str1 = null, str2 = null, str3 = null;