瀏覽代碼

台州运行质控死亡病例讨论记录修改bug

hujing 5 年之前
父節點
當前提交
d3f7cb0452

+ 8 - 5
kernel/src/main/java/com/lantone/qc/kernel/catalogue/behospitalized/BEH0012.java

@@ -1,8 +1,8 @@
 package com.lantone.qc.kernel.catalogue.behospitalized;
 
-import com.lantone.qc.kernel.catalogue.QCCatalogue;
 import com.lantone.qc.dbanaly.util.KernelConstants;
 import com.lantone.qc.dbanaly.util.SpecialStorageUtil;
+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.entity.Diag;
@@ -35,19 +35,22 @@ public class BEH0012 extends QCCatalogue {
         }
         List<String> diags_out = new ArrayList<>();
         Map<String, String> hostpital_standDiag = specialStorageUtil.getJsonStringValue(KernelConstants.HOSPITAL_DIAG_MAP);
-        if (hostpital_standDiag == null){
+        if (hostpital_standDiag == null) {
             status.set("0");
             return;
         }
-        List<Diag> diags = inputInfo.getBeHospitalizedDoc().getInitialDiagLabel().getDiags();
+        List<Diag> diags = null;
+        if (inputInfo.getBeHospitalizedDoc().getInitialDiagLabel() != null) {
+            diags = inputInfo.getBeHospitalizedDoc().getInitialDiagLabel().getDiags();
+        }
         if (diags != null && diags.size() > 0) {
             for (Diag diag : diags) {
                 List<String> disList = Arrays.asList(strings);
                 for (String diagSplit : diag.getHospitalDiagName().split("、")) {
-                    if ("ACT".equals(diagSplit)){
+                    if ("ACT".equals(diagSplit)) {
                         continue;
                     }
-                    String hospitalDiagName = diagSplit.trim().replace("待查", "").replace("?","").replace("?","");
+                    String hospitalDiagName = diagSplit.trim().replace("待查", "").replace("?", "").replace("?", "");
                     if (hospitalDiagName.contains("伴")) {
                         hospitalDiagName = hospitalDiagName.substring(0, hospitalDiagName.indexOf("伴"));
                     }

+ 49 - 43
kernel/src/main/java/com/lantone/qc/kernel/catalogue/deathcasediscuss/DEAC0099.java

@@ -1,44 +1,50 @@
-package com.lantone.qc.kernel.catalogue.deathcasediscuss;
-
-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 org.apache.commons.lang3.StringUtils;
-import org.springframework.stereotype.Component;
-
-import java.util.Map;
-
-/**
- * @ClassName : DEAC0099
- * @Description : 死亡病例讨论记录中无主诉
- * @Author : 胡敬
- * @Date: 2020-03-19 09:35
- */
-@Component
-public class DEAC0099 extends QCCatalogue {
-    public void start(InputInfo inputInfo, OutputInfo outputInfo) {
-        status.set("0");
-        if (inputInfo.getDeathCaseDiscussDoc() != null && inputInfo.getDeathCaseDiscussDoc().getStructureMap() != null
-                && inputInfo.getBeHospitalizedDoc() != null && inputInfo.getBeHospitalizedDoc().getChiefLabel() != null) {
-            Map<String, String> deathCaseDiscussStructureMap = inputInfo.getDeathCaseDiscussDoc().getStructureMap();
-            String chiefText = inputInfo.getBeHospitalizedDoc().getChiefLabel().getText();
-            String admissionStatus = deathCaseDiscussStructureMap.get("入院情况");
-            if (CatalogueUtil.isEmpty(admissionStatus) || CatalogueUtil.isEmpty(chiefText)) {
-                return;
-            }
-            chiefText = CatalogueUtil.removeSpecialChar(chiefText).replace("。", "");
-            if(StringUtils.isNotEmpty(chiefText)){
-                return;
-            }
-            admissionStatus = CatalogueUtil.removeSpecialChar(admissionStatus).replace("。", "");
-            if (!admissionStatus.contains(chiefText)) {
-                status.set("-1");
-            }
-            //处理台州的
-            if (admissionStatus.contains("患者因")) {
-                status.set("0");
-            }
-        }
-    }
+package com.lantone.qc.kernel.catalogue.deathcasediscuss;
+
+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.util.StringUtil;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.stereotype.Component;
+
+import java.util.Map;
+
+/**
+ * @ClassName : DEAC0099
+ * @Description : 死亡病例讨论记录中无主诉
+ * @Author : 胡敬
+ * @Date: 2020-03-19 09:35
+ */
+@Component
+public class DEAC0099 extends QCCatalogue {
+    public void start(InputInfo inputInfo, OutputInfo outputInfo) {
+        status.set("0");
+        if (inputInfo.getDeathCaseDiscussDoc() != null
+                && inputInfo.getBeHospitalizedDoc() != null && inputInfo.getBeHospitalizedDoc().getChiefLabel() != null) {
+            Map<String, String> deathCaseDiscussStructureMap = inputInfo.getDeathCaseDiscussDoc().getStructureMap();
+            String deathCaseDiscussChief = deathCaseDiscussStructureMap.get("主诉");
+            if (StringUtil.isNotBlank(deathCaseDiscussChief)) {
+                return;
+            }
+
+            String chiefText = inputInfo.getBeHospitalizedDoc().getChiefLabel().getText();
+            String admissionStatus = deathCaseDiscussStructureMap.get("入院情况");
+            if (CatalogueUtil.isEmpty(admissionStatus) || CatalogueUtil.isEmpty(chiefText)) {
+                return;
+            }
+            chiefText = CatalogueUtil.removeSpecialChar(chiefText).replace("。", "");
+            if (StringUtils.isNotEmpty(chiefText)) {
+                return;
+            }
+            admissionStatus = CatalogueUtil.removeSpecialChar(admissionStatus).replace("。", "");
+            if (!admissionStatus.contains(chiefText)) {
+                status.set("-1");
+            }
+            //处理台州的
+            if (admissionStatus.contains("患者因")) {
+                status.set("0");
+            }
+        }
+    }
 }

+ 9 - 3
kernel/src/main/java/com/lantone/qc/kernel/catalogue/deathcasediscuss/DEAC0114.java

@@ -4,6 +4,7 @@ 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.util.StringUtil;
 import org.springframework.stereotype.Component;
 
 import java.util.Map;
@@ -20,11 +21,16 @@ public class DEAC0114 extends QCCatalogue {
         status.set("0");
         if (inputInfo.getDeathCaseDiscussDoc() != null && inputInfo.getDeathCaseDiscussDoc().getStructureMap() != null) {
             Map<String, String> deathCaseDiscussStructureMap = inputInfo.getDeathCaseDiscussDoc().getStructureMap();
+            String deathCause = deathCaseDiscussStructureMap.get("死亡原因");
+            boolean findDeathCause = false;
+            if (StringUtil.isNotBlank(deathCause)) {
+                findDeathCause = true;
+            }
             String discussionContent = deathCaseDiscussStructureMap.get("讨论内容");
-            if (CatalogueUtil.isEmpty(discussionContent)) {
-                return;
+            if (StringUtil.isNotEmpty(discussionContent) && discussionContent.contains("因")) {
+                findDeathCause = true;
             }
-            if (!discussionContent.contains("因")) {
+            if (!findDeathCause) {
                 status.set("-1");
             }
         }

+ 2 - 1
kernel/src/main/java/com/lantone/qc/kernel/catalogue/deathcasediscuss/DEAC0115.java

@@ -20,7 +20,8 @@ public class DEAC0115 extends QCCatalogue {
         status.set("0");
         if (inputInfo.getDeathCaseDiscussDoc() != null && inputInfo.getDeathCaseDiscussDoc().getStructureMap() != null) {
             Map<String, String> deathCaseDiscussStructureMap = inputInfo.getDeathCaseDiscussDoc().getStructureMap();
-            if (CatalogueUtil.isEmpty(deathCaseDiscussStructureMap.get("记录医师"))) {
+            String sign = deathCaseDiscussStructureMap.get("记录医师");
+            if (CatalogueUtil.isEmpty(sign)) {
                 status.set("-1");
             }
         }

+ 2 - 2
kernel/src/main/java/com/lantone/qc/kernel/catalogue/deathcasediscuss/DEAR0556.java

@@ -12,13 +12,13 @@ import java.util.Date;
 import java.util.Map;
 
 /**
- * @ClassName : DEAR0556
+ * @ClassName : DEAC0556
  * @Description :  死亡病例讨论参加人员姓名及职称未填写
  * @Author :kwz
  * @Date: 2020-03-18 18:38
  */
 @Component
-public class DEAR0556 extends QCCatalogue {
+public class DEAC0556 extends QCCatalogue {
     public void start(InputInfo inputInfo, OutputInfo outputInfo) {
         status.set("0");
         if (inputInfo.getDeathRecordDoc() != null && inputInfo.getDeathRecordDoc().getStructureMap() != null) {

+ 2 - 2
kernel/src/main/java/com/lantone/qc/kernel/catalogue/deathcasediscuss/DEAR0557.java

@@ -9,13 +9,13 @@ import org.springframework.stereotype.Component;
 import java.util.Map;
 
 /**
- * @ClassName : DEAR0557
+ * @ClassName : DEAC0557
  * @Description :  死亡病例讨论无具体讨论意见
  * @Author :kwz
  * @Date: 2020-03-18 18:38
  */
 @Component
-public class DEAR0557 extends QCCatalogue {
+public class DEAC0557 extends QCCatalogue {
     public void start(InputInfo inputInfo, OutputInfo outputInfo) {
         status.set("0");
         if (inputInfo.getDeathRecordDoc() != null && inputInfo.getDeathRecordDoc().getStructureMap() != null) {

+ 5 - 5
kernel/src/main/java/com/lantone/qc/kernel/catalogue/deathcasediscuss/DEAR0558.java

@@ -9,18 +9,18 @@ import org.springframework.stereotype.Component;
 import java.util.Map;
 
 /**
- * @ClassName : DEAR0558
+ * @ClassName : DEAC0558
  * @Description :  死亡病例讨论无主持人小结意见
  * @Author :kwz
  * @Date: 2020-03-18 18:38
  */
 @Component
-public class DEAR0558 extends QCCatalogue {
+public class DEAC0558 extends QCCatalogue {
     public void start(InputInfo inputInfo, OutputInfo outputInfo) {
         status.set("0");
-        if (inputInfo.getDeathRecordDoc() != null && inputInfo.getDeathRecordDoc().getStructureMap() != null) {
-            Map<String, String> deathRecordStructureMap = inputInfo.getDeathRecordDoc().getStructureMap();
-            String deathTime = deathRecordStructureMap.get("结论");
+        if (inputInfo.getDeathCaseDiscussDoc() != null) {
+            Map<String, String> deathCaseDiscussStructureMap = inputInfo.getDeathCaseDiscussDoc().getStructureMap();
+            String deathTime = deathCaseDiscussStructureMap.get("结论");
             if (CatalogueUtil.isEmpty(deathTime)) {
                 status.set("-1");
             }

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

@@ -4,6 +4,7 @@ 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.util.StringUtil;
 import org.springframework.stereotype.Component;
 
 import java.util.Map;
@@ -21,6 +22,10 @@ public class DEAR0339 extends QCCatalogue {
         if (inputInfo.getDeathRecordDoc() != null && inputInfo.getDeathRecordDoc().getStructureMap() != null
                 && inputInfo.getBeHospitalizedDoc() != null && inputInfo.getBeHospitalizedDoc().getChiefLabel() != null) {
             Map<String, String> deathRecordStructureMap = inputInfo.getDeathRecordDoc().getStructureMap();
+            String deathChief = deathRecordStructureMap.get("主诉");
+            if (StringUtil.isNotBlank(deathChief)) {
+                return;
+            }
             String chiefText = inputInfo.getBeHospitalizedDoc().getChiefLabel().getText();
             String admissionStatus = deathRecordStructureMap.get("入院情况");
             if (admissionStatus == null || CatalogueUtil.isEmpty(chiefText)) {

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

@@ -46,7 +46,7 @@ public class LEA02968 extends QCCatalogue {
             return;
         }
         List<String> keys = Lists.newArrayList("入院诊断", "出院诊断", "入院情况", "诊治经过", "出院情况", "出院医嘱"
-                , "随访计划", "主诉", "专科检查", "健康教育");
+                , "随访计划", "主诉", "专科检查", "健康教育", "辅助检查", "影像学检查", "实验室检查");
         String text = CatalogueUtil.structureMapJoin(structureMap, keys);
 
         for (String noMatchWord : noMatchWords) {

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

@@ -41,7 +41,9 @@ public class TaiZhouDeathCaseDiscussDocTrans extends ModelDocTrans {
             "医生=记录医师",
             "本人姓名=姓名",
             "事件日期=讨论时间",
-            "当前诊断=死亡诊断"
+            "当前诊断=死亡诊断",
+            "病历日期=记录时间",
+            "讨论小结=结论"
     );
 
 }