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