|
@@ -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");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+}
|