Browse Source

温附一:特殊模板不质控

wangsy 3 years ago
parent
commit
27fdc1f3d4

+ 57 - 0
kernel/src/main/java/com/lantone/qc/kernel/catalogue/hospital/wenfuyi/operationdiscussion/OPE0357.java

@@ -0,0 +1,57 @@
+package com.lantone.qc.kernel.catalogue.hospital.wenfuyi.operationdiscussion;
+
+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.operation.OperationDoc;
+import com.lantone.qc.pub.util.ListUtil;
+import com.lantone.qc.pub.util.StringUtil;
+import org.springframework.stereotype.Component;
+
+import java.text.ParseException;
+import java.util.List;
+
+/**
+ * @Description: 手术记录中术前诊断未填写
+ * @author: rengb
+ * @time: 2020/3/23 15:09
+ */
+@Component
+public class OPE0357 extends QCCatalogue {
+
+    @Override
+    protected void start(InputInfo inputInfo, OutputInfo outputInfo) throws ParseException {
+        status.set("0");
+        //医嘱
+        //        List<DoctorAdviceDoc> doctorAdviceDocs = inputInfo.getDoctorAdviceDocs();
+        //        if (ListUtil.isEmpty(doctorAdviceDocs)) {
+        //            return;
+        //        }
+        //        boolean isOperativePatient = CatalogueUtil.isOperativePatients(doctorAdviceDocs);
+//        boolean isOperativePatient = true;//是手术患者(暂时默认是)
+//        if (isOperativePatient) {
+        List<OperationDoc> operationDocs = inputInfo.getOperationDocs();
+        if (operationDocs == null || operationDocs.size() == 0) {
+            status.set("0");
+            return;
+        }
+        if (ListUtil.isNotEmpty(operationDocs)) {
+            long count = operationDocs.stream().filter(operationDoc -> {
+                boolean flag = false;
+                if (operationDoc.getOperationRecordDoc() != null
+                        && StringUtil.isNotBlank(operationDoc.getOperationRecordDoc().getStructureMap().get("mode_id"))
+                        && !"853".equals(operationDoc.getOperationRecordDoc().getStructureMap().get("mode_id"))
+                        && !"854".equals(operationDoc.getOperationRecordDoc().getStructureMap().get("mode_id"))
+                        && StringUtil.isBlank(operationDoc.getOperationRecordDoc().getStructureMap().get("术前诊断"))) {
+                    flag = true;
+                }
+                return flag;
+            }).count();
+            if (count > 0) {
+                status.set("-1");
+            }
+        }
+//        }
+    }
+
+}

+ 16 - 13
kernel/src/main/java/com/lantone/qc/kernel/catalogue/hospital/wenfuyi/operationdiscussion/OPE0358.java

@@ -30,24 +30,27 @@ public class OPE0358 extends QCCatalogue {
         //        boolean isOperativePatient = CatalogueUtil.isOperativePatients(doctorAdviceDocs);
 //        boolean isOperativePatient = true;//是手术患者(暂时默认是)
 //        if (isOperativePatient) {
-            List<OperationDoc> operationDocs = inputInfo.getOperationDocs();
-        if(operationDocs == null || operationDocs.size() == 0){
+        List<OperationDoc> operationDocs = inputInfo.getOperationDocs();
+        if (operationDocs == null || operationDocs.size() == 0) {
             status.set("0");
             return;
         }
-            if (ListUtil.isNotEmpty(operationDocs)) {
-                long count = operationDocs.stream().filter(operationDoc -> {
-                    boolean flag = false;
-                    if (operationDoc.getOperationRecordDoc() != null
-                            && StringUtil.isBlank(operationDoc.getOperationRecordDoc().getStructureMap().get("术中诊断"))) {
-                        flag = true;
-                    }
-                    return flag;
-                }).count();
-                if (count > 0) {
-                    status.set("-1");
+        if (ListUtil.isNotEmpty(operationDocs)) {
+            long count = operationDocs.stream().filter(operationDoc -> {
+                boolean flag = false;
+                if (operationDoc.getOperationRecordDoc() != null
+                        && StringUtil.isNotBlank(operationDoc.getOperationRecordDoc().getStructureMap().get("mode_id"))
+                        && !"853".equals(operationDoc.getOperationRecordDoc().getStructureMap().get("mode_id"))
+                        && !"854".equals(operationDoc.getOperationRecordDoc().getStructureMap().get("mode_id"))
+                        && StringUtil.isBlank(operationDoc.getOperationRecordDoc().getStructureMap().get("术中诊断"))) {
+                    flag = true;
                 }
+                return flag;
+            }).count();
+            if (count > 0) {
+                status.set("-1");
             }
+        }
 //        }
     }