Explorar o código

1、修改邵逸夫BUG

louhr %!s(int64=5) %!d(string=hai) anos
pai
achega
40355e16f3

+ 1 - 1
kernel/src/main/java/com/lantone/qc/kernel/catalogue/behospitalized/BEH02940.java

@@ -23,7 +23,7 @@ public class BEH02940 extends QCCatalogue {
             return;
         }
         Map<String, String> beHospitalStructureMap = inputInfo.getBeHospitalizedDoc().getStructureMap();
-        if (StringUtil.isBlank(beHospitalStructureMap.get("内科疾病史(其它)"))) {
+        if (StringUtil.isBlank(beHospitalStructureMap.get("内科疾病史其它"))) {
             status.set("-1");
         }
     }

+ 25 - 0
kernel/src/main/java/com/lantone/qc/kernel/catalogue/behospitalized/BEH02978.java

@@ -0,0 +1,25 @@
+package com.lantone.qc.kernel.catalogue.behospitalized;
+
+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.util.StringUtil;
+
+import java.util.Map;
+
+/**
+ * @ClassName : BEH02978
+ * @Description : 药物过敏史描述与病案首页不一致(结构化数据)
+ * @Author : 楼辉荣
+ * @Date: 2020-06-20 15:00
+ */
+public class BEH02978 extends QCCatalogue {
+    @Override
+    public void start(InputInfo inputInfo, OutputInfo outputInfo) {
+        status.set("0");
+        if (inputInfo.getBeHospitalizedDoc() == null) {
+            return;
+        }
+
+    }
+}

+ 9 - 0
kernel/src/main/java/com/lantone/qc/kernel/catalogue/firstcourserecord/FIRC0500.java

@@ -44,6 +44,15 @@ public class FIRC0500 extends QCCatalogue {
                 return;
             }
         }
+        //结构化再获取病历特点,判断是否包含主诉内容
+        firstCourseChief = structureMap.get("病例特点");
+        if (StringUtil.isNotBlank(firstCourseChief)) {
+            firstCourseChief = firstCourseChief.replaceAll("[\\p{Punct}\\pP。]", "");
+            if (firstCourseChief.contains(chief_text)) { //首程病历特点.contains(入院记录主诉)
+                status.set("0");
+                return;
+            }
+        }
         if (firstCourseRecordDoc.getText().contains(chief_text)) {
             status.set("0");
         }

+ 9 - 0
kernel/src/main/java/com/lantone/qc/kernel/catalogue/leavehospital/LEA0149.java

