Explorar el Código

主诉未填写,现病史或既往史填写显示报错

wangsy hace 4 años
padre
commit
abc03d4a4b

+ 18 - 3
kernel/src/main/java/com/lantone/qc/kernel/catalogue/behospitalized/BEH02988.java

@@ -3,6 +3,10 @@ package com.lantone.qc.kernel.catalogue.behospitalized;
 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.BeHospitalizedDoc;
+import com.lantone.qc.pub.model.label.ChiefLabel;
+import com.lantone.qc.pub.model.label.PastLabel;
+import com.lantone.qc.pub.model.label.PresentLabel;
 import com.lantone.qc.pub.util.StringUtil;
 import org.springframework.stereotype.Component;
 
@@ -17,11 +21,22 @@ public class BEH02988 extends QCCatalogue {
     @Override
     public void start(InputInfo inputInfo, OutputInfo outputInfo) {
         status.set("0");
-        if (inputInfo.getBeHospitalizedDoc() == null) {
+        BeHospitalizedDoc beHospitalizedDoc = inputInfo.getBeHospitalizedDoc();
+        //主诉
+        ChiefLabel chiefLabel = beHospitalizedDoc.getChiefLabel();
+        //现病史
+        PresentLabel presentLabel = beHospitalizedDoc.getPresentLabel();
+        //既往史
+        PastLabel pastLabel = beHospitalizedDoc.getPastLabel();
+        if (beHospitalizedDoc == null) {
             return;
         }
-        if (inputInfo.getBeHospitalizedDoc().getChiefLabel() == null
-                && StringUtil.isBlank(inputInfo.getBeHospitalizedDoc().getChiefLabel().getText())) {
+        if (StringUtil.isBlank(chiefLabel.getText()) && StringUtil.isNotBlank(presentLabel.getText()) ||
+                StringUtil.isNotBlank(pastLabel.getText())) {
+            status.set("-1");
+            return;
+        }
+        if (chiefLabel == null && StringUtil.isBlank(chiefLabel.getText())) {
             status.set("-1");
         }
     }