Browse Source

新增温附一规则 OPE0348 缺手术知情同意书

hecc 3 năm trước cách đây
mục cha
commit
71674cf6a0

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

@@ -0,0 +1,39 @@
+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.StringUtil;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+
+/**
+ * @ClassName : OPE0348
+ * @Description : 缺手术知情同意书
+ * @Author : 贺聪聪
+ * @Date: 2022-07-07 14:25
+ */
+@Component
+public class OPE0348 extends QCCatalogue {
+    public void start(InputInfo inputInfo, OutputInfo outputInfo) {
+        status.set("0");
+        //先判断有无手术记录
+        List<OperationDoc> operationDocs = inputInfo.getOperationDocs();//获取手术记录
+        long count_oper =0;
+        long count_info =0;
+        long count_title =0;
+        if(operationDocs != null && operationDocs.size()>0){
+            count_oper = operationDocs.stream().map(i -> i.getOperationRecordDoc()).filter(i -> i != null).count();//手术记录
+
+            count_info = operationDocs.stream().map(i -> i.getOperationInformedConsentDoc()).filter(i -> i != null).count();//手术知情同意书
+
+            count_title = operationDocs.stream().map(i -> i.getPreoperativeDiscussionDoc()).filter(
+                    i -> i != null && StringUtil.isNotBlank(i.getStructureMap().get("标题")) && i.getStructureMap().get("标题").contains("手术知情同意书")).count();
+            if(count_oper>0 && count_info ==0){
+                status.set("-1");
+            }
+        }
+    }
+}