فهرست منبع

危重患者上级医师(副高及以上)查房记录无诊疗意见

weixuanhuang 5 سال پیش
والد
کامیت
08955f86a8
1فایلهای تغییر یافته به همراه50 افزوده شده و 0 حذف شده
  1. 50 0
      kernel/src/main/java/com/lantone/qc/kernel/catalogue/operationdiscussion/OPE0648.java

+ 50 - 0
kernel/src/main/java/com/lantone/qc/kernel/catalogue/operationdiscussion/OPE0648.java

@@ -0,0 +1,50 @@
+package com.lantone.qc.kernel.catalogue.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 java.text.ParseException;
+import java.util.List;
+
+/**
+ * @Description: 手术记录由非参加手术者书写
+ * @author: Mark
+ * @time: 2020/04/04 10:12
+ */
+public class OPE0648 extends QCCatalogue {
+
+    @Override
+    protected void start(InputInfo inputInfo, OutputInfo outputInfo) throws ParseException {
+        status.set("0");
+        boolean isOperativePatient = true;//是手术患者(暂时默认是)
+        if (isOperativePatient) {
+            List<OperationDoc> operationDocs = inputInfo.getOperationDocs();
+            if (ListUtil.isNotEmpty(operationDocs)) {
+                long count = operationDocs.stream().filter(operationDoc -> {
+                    boolean flag = false;
+                    if (operationDoc.getOperationRecordDoc() != null) {
+                        String surgeon = operationDoc.getOperationRecordDoc().getStructureMap().get("手术医师");
+                        String assist1 = operationDoc.getOperationRecordDoc().getStructureMap().get("助手I");
+                        String asssit2 = operationDoc.getOperationRecordDoc().getStructureMap().get("助手II");
+                        String signature = operationDoc.getOperationRecordDoc().getStructureMap().get("主刀医师签名");
+
+                        String operator = surgeon + ", " + assist1 + ", " + asssit2;
+
+                        if (!operator.contains(signature)) {
+                            flag = true;
+                        }
+                    }
+                    return flag;
+                }).count();
+                if (count > 0) {
+                    status.set("-1");
+                }
+            }
+        }
+    }
+
+}