瀏覽代碼

开单合理性

zhoutg 4 年之前
父節點
當前提交
9c776caefb

+ 1 - 1
src/main/java/com/diagbot/process/OtherTipProcess.java

@@ -57,7 +57,7 @@ public class OtherTipProcess {
                     if (TypeEnum.disease.getName().equals(nodeNeoDTO.getTermtype())) { // 诊断
                         map = CoreUtil.compareNameWithNode(nodeNeoDTO, wordCrfDTO.getDiag());
                     } else if (TypeEnum.drug.getName().equals(nodeNeoDTO.getTermtype())) { // 药品
-                        map = CoreUtil.compareNameWithNode(nodeNeoDTO, wordCrfDTO.getDrug());
+                        map = CoreUtil.compareNameWithNode(nodeNeoDTO, wordCrfDTO.getDrugSource());
                     } else if (NeoEnum.group.getName().equals(nodeNeoDTO.getTermtype())) { // "禁忌人群"
                         map = groupRule.gravidityRule(wordCrfDTO);
                     }

+ 15 - 8
src/main/java/com/diagbot/rule/DrugRule.java

@@ -3,7 +3,9 @@ package com.diagbot.rule;
 import com.diagbot.dto.BillMsg;
 import com.diagbot.dto.BillNeoMaxDTO;
 import com.diagbot.dto.NodeNeoDTO;
+import com.diagbot.enums.NeoEnum;
 import com.diagbot.enums.RedisEnum;
+import com.diagbot.enums.TypeEnum;
 import com.diagbot.util.CoreUtil;
 import com.diagbot.util.ListUtil;
 import com.diagbot.util.MsgUtil;
@@ -60,16 +62,21 @@ public class DrugRule {
             }
             if (old_stand.size() > 0) {
                 for (Map.Entry<String, String> d : old_stand.entrySet()) {
-                    String message = "";
-                    if ("禁忌过敏药品".equals(type)) {
-                        message = d.getKey() + "过敏";
+                    if (NeoEnum.oralmeds.getName().equals(type) && TypeEnum.lis.getName().equals(billNeoMaxDTO.getType())) {
+                        // 化验开单项 + 服用药品的提示规则
+
                     } else {
-                        message = "可能正在用药" + d.getKey();
+                        String message = "";
+                        if ("禁忌过敏药品".equals(type)) {
+                            message = d.getKey() + "过敏";
+                        } else {
+                            message = "可能正在用药" + d.getKey();
+                        }
+                        BillMsg commonBillMsg = MsgUtil.getCommonBillMsg(
+                                billNeoMaxDTO.getOrderName(), billNeoMaxDTO.getOrderStandName(),
+                                message, type, billNeoMaxDTO.getType());
+                        billMsgList.add(commonBillMsg);
                     }
-                    BillMsg commonBillMsg = MsgUtil.getCommonBillMsg(
-                            billNeoMaxDTO.getOrderName(), billNeoMaxDTO.getOrderStandName(),
-                            message, type, billNeoMaxDTO.getType());
-                    billMsgList.add(commonBillMsg);
                 }
             }
         }

+ 22 - 1
src/main/java/com/diagbot/util/MsgUtil.java

@@ -93,6 +93,27 @@ public class MsgUtil {
         return billMsg;
     }
 
+    // /**
+    //  * 开单合理性通用提示信息
+    //  *
+    //  * @param orderName 原开单项
+    //  * @param orderStandName 标准开单项
+    //  * @param content 匹配内容
+    //  * @param type 类型
+    //  * @param type 开单项类型
+    //  * @return
+    //  */
+    // public static BillMsg getCommonBillMsg(String orderName, String orderStandName, String content, String type, String orderType) {
+    //     BillMsg billMsg = new BillMsg();
+    //     String msg = String.format("该患者可能正在用药%s,会影响%s结果,请留意", content, orderName);
+    //     billMsg.setMsg(msg);
+    //     billMsg.setOrderName(orderName);
+    //     billMsg.setOrderStandName(orderStandName);
+    //     billMsg.setContent(content);
+    //     billMsg.setType(type);
+    //     return billMsg;
+    // }
+
     /**
      * 开单合理性——互斥提示信息
      *
@@ -143,7 +164,7 @@ public class MsgUtil {
         if (TypeEnum.disease.getName().equals(type)) {
             msg = String.format("该患者%s,患有%s,请留意", content, name);
         } else if (TypeEnum.drug.getName().equals(type)) {
-            msg = String.format("该患者%s,已开%s,请留意", content, name);
+            msg = String.format("该患者%s,可能正在服用%s,请留意", content, name);
         } else if (NeoEnum.group.getName().equals(type)) {
             msg = String.format("该患者%s,%s,请留意", content, name);
         }