Pārlūkot izejas kodu

入院规则添加

rengb 5 gadi atpakaļ
vecāks
revīzija
0bd284de84

+ 15 - 3
kernel/src/main/java/com/lantone/qc/kernel/catalogue/behospitalized/BEH0025.java

@@ -3,10 +3,15 @@ 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.entity.Operation;
+import com.lantone.qc.pub.util.ListUtil;
+import com.lantone.qc.pub.util.StringUtil;
 import org.springframework.stereotype.Component;
 
+import java.util.List;
+
 /**
- * @Description:
+ * @Description: 手术史未填写
  * @author: rengb
  * @time: 2020/3/10 14:02
  */
@@ -15,6 +20,13 @@ public class BEH0025 extends QCCatalogue {
 
     @Override
     public void start(InputInfo inputInfo, OutputInfo outputInfo) {
-
+        List<Operation> operations = inputInfo.getBeHospitalizedDoc().getPastLabel().getOperations();
+        if (ListUtil.isNotEmpty(operations)) {
+            if (operations.stream().map(i -> i.getName()).filter(i -> StringUtil.isNotBlank(i)).count() > 0) {
+                status = "0";
+            }
+        }
+        resultDetail.put("status", status);
     }
-}
+
+}

+ 15 - 3
kernel/src/main/java/com/lantone/qc/kernel/catalogue/behospitalized/BEH0026.java

@@ -3,10 +3,15 @@ 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.entity.AllergyFood;
+import com.lantone.qc.pub.util.ListUtil;
+import com.lantone.qc.pub.util.StringUtil;
 import org.springframework.stereotype.Component;
 
+import java.util.List;
+
 /**
- * @Description:
+ * @Description: 食物过敏史未填写
  * @author: rengb
  * @time: 2020/3/10 14:02
  */
@@ -15,6 +20,13 @@ public class BEH0026 extends QCCatalogue {
 
     @Override
     public void start(InputInfo inputInfo, OutputInfo outputInfo) {
-        
+        List<AllergyFood> allergyFoods = inputInfo.getBeHospitalizedDoc().getPastLabel().getAllergyFoods();
+        if (ListUtil.isNotEmpty(allergyFoods)) {
+            if (allergyFoods.stream().map(i -> i.getName()).filter(i -> StringUtil.isNotBlank(i)).count() > 0) {
+                status = "0";
+            }
+        }
+        resultDetail.put("status", status);
     }
-}
+
+}

+ 15 - 3
kernel/src/main/java/com/lantone/qc/kernel/catalogue/behospitalized/BEH0027.java

@@ -3,10 +3,15 @@ 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.entity.AllergyMedicine;
+import com.lantone.qc.pub.util.ListUtil;
+import com.lantone.qc.pub.util.StringUtil;
 import org.springframework.stereotype.Component;
 
+import java.util.List;
+
 /**
- * @Description:
+ * @Description: 药物过敏史未填写
  * @author: rengb
  * @time: 2020/3/10 14:02
  */
@@ -15,6 +20,13 @@ public class BEH0027 extends QCCatalogue {
 
     @Override
     public void start(InputInfo inputInfo, OutputInfo outputInfo) {
-        
+        List<AllergyMedicine> allergyMedicines = inputInfo.getBeHospitalizedDoc().getPastLabel().getAllergyMedicines();
+        if (ListUtil.isNotEmpty(allergyMedicines)) {
+            if (allergyMedicines.stream().map(i -> i.getName()).filter(i -> StringUtil.isNotBlank(i)).count() > 0) {
+                status = "0";
+            }
+        }
+        resultDetail.put("status", status);
     }
-}
+
+}

+ 15 - 3
kernel/src/main/java/com/lantone/qc/kernel/catalogue/behospitalized/BEH0028.java

@@ -3,10 +3,15 @@ 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.entity.BloodTransfusion;
+import com.lantone.qc.pub.util.ListUtil;
+import com.lantone.qc.pub.util.StringUtil;
 import org.springframework.stereotype.Component;
 
+import java.util.List;
+
 /**
- * @Description:
+ * @Description: 输血史未填写
  * @author: rengb
  * @time: 2020/3/10 14:02
  */
