Explorar o código

其他值提醒化验优化

zhoutg %!s(int64=4) %!d(string=hai) anos
pai
achega
aee902f69b

+ 2 - 1
src/main/java/com/diagbot/enums/TypeEnum.java

@@ -20,7 +20,8 @@ public enum TypeEnum implements KeyedNamed {
     vital(7, "查体"),
     transfusion(8, "输血"),
     age(9,"年龄"),
-    group(10, "人群");
+    group(10, "人群"),
+    lisSelf(1, "化验本身");
 
     @Setter
     private int key;

+ 34 - 23
src/main/java/com/diagbot/rule/LisRule.java

@@ -141,32 +141,43 @@ public class LisRule {
         // 条件全部符合
         if (i == ruleBaseDTOList.size()) {
             if (StringUtil.isNotBlank(lisOtherDTO.getName())) {
-                // 诊断
-                if (ListUtil.isNotEmpty(lisOtherDTO.getDiseaseMsg())) {
-                    for (String str : lisOtherDTO.getDiseaseMsg()) {
-                        BillMsg billMsg = MsgUtil.getCommonOtherMsg(TypeEnum.lis.getName(), lisOtherDTO.getName(), str, TypeEnum.disease.getName(), lisBean);
-                        otherList.add(billMsg);
+                // 就化验本身一个条件符合
+                if (ListUtil.isEmpty(lisOtherDTO.getDiseaseMsg())
+                        && ListUtil.isEmpty(lisOtherDTO.getGroupMsg())
+                        && ListUtil.isEmpty(lisOtherDTO.getLisMsg())
+                        && ListUtil.isEmpty(lisOtherDTO.getDrugMsg())
+                ) {
+                    BillMsg billMsg = MsgUtil.getCommonOtherMsg(TypeEnum.lis.getName(),
+                            lisOtherDTO.getName(), "", TypeEnum.lisSelf.getName(), lisBean);
+                    otherList.add(billMsg);
+                } else { // 有其他条件符合
+                    // 诊断
+                    if (ListUtil.isNotEmpty(lisOtherDTO.getDiseaseMsg())) {
+                        for (String str : lisOtherDTO.getDiseaseMsg()) {
+                            BillMsg billMsg = MsgUtil.getCommonOtherMsg(TypeEnum.lis.getName(), lisOtherDTO.getName(), str, TypeEnum.disease.getName(), lisBean);
+                            otherList.add(billMsg);
+                        }
                     }
-                }
-                // 药品
-                if (ListUtil.isNotEmpty(lisOtherDTO.getDrugMsg())) {
-                    for (String str : lisOtherDTO.getDrugMsg()) {
-                        BillMsg billMsg = MsgUtil.getCommonOtherMsg(TypeEnum.lis.getName(), lisOtherDTO.getName(), str, TypeEnum.drug.getName(), lisBean);
-                        otherList.add(billMsg);
+                    // 药品
+                    if (ListUtil.isNotEmpty(lisOtherDTO.getDrugMsg())) {
+                        for (String str : lisOtherDTO.getDrugMsg()) {
+                            BillMsg billMsg = MsgUtil.getCommonOtherMsg(TypeEnum.lis.getName(), lisOtherDTO.getName(), str, TypeEnum.drug.getName(), lisBean);
+                            otherList.add(billMsg);
+                        }
                     }
-                }
-                // 人群
-                if (ListUtil.isNotEmpty(lisOtherDTO.getGroupMsg())) {
-                    for (String str : lisOtherDTO.getGroupMsg()) {
-                        BillMsg billMsg = MsgUtil.getCommonOtherMsg(TypeEnum.lis.getName(), lisOtherDTO.getName(), str, TypeEnum.group.getName(), lisBean);
-                        otherList.add(billMsg);
+                    // 人群
+                    if (ListUtil.isNotEmpty(lisOtherDTO.getGroupMsg())) {
+                        for (String str : lisOtherDTO.getGroupMsg()) {
+                            BillMsg billMsg = MsgUtil.getCommonOtherMsg(TypeEnum.lis.getName(), lisOtherDTO.getName(), str, TypeEnum.group.getName(), lisBean);
+                            otherList.add(billMsg);
+                        }
                     }
-                }
-                // 化验
-                if (ListUtil.isNotEmpty(lisOtherDTO.getLisMsg())) {
-                    for (String str : lisOtherDTO.getLisMsg()) {
-                        BillMsg billMsg = MsgUtil.getCommonOtherMsg(TypeEnum.lis.getName(), lisOtherDTO.getName(), str, TypeEnum.lis.getName(), lisBean);
-                        otherList.add(billMsg);
+                    // 化验
+                    if (ListUtil.isNotEmpty(lisOtherDTO.getLisMsg())) {
+                        for (String str : lisOtherDTO.getLisMsg()) {
+                            BillMsg billMsg = MsgUtil.getCommonOtherMsg(TypeEnum.lis.getName(), lisOtherDTO.getName(), str, TypeEnum.lis.getName(), lisBean);
+                            otherList.add(billMsg);
+                        }
                     }
                 }
             }

+ 3 - 0
src/main/java/com/diagbot/util/MsgUtil.java

@@ -86,6 +86,9 @@ public class MsgUtil {
                     case lis: // 化验
                         msg = String.format("该患者%s,%s,请留意", content, name);
                         break;
+                    case lisSelf: // 就化验本身一个条件
+                        msg = String.format("该患者%s,请留意", content);
+                        break;
                 }
                 billMsg.setType(type);
                 billMsg.setOrderName(lis.getName());