ソースを参照

台州运行质控修改bug

hujing 5 年 前
コミット
293e11ff7b

+ 2 - 2
kernel/src/main/java/com/lantone/qc/kernel/catalogue/behospitalized/BEH02966.java

@@ -13,7 +13,7 @@ import java.util.Map;
 
 /**
  * @ClassName : BEH02966
- * @Description :  入院记录查体与性别不匹配
+ * @Description :  患者病历书写与性别不符(入院记录)
  * @Author : 胡敬
  * @Date: 2020-06-13 15:51
  */
@@ -46,7 +46,7 @@ public class BEH02966 extends QCCatalogue {
         }
 
         List<String> keys = Lists.newArrayList("主诉", "现病史", "既往史", "个人史", "体格检查", "一般情况"
-                , "初步诊断", "专科体格检查", "神经系统检查");
+                , "初步诊断", "专科体格检查", "神经系统检查", "实验室检查", "影像学检查");
         String text = CatalogueUtil.structureMapJoin(beHospitalStructureMap, keys);
 
         for (String noMatchWord : noMatchWords) {

+ 24 - 3
kernel/src/main/java/com/lantone/qc/kernel/catalogue/behospitalized/BEH0422.java

@@ -1,12 +1,13 @@
 package com.lantone.qc.kernel.catalogue.behospitalized;
 
 import com.lantone.qc.kernel.catalogue.QCCatalogue;
-import com.lantone.qc.kernel.util.CatalogueUtil;
-import com.lantone.qc.pub.Content;
 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.util.StringUtil;
 import org.springframework.stereotype.Component;
 
+import java.util.Date;
 import java.util.Map;
 
 
@@ -18,7 +19,27 @@ import java.util.Map;
 @Component
 public class BEH0422 extends QCCatalogue {
     public void start(InputInfo inputInfo, OutputInfo outputInfo) {
+        /**
+         * 记录日期比入院日期早就报错
+         */
         status.set("0");
-
+        BeHospitalizedDoc beHospitalizedDoc = inputInfo.getBeHospitalizedDoc();
+        if (beHospitalizedDoc == null) {
+            return;
+        }
+        Map<String, String> docStructureMap = beHospitalizedDoc.getStructureMap();
+        String admissionDateStr = docStructureMap.get("入院日期");
+        String recordDateStr = docStructureMap.get("记录日期");
+        if (StringUtil.isBlank(admissionDateStr) || StringUtil.isBlank(recordDateStr)) {
+            return;
+        }
+        Date admissionDate = StringUtil.parseDateTime(admissionDateStr);
+        Date recordDate = StringUtil.parseDateTime(recordDateStr);
+        if (admissionDate == null || recordDate == null) {
+            return;
+        }
+        if (admissionDate.after(recordDate)) {
+            status.set("-1");
+        }
     }
 }

+ 1 - 1
kernel/src/main/java/com/lantone/qc/kernel/catalogue/clinicalblood/CLI0309.java

@@ -22,7 +22,7 @@ public class CLI0309 extends QCCatalogue {
         status.set("0");
         List<ClinicalBloodDoc> clinicalBloodDocs = inputInfo.getClinicalBloodDocs();//输血记录
         List<ClinicBloodEffectDoc> clinicBloodEffectDocs = inputInfo.getClinicBloodEffectDocs();//输血效果评价
-        if (ListUtil.isEmpty(clinicalBloodDocs) || ListUtil.isEmpty(clinicBloodEffectDocs)) {
+        if (ListUtil.isEmpty(clinicalBloodDocs)) {
             return;
         }
         if (clinicalBloodDocs.size() < clinicBloodEffectDocs.size()) {

+ 1 - 1
kernel/src/main/java/com/lantone/qc/kernel/catalogue/deathrecord/DEAR0339.java

@@ -23,7 +23,7 @@ public class DEAR0339 extends QCCatalogue {
             Map<String, String> deathRecordStructureMap = inputInfo.getDeathRecordDoc().getStructureMap();
             String chiefText = inputInfo.getBeHospitalizedDoc().getChiefLabel().getText();
             String admissionStatus = deathRecordStructureMap.get("入院情况");
-            if (CatalogueUtil.isEmpty(admissionStatus) || CatalogueUtil.isEmpty(chiefText)) {
+            if (admissionStatus == null || CatalogueUtil.isEmpty(chiefText)) {
                 return;
             }
             chiefText = CatalogueUtil.removeSpecialChar(chiefText).replace("。", "");

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

@@ -40,6 +40,7 @@ public class TaiZhouDeathRecordDocTrans extends ModelDocTrans {
             "诊治经过=诊疗经过",
             "本人姓名=姓名",
             "现病史- 发病情况=发病情况",
+            "病历日期=记录时间",
             "医生=记录医师"
     );