@@ -41,9 +41,13 @@ public class LEA0149 extends QCCatalogue {
             String bhChief = CatalogueUtil.int2ChineseNum(chiefLabel.getText().replaceAll("[\\p{Punct}\\pP。-]", ""));
             String leaveChief = lhStructureMap.get("主诉");
             String bhThings = lhStructureMap.get("入院情况");
+            String reThings = lhStructureMap.get("入院原因");   //邵逸夫主诉在入院原因内
             if (StringUtil.isNotBlank(bhThings)) {
                 bhThings = CatalogueUtil.int2ChineseNum(bhThings.replaceAll("[\\p{Punct}\\pP。-]", ""));
             }
+            if (StringUtil.isNotBlank(reThings)) {
+                reThings = CatalogueUtil.int2ChineseNum(reThings.replaceAll("[\\p{Punct}\\pP。-]", ""));
+            }
 
             //如果出院小结结构化数据能取出主诉,则直接用该主诉和入院记录主诉比较
             if (StringUtil.isNotBlank(leaveChief)) {
@@ -57,6 +61,11 @@ public class LEA0149 extends QCCatalogue {
                 status.set("0");
                 return;
             }
+            //邵逸夫主诉写在入院原因
+            if (StringUtil.isNotBlank(reThings) && reThings.replace(" ", "").contains(bhChief.replace(" ", ""))) {
+                status.set("0");
+                return;
+            }
             Pattern compile = Pattern.compile("(?<=2.).*(?=3.体格检查)");
             Matcher matcher = compile.matcher(bhThings);
             while (matcher.find()) {

+ 9 - 2
kernel/src/main/java/com/lantone/qc/kernel/catalogue/leavehospital/LEA0515.java

@@ -28,9 +28,16 @@ public class LEA0515 extends QCCatalogue {
         if (deathRecordDoc == null || deathRecordDoc.getText() == null) {
             Map<String, String> leaveHospitalStructureMap = leaveHospitalDoc.getStructureMap();
             if (leaveHospitalStructureMap != null) {
-                if (CatalogueUtil.isEmpty(leaveHospitalStructureMap.get("健康教育"))) {
-                    status.set("-1");
+                if (!CatalogueUtil.isEmpty(leaveHospitalStructureMap.get("健康教育"))) {
+                    status.set("0");
+                    return;
                 }
+                //邵逸夫其他指导即健康教育
+                if (!CatalogueUtil.isEmpty(leaveHospitalStructureMap.get("其他指导"))) {
+                    status.set("0");
+                    return;
+                }
+                status.set("-1");
             }
         }
     }

+ 1 - 0
trans/src/main/java/com/lantone/qc/trans/shaoyf/ShaoyfBeHospitalizedDocTrans.java

@@ -88,6 +88,7 @@ public class ShaoyfBeHospitalizedDocTrans extends ModelDocTrans {
             "修正诊断=修正诊断",
             "当前诊断=死亡诊断",
             "喂养间隔=间隔时间",
+            "出院状态=出院情况",
             "医生=医师签名",
             "补充诊断=补充诊断",
             "户口地址=联系地址",

+ 5 - 0
trans/src/main/java/com/lantone/qc/trans/shaoyf/ShaoyfConsultationDocTrans.java

@@ -101,6 +101,7 @@ public class ShaoyfConsultationDocTrans extends ModelDocTrans {
     private List<String> consultationRecord_keyContrasts = Lists.newArrayList(
             "事件日期=记录时间",
             "医生=记录医师",
+            "临床科室=申请科室",
             "会诊执行情况=会诊情况"
     );
 
@@ -181,6 +182,9 @@ public class ShaoyfConsultationDocTrans extends ModelDocTrans {
         sourceMap.put("rec_title=" + contentMap.get("recTitle").toString(), "");
         Map<String, String> structureMap = OrdinaryAssistant.mapKeyContrast(sourceMap, consultationApplication_keyContrasts);
 
+        if (structureMap.get("会诊医生") != null) {
+            structureMap.put("会诊医生", structureMap.get("会诊医生").replaceAll("&nbsp;", ""));
+        }
         ConsultationApplicationDoc consultationApplicationDoc = new ConsultationApplicationDoc();
         consultationApplicationDoc.setStructureMap(structureMap);
         consultationApplicationDoc.setPageData((Map) structureMap);
@@ -193,6 +197,7 @@ public class ShaoyfConsultationDocTrans extends ModelDocTrans {
             "事件日期=申请日期",
             "会诊类别=会诊分类",
             "会诊理由和目的=申请理由目的",
+            "病历日期=会诊日期及时间",
             "本人姓名=姓名",
             "病历号=病案号",
             "临床科室=申请科室"

+ 1 - 0
trans/src/main/java/com/lantone/qc/trans/shaoyf/ShaoyfOperationDocTrans.java

@@ -202,6 +202,7 @@ public class ShaoyfOperationDocTrans extends ModelDocTrans {
             "术中、术后防范措施=可能意外和防范措施",
             "现病史- 发病情况=发病经过",
             "本人姓名=姓名",
+            "手术名称=拟行术式",
             "拟施手术名称和方式=拟行术式"
     );
 

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

@@ -77,6 +77,7 @@ public class TaiZhouBeHospitalizedDocTrans extends ModelDocTrans {
             "病历日期=记录日期",
             "主诉=主诉",
             "现病史=现病史",
+            "内科疾病史(其它)=内科疾病史其它",
             "一般健康状况=既往健康状况",
             "婚姻家庭关系和睦=夫妻关系",
             "体格检查=体格检查",

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

@@ -193,6 +193,7 @@ public class TaiZhouConsultationDocTrans extends ModelDocTrans {
             "事件日期=申请日期",
             "会诊类别=会诊分类",
             "会诊理由和目的=申请理由目的",
+            "病历日期=会诊日期及时间",
             "本人姓名=姓名",
             "病历号=病案号",
             "临床科室=申请科室"