Jelajahi Sumber

禅道修改bug

hujing 5 tahun lalu
induk
melakukan
f198ff917e

+ 7 - 0
kernel/src/main/java/com/lantone/qc/kernel/catalogue/behospitalized/BEH0073.java

@@ -7,9 +7,11 @@ import com.lantone.qc.pub.model.entity.Diag;
 import com.lantone.qc.pub.model.entity.Family;
 import com.lantone.qc.pub.model.label.FamilyLabel;
 import com.lantone.qc.pub.util.StringUtil;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.stereotype.Component;
 
 import java.util.List;
+import java.util.Map;
 
 /**
  * @ClassName : BEH0073
@@ -25,6 +27,11 @@ public class BEH0073 extends QCCatalogue {
             status.set("0");
             return;
         }
+        Map<String, String> structureMap = inputInfo.getBeHospitalizedDoc().getStructureMap();
+        if (StringUtils.isNotEmpty(structureMap.get("病毒性肝炎")) || StringUtils.isNotEmpty(structureMap.get("结核病"))) {
+            status.set("0");
+            return;
+        }
         if (inputInfo.getBeHospitalizedDoc().getFamilyLabel() != null) {
             FamilyLabel familyLabel = inputInfo.getBeHospitalizedDoc().getFamilyLabel();
             List<Family> families = familyLabel.getFamilies();

+ 11 - 15
kernel/src/main/java/com/lantone/qc/kernel/catalogue/firstcourserecord/FIRC0093.java

@@ -1,16 +1,15 @@
 package com.lantone.qc.kernel.catalogue.firstcourserecord;
 
 import com.lantone.qc.kernel.catalogue.QCCatalogue;
-import com.lantone.qc.kernel.util.CatalogueUtil;
 import com.lantone.qc.pub.model.InputInfo;
 import com.lantone.qc.pub.model.OutputInfo;
 import com.lantone.qc.pub.model.doc.BeHospitalizedDoc;
 import com.lantone.qc.pub.model.doc.FirstCourseRecordDoc;
+import com.lantone.qc.pub.util.StringUtil;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.stereotype.Component;
 
 import java.text.ParseException;
-import java.text.SimpleDateFormat;
 import java.util.Calendar;
 import java.util.Date;
 import java.util.Map;
@@ -23,32 +22,29 @@ import java.util.Map;
  */
 @Component
 public class FIRC0093 extends QCCatalogue {
-    public static final String DATE_TIME_FORMAT = "yyyy-MM-dd HH:mm";
-    public static String FORMAT_LONG_CN_MI = "yyyy年MM月dd日HH时mm分";
     public void start(InputInfo inputInfo, OutputInfo outputInfo) throws ParseException {
         status.set("0");
         BeHospitalizedDoc beHospitalizedDoc = inputInfo.getBeHospitalizedDoc();
         FirstCourseRecordDoc firstCourseRecordDoc = inputInfo.getFirstCourseRecordDoc();
-        if(firstCourseRecordDoc != null && beHospitalizedDoc != null){
+        if (firstCourseRecordDoc != null && beHospitalizedDoc != null) {
             Map<String, String> courseRecordDocStructureMap = firstCourseRecordDoc.getStructureMap();
             Map<String, String> beHospitalizedDocStructureMap = beHospitalizedDoc.getStructureMap();
-            if(courseRecordDocStructureMap != null && beHospitalizedDocStructureMap != null){
+            if (courseRecordDocStructureMap != null && beHospitalizedDocStructureMap != null) {
                 String couDate = courseRecordDocStructureMap.get("记录时间");
                 String beDate = beHospitalizedDocStructureMap.get("入院日期");
-                if(StringUtils.isNotEmpty(couDate) && StringUtils.isNotEmpty(beDate)){
-                    Date date_in = new SimpleDateFormat(DATE_TIME_FORMAT).parse(beDate);
-                    Date date_out = new SimpleDateFormat(DATE_TIME_FORMAT).parse(couDate);
-                    Calendar from  =  Calendar.getInstance();
+                if (StringUtils.isNotEmpty(couDate) && StringUtils.isNotEmpty(beDate)) {
+                    Date date_in = StringUtil.parseDateTime(beDate);
+                    Date date_out = StringUtil.parseDateTime(couDate);
+                    Calendar from = Calendar.getInstance();
                     from.setTime(date_in);
-                    Calendar  to  =  Calendar.getInstance();
+                    Calendar to = Calendar.getInstance();
                     to.setTime(date_out);
                     int fromHour = from.get(Calendar.HOUR_OF_DAY);
-                    int toHour  = to.get(Calendar.HOUR_OF_DAY);
-                    int hour = toHour  -  fromHour;
-                    if(hour > 8){
+                    int toHour = to.get(Calendar.HOUR_OF_DAY);
+                    int hour = toHour - fromHour;
+                    if (hour > 8) {
                         status.set("-1");
                     }
-
                 }
             }
         }

+ 11 - 1
kernel/src/main/java/com/lantone/qc/kernel/catalogue/leavehospital/LEA0149.java

@@ -40,8 +40,18 @@ public class LEA0149 extends QCCatalogue {
                 Map<String, String> lhStructureMap = leaveHospitalDoc.getStructureMap();
                 ChiefLabel chiefLabel = beHospitalizedDoc.getChiefLabel();
                 if (lhStructureMap != null && chiefLabel != null) {
-                    String bhChief = chiefLabel.getText().replaceAll("[\\p{Punct}\\pP]", "");
+                    String bhChief = chiefLabel.getText().replaceAll("[\\p{Punct}\\pP。]", "");
+                    String leaveChief = lhStructureMap.get("主诉");
                     String bhThings = lhStructureMap.get("入院情况");
+
+                    //如果出院小结结构化数据能取出主诉,则直接用该主诉和入院记录主诉比较
+                    if (StringUtil.isNotBlank(leaveChief)){
+                        leaveChief = leaveChief.replaceAll("。","");
+                        if (bhChief.equals(leaveChief)){
+                            status.set("0");
+                            return;
+                        }
+                    }
                     Pattern compile = Pattern.compile("(?<=2.).*(?=3.体格检查)");
                     Matcher matcher = compile.matcher(bhThings);
                     while (matcher.find()){

+ 1 - 1
trans/src/main/java/com/lantone/qc/trans/taizhou/TaiZhouBeHospitalizedDocTrans.java

@@ -59,7 +59,7 @@ public class TaiZhouBeHospitalizedDocTrans extends ModelDocTrans {
             "病人出生日期=出生日期",
             "出生地址=户口地址",
             "本人电话=电话",
-            "入病房时间=入院日期",
+            "入院日期=入院日期",
             "病历日期=记录日期",
             "主诉=主诉",
             "现病史=现病史",