Преглед на файлове

湘雅首次病程未在8小时书写,空模板处理

wangsy преди 3 години
родител
ревизия
5adcd5bf8c

+ 19 - 7
kernel/src/main/java/com/lantone/qc/kernel/catalogue/hospital/changshaxy/firstcourserecord/FIRC0093.java

@@ -12,8 +12,7 @@ import org.apache.commons.lang3.StringUtils;
 import org.springframework.stereotype.Component;
 
 import java.text.ParseException;
-import java.util.Date;
-import java.util.Map;
+import java.util.*;
 
 /**
  * @ClassName : FIRC0093
@@ -23,6 +22,9 @@ import java.util.Map;
  */
 @Component
 public class FIRC0093 extends QCCatalogue {
+
+    private List<String> labelList = Arrays.asList("诊断依据", "鉴别诊断", "初步诊断", "病例分型", "入院诊断", "诊疗计划");
+
     public void start(InputInfo inputInfo, OutputInfo outputInfo) throws ParseException {
         status.set("0");
         FirstCourseRecordDoc firstCourseRecordDoc = inputInfo.getFirstCourseRecordDoc();
@@ -43,12 +45,10 @@ public class FIRC0093 extends QCCatalogue {
                     if (date_in == null || date_out == null) {
                         return;
                     }
-                    if (StringUtil.isBlank(courseRecordDocStructureMap.get("诊断依据")) && StringUtil.isBlank(courseRecordDocStructureMap.get("鉴别诊断")) &&
-                            StringUtil.isBlank(courseRecordDocStructureMap.get("初步诊断")) && StringUtil.isBlank(courseRecordDocStructureMap.get("病例分型"))) {
-                        return;
-                    }
+                    boolean empty = isEmpty(courseRecordDocStructureMap);
+
                     boolean firc = CatalogueUtil.compareTime(date_in, date_out, 8 * 60L);
-                    if (firc) {
+                    if (firc || !empty) {
                         info.set("(" + admisTime + "-" + couDate + ")");
                         status.set("-1");
                     }
@@ -72,6 +72,18 @@ public class FIRC0093 extends QCCatalogue {
         }
     }
 
+    private boolean isEmpty(Map<String, String> courseRecordDocStructureMap) {
+        for (String label : labelList) {
+            if (StringUtil.isBlank(courseRecordDocStructureMap.get(label))) {
+                String labelStr = courseRecordDocStructureMap.get(label).replaceAll(",?,?[0-9]\\.", "").replaceAll("[\\p{Punct}\\pP。-]", "").replace(" ", "");
+                if (StringUtil.isNotBlank(labelStr) && labelStr.length() > 1) {
+                    return true;
+                }
+            }
+        }
+        return false;
+    }
+
     private String getKeyByHospitalId() {
         switch (Content.hospital_Id) {
             case "1":               //长兴

+ 0 - 35
kernel/src/main/java/com/lantone/qc/kernel/catalogue/hospital/changshaxy/firstcourserecord/FIRC03198.java

@@ -1,35 +0,0 @@
-package com.lantone.qc.kernel.catalogue.hospital.changshaxy.firstcourserecord;
-
-import com.lantone.qc.kernel.catalogue.QCCatalogue;
-import com.lantone.qc.pub.model.InputInfo;
-import com.lantone.qc.pub.model.OutputInfo;
-import com.lantone.qc.pub.model.doc.FirstCourseRecordDoc;
-import com.lantone.qc.pub.util.StringUtil;
-import org.springframework.stereotype.Component;
-
-import java.text.ParseException;
-import java.util.Map;
-
-/**
- * @ClassName : FIRC03198
- * @Description :  首次病程未完整书写(湘雅三院)
- * @Author : 楼辉荣
- * @Date: 2022-03-06 17:28
- */
-@Component
-public class FIRC03198 extends QCCatalogue {
-    public void start(InputInfo inputInfo, OutputInfo outputInfo) throws ParseException {
-        status.set("0");
-        FirstCourseRecordDoc firstCourseRecordDoc = inputInfo.getFirstCourseRecordDoc();
-        if (firstCourseRecordDoc != null) {
-            Map<String, String> courseRecordDocStructureMap = firstCourseRecordDoc.getStructureMap();
-            if (courseRecordDocStructureMap != null) {
-                if (StringUtil.isBlank(courseRecordDocStructureMap.get("诊断依据")) && StringUtil.isBlank(courseRecordDocStructureMap.get("鉴别诊断")) &&
-                        StringUtil.isBlank(courseRecordDocStructureMap.get("初步诊断")) && StringUtil.isBlank(courseRecordDocStructureMap.get("病例分型"))) {
-                    status.set("-1");
-                    return;
-                }
-            }
-        }
-    }
-}

+ 1 - 0
trans/src/main/java/com/lantone/qc/trans/changshaxy/util/XyOperationRecordHtmlAnalysis.java

@@ -4,6 +4,7 @@ import com.google.common.collect.Lists;
 import com.google.common.collect.Maps;
 import com.lantone.qc.trans.changshaxy.util.comsis.XyCommonAnalysisUtil;
 import com.lantone.qc.trans.comsis.CommonAnalysisUtil;
+import com.lantone.qc.pub.util.StringUtil;
 import lombok.extern.slf4j.Slf4j;
 import org.jsoup.Jsoup;
 import org.jsoup.nodes.Element;