@@ -15,6 +20,13 @@ public class BEH0028 extends QCCatalogue {
 
     @Override
     public void start(InputInfo inputInfo, OutputInfo outputInfo) {
-        
+        List<BloodTransfusion> bloodTransfusions = inputInfo.getBeHospitalizedDoc().getPastLabel().getBloodTransfusions();
+        if (ListUtil.isNotEmpty(bloodTransfusions)) {
+            if (bloodTransfusions.stream().map(i -> i.getName()).filter(i -> StringUtil.isNotBlank(i)).count() > 0) {
+                status = "0";
+            }
+        }
+        resultDetail.put("status", status);
     }
-}
+
+}

+ 15 - 3
kernel/src/main/java/com/lantone/qc/kernel/catalogue/behospitalized/BEH0029.java

@@ -3,10 +3,15 @@ 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.entity.Vaccinate;
+import com.lantone.qc.pub.util.ListUtil;
+import com.lantone.qc.pub.util.StringUtil;
 import org.springframework.stereotype.Component;
 
+import java.util.List;
+
 /**
- * @Description:
+ * @Description: 预防接种史未填写
  * @author: rengb
  * @time: 2020/3/10 14:02
  */
@@ -15,6 +20,13 @@ public class BEH0029 extends QCCatalogue {
 
     @Override
     public void start(InputInfo inputInfo, OutputInfo outputInfo) {
-        
+        List<Vaccinate> vaccinates = inputInfo.getBeHospitalizedDoc().getPastLabel().getVaccinates();
+        if (ListUtil.isNotEmpty(vaccinates)) {
+            if (vaccinates.stream().map(i -> i.getName()).filter(i -> StringUtil.isNotBlank(i)).count() > 0) {
+                status = "0";
+            }
+        }
+        resultDetail.put("status", status);
     }
-}
+
+}

+ 15 - 3
kernel/src/main/java/com/lantone/qc/kernel/catalogue/behospitalized/BEH0030.java

@@ -3,10 +3,15 @@ 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.entity.DiagInfectious;
+import com.lantone.qc.pub.util.ListUtil;
+import com.lantone.qc.pub.util.StringUtil;
 import org.springframework.stereotype.Component;
 
+import java.util.List;
+
 /**
- * @Description:
+ * @Description: 传染病史未填写
  * @author: rengb
  * @time: 2020/3/10 14:02
  */
@@ -15,6 +20,13 @@ public class BEH0030 extends QCCatalogue {
 
     @Override
     public void start(InputInfo inputInfo, OutputInfo outputInfo) {
-        
+        List<DiagInfectious> diagInfectiouses = inputInfo.getBeHospitalizedDoc().getPastLabel().getDiagInfectiouses();
+        if (ListUtil.isNotEmpty(diagInfectiouses)) {
+            if (diagInfectiouses.stream().map(i -> i.getName()).filter(i -> StringUtil.isNotBlank(i)).count() > 0) {
+                status = "0";
+            }
+        }
+        resultDetail.put("status", status);
     }
-}
+
+}

+ 5 - 0
public/src/main/java/com/lantone/qc/pub/model/InputInfo.java

@@ -16,6 +16,11 @@ import java.util.Map;
 @Getter
 @Setter
 public class InputInfo {
+
+    /**
+     * 将要执行的规则,PRECOND--规则执行前置条件
+     * {"BEH0001":{"PRECOND":"BEH0002,BEH0003,BEH0004"}}
+     */
     private Map<String, Map<String, String>> inputCatalogueMap = new HashMap<>();
     //入院病历
     private BeHospitalizedDoc beHospitalizedDoc;

+ 2 - 2
public/src/main/java/com/lantone/qc/pub/model/label/PastLabel.java

@@ -19,8 +19,8 @@ public class PastLabel extends GeneralLabel{
     private List<Wound> wounds;//外伤史
     private List<DiagInfectious> diagInfectiouses;//传染病史
     private List<Allergy> allergies;//过敏史
-    private List<AllergyFood> allergyFoods;
-    private List<AllergyMedicine> allergyMedicines;
+    private List<AllergyFood> allergyFoods;//食物过敏史
+    private List<AllergyMedicine> allergyMedicines;//药物过敏史
     private List<AllergyDesc> allergyDescs;
     private List<BloodTransfusion> bloodTransfusions;//输血史
     private List<Operation> operations;//手术史