Parcourir la source

医学规则测试-提示语

zhaops il y a 4 ans
Parent
commit
271ee05f24

+ 32 - 41
cdssman-service/src/main/java/com/diagbot/facade/RuleConvertFacade.java

@@ -119,6 +119,7 @@ public class RuleConvertFacade {
             resultBill.setBillItemName(billItem.getConceptName());
             resultBill.setConflictItemType(billItem.getConditionLabel());
             resultBill.setConflictItemName(billItem.getConditionName());
+            resultBill.setMessage("");
             if (billItem.getConditionMaxValue() != null) {
                 resultBill.setMaxValue(BigDecimal.valueOf(billItem.getConditionMaxValue()));
             }
@@ -160,7 +161,7 @@ public class RuleConvertFacade {
                     }
                 } else {
                     resultBill.setSuccess(0);
-                    resultBill.setMessage("药品注册名称找不到对应药品通用名称;");
+                    resultBill.setMessage(resultBill.getBillItemName()+"药品注册名称找不到对应药品通用名称;");
                     retMedNameList.add(resultBill);
                 }
             } else {
@@ -212,10 +213,7 @@ public class RuleConvertFacade {
 
             if (ListUtil.isEmpty(billMappingList)) {
                 resultBill.setSuccess(0);
-                resultBill.setMessage(StringUtil.isNotBlank(resultBill.getMessage())
-                        ? resultBill.getMessage()
-                        : ""
-                        + "开单项缺少医院端映射;");
+                resultBill.setMessage(resultBill.getMessage() + resultBill.getBillItemName() + "缺少医院端映射;");
                 retBillList.add(resultBill);
             } else {
                 billMappingList.forEach(billMappingItem -> {
@@ -287,10 +285,7 @@ public class RuleConvertFacade {
                         || resultBill.getConflictItemType().equals(GraphLabelEnum.BillConflictItem.getName())
                         || resultBill.getConflictItemType().equals(GraphLabelEnum.Disease.getName())) {
                     resultBill.setSuccess(0);
-                    resultBill.setMessage(StringUtil.isNotBlank(resultBill.getMessage())
-                            ? resultBill.getMessage()
-                            : "" +
-                            "禁忌项缺少医院端映射;");
+                    resultBill.setMessage(resultBill.getMessage() + resultBill.getConflictItemName() + "缺少医院端映射;");
                 }
                 retConflictList.add(resultBill);
             } else {
@@ -339,6 +334,7 @@ public class RuleConvertFacade {
             resultBill.setBillItemName(item.getTransfusion_type());
             resultBill.setConflictItemType(item.getNode_label());
             resultBill.setConflictItemName(item.getIndex_name());
+            resultBill.setMessage("");
             if (item.getMaxval() != null) {
                 resultBill.setMaxValue(BigDecimal.valueOf(item.getMaxval()));
             }
@@ -362,7 +358,7 @@ public class RuleConvertFacade {
                 });
             } else {
                 resultBill.setSuccess(0);
-                resultBill.setMessage("开单项缺少医院端映射;");
+                resultBill.setMessage(resultBill.getMessage() + resultBill.getBillItemName() + "缺少医院端映射;");
                 retBillList.add(resultBill);
             }
         }
@@ -411,7 +407,7 @@ public class RuleConvertFacade {
                 });
             } else {
                 resultBill.setSuccess(0);
-                resultBill.setMessage("禁忌项缺少医院端映射;");
+                resultBill.setMessage(resultBill.getMessage() + resultBill.getConflictItemName() + "缺少医院端映射;");
                 retConflictList.add(resultBill);
             }
         }
@@ -445,6 +441,7 @@ public class RuleConvertFacade {
             ResultCritical result = new ResultCritical();
             result.setCriticalType(1);
             result.setCriticalItemType(GraphLabelEnum.LisCritical.getName());
+            result.setMessage("");
 
             if (StringUtil.isNotBlank(item.getMaxval())) {
                 result.setMaxValue(BigDecimal.valueOf(Double.valueOf(item.getMaxval())));
@@ -500,7 +497,7 @@ public class RuleConvertFacade {
                 });
             } else {
                 result.setSuccess(0);
-                result.setMessage("开单项缺少医院端映射;");
+                result.setMessage(result.getMessage() + result.getCriticalItemName() + "缺少医院端映射;");
                 ResultCritical resultExt = new ResultCritical();
                 BeanUtil.copyProperties(result, resultExt);
                 resultMappingList.add(resultExt);
@@ -539,6 +536,7 @@ public class RuleConvertFacade {
             result.setCriticalItemName(item.getPacsname());
             result.setReferenceValue(item.getName());
             result.setInputValue(item.getVal());
+            result.setMessage("");
             resultList.add(result);
         }
 
@@ -554,7 +552,7 @@ public class RuleConvertFacade {
                 });
             } else {
                 result.setSuccess(0);
-                result.setMessage("开单项缺少医院端映射;");
+                result.setMessage(result.getMessage() + result.getCriticalItemName() + "缺少医院端映射;");
                 ResultCritical resultExt = new ResultCritical();
                 BeanUtil.copyProperties(result, resultExt);
                 resultMappingList.add(result);
@@ -597,7 +595,7 @@ public class RuleConvertFacade {
                     ResultHighriskDrug result = new ResultHighriskDrug();
                     result.setHighriskItemRegName(item.getName());
                     result.setHighriskItemName(drug.getMedName());
-                    //result.setHighriskItemForm(drug.getForm());
+                    result.setMessage("");
                     result.setHighriskLevel(item.getRisklevel());
                     retMedList.add(result);
                 });
@@ -606,7 +604,7 @@ public class RuleConvertFacade {
                 result.setHighriskItemRegName(item.getName());
                 result.setHighriskLevel(item.getRisklevel());
                 result.setSuccess(0);
-                result.setMessage("药品注册名称找不到对应药品通用名称;");
+                result.setMessage(result.getHighriskItemRegName() + "药品注册名称找不到对应药品通用名称;");
                 retMedList.add(result);
             }
         }
@@ -632,7 +630,7 @@ public class RuleConvertFacade {
                 });
             } else {
                 result.setSuccess(0);
-                result.setMessage("高危药品缺少医院端映射;");
+                result.setMessage(result.getMessage() + result.getHighriskItemName() + "缺少医院端映射;");
                 ResultHighriskDrug resultExt = new ResultHighriskDrug();
                 BeanUtil.copyProperties(result, resultExt);
                 retMappingList.add(resultExt);
@@ -673,12 +671,6 @@ public class RuleConvertFacade {
         }
 
         List<String> conds = items.stream().map(i -> i.getHighriskcond()).filter(i -> StringUtil.isNotBlank(i)).distinct().collect(Collectors.toList());
-        /*Map<Integer, Map<String, Object>> condMap = new LinkedHashMap<>();
-        if (ListUtil.isNotEmpty(conds)) {
-            for (String cond : conds) {
-                condMap.putAll(getHighriskCondMap(cond));
-            }
-        }*/
 
         //过滤非高危手术
         items = items
@@ -722,6 +714,7 @@ public class RuleConvertFacade {
                         ResultHighriskOperation result = new ResultHighriskOperation();
                         result.setHighriskItemName(item.getName());
                         result.setLevel(item.getOpgrade());
+                        result.setMessage("");
                         //带条件高危手术
                         if (item.getOpgrade().equals("2")) {
                             result.setFactorItemCond(item.getHighriskcond());
@@ -948,9 +941,10 @@ public class RuleConvertFacade {
                 });
             } else {
                 result.setSuccess(0);
-                result.setMessage((StringUtil.isNotBlank(result.getMessage()) ? result.getMessage() : "") +
-                        "高危手术缺少医院端映射;");
-                retMappingList.add(result);
+                result.setMessage(result.getMessage() + result.getHighriskItemName() + "缺少医院端映射;");
+                ResultHighriskOperation resultExt = new ResultHighriskOperation();
+                BeanUtil.copyProperties(result, resultExt);
+                retMappingList.add(resultExt);
             }
         }
 
@@ -971,8 +965,7 @@ public class RuleConvertFacade {
                     });
                 } else {
                     result.setSuccess(0);
-                    result.setMessage((StringUtil.isNotBlank(result.getMessage()) ? result.getMessage() : "") +
-                            "高危手术条件缺少医院端映射;");
+                    result.setMessage(result.getMessage() + result.getFactorItemName() + "缺少医院端映射;");
                     ResultHighriskOperation resultExt = new ResultHighriskOperation();
                     BeanUtil.copyProperties(result, resultExt);
                     retFactorMappingList.add(resultExt);
@@ -995,8 +988,7 @@ public class RuleConvertFacade {
                     });
                 } else {
                     result.setSuccess(0);
-                    result.setMessage((StringUtil.isNotBlank(result.getMessage()) ? result.getMessage() : "") +
-                            "高危手术条件缺少医院端映射;");
+                    result.setMessage(result.getMessage() + result.getFactorItemName() + "缺少医院端映射;");
                     ResultHighriskOperation resultExt = new ResultHighriskOperation();
                     BeanUtil.copyProperties(result, resultExt);
                     retFactorMappingList.add(resultExt);
@@ -1044,6 +1036,7 @@ public class RuleConvertFacade {
                 result.setMinValue((BigDecimal.valueOf(item.getMinval())));
             }
             result.setUnit(item.getUnit());
+            result.setMessage("");
 
             //相关诊断
             Set<LisRemindYiBaoDiseaseName> lisRemindYiBaoDiseaseNameSet = item.getLisReminddisease();
@@ -1063,14 +1056,14 @@ public class RuleConvertFacade {
                                 });
                             } else {
                                 result.setSuccess(0);
-                                result.setMessage("禁忌项缺少医院端映射;");
+                                result.setMessage(result.getMessage() + result.getRemindItemName() + "缺少医院端映射;");
                                 ResultOtherLis resultExt = new ResultOtherLis();
                                 BeanUtil.copyProperties(result, resultExt);
                                 retOtherList.add(resultExt);
                             }
                         } else {
                             result.setSuccess(0);
-                            result.setMessage("禁忌项缺少医院端映射;");
+                            result.setMessage(result.getMessage() + result.getRemindItemName() + "缺少医院端映射;");
                             ResultOtherLis resultExt = new ResultOtherLis();
                             BeanUtil.copyProperties(result, resultExt);
                             retOtherList.add(resultExt);
@@ -1111,14 +1104,14 @@ public class RuleConvertFacade {
                                 });
                             } else {
                                 result.setSuccess(0);
-                                result.setMessage("禁忌项缺少医院端映射;");
+                                result.setMessage(result.getMessage() + result.getRemindItemName() + "缺少医院端映射;");
                                 ResultOtherLis resultExt = new ResultOtherLis();
                                 BeanUtil.copyProperties(result, resultExt);
                                 retOtherList.add(resultExt);
                             }
                         } else {
                             result.setSuccess(0);
-                            result.setMessage("禁忌项缺少医院端映射;");
+                            result.setMessage(result.getMessage() + result.getRemindItemName() + "缺少医院端映射;");
                             ResultOtherLis resultExt = new ResultOtherLis();
                             BeanUtil.copyProperties(result, resultExt);
                             retOtherList.add(resultExt);
@@ -1129,7 +1122,6 @@ public class RuleConvertFacade {
         }
 
         for (ResultOtherLis result : retOtherList) {
-
             Map<String, Map<String, List<Long>>> subMap = lisConfigMap.get(result.getOtherItemName());
             if (subMap != null && subMap.size() > 0) {
                 subMap.entrySet().forEach(subEntry -> {
@@ -1149,8 +1141,7 @@ public class RuleConvertFacade {
                 });
             } else {
                 result.setSuccess(0);
-                result.setMessage((StringUtil.isNotBlank(result.getMessage()) ? result.getMessage() : "") +
-                        "实验室检查名称缺少医院端映射;");
+                result.setMessage(result.getMessage() + result.getOtherItemName() + "缺少医院端映射;");
                 retMappingList.add(result);
             }
         }
@@ -1222,7 +1213,7 @@ public class RuleConvertFacade {
                 }
                 if (!contains) {
                     result.setSuccess(0);
-                    result.setMessage(result.getMessage() + "诊断缺少医院端映射;");
+                    result.setMessage(result.getMessage() + item.getDisease() + "缺少医院端映射;");
                     retOtherList.add(result);
                 }
             } else {
@@ -1317,7 +1308,7 @@ public class RuleConvertFacade {
                                 retOtherList.add(resultExt);
                             });
                         } else {
-                            result.setMessage(result.getMessage() + "禁忌项缺少医院端映射;");
+                            result.setMessage(result.getMessage() + result.getConflictItemName() + "缺少医院端映射;");
                             result.setSuccess(0);
                             ResultOtherTransfusion resultExt = new ResultOtherTransfusion();
                             BeanUtil.copyProperties(result, resultExt);
@@ -1350,7 +1341,7 @@ public class RuleConvertFacade {
                                 retOtherList.add(resultExt);
                             });
                         } else {
-                            result.setMessage(result.getMessage() + "禁忌项缺少医院端映射;");
+                            result.setMessage(result.getMessage() + result.getConflictItemName() + "缺少医院端映射;");
                             result.setSuccess(0);
                             ResultOtherTransfusion resultExt = new ResultOtherTransfusion();
                             BeanUtil.copyProperties(result, resultExt);
@@ -1386,7 +1377,7 @@ public class RuleConvertFacade {
                     }
                 });
             } else {
-                result.setMessage(result.getMessage() + "实验室检查缺少医院端映射;");
+                result.setMessage(result.getMessage() + result.getOtherItemName() + "缺少医院端映射;");
                 result.setSuccess(0);
                 retMappingList.add(result);
             }
@@ -1403,7 +1394,7 @@ public class RuleConvertFacade {
                 });
             } else {
                 result.setSuccess(0);
-                result.setMessage(result.getMessage() + "输注类型缺少医院端映射;");
+                result.setMessage(result.getMessage() + result.getTransfusionType() + "缺少医院端映射;");
                 retTransMappingList.add(result);
             }
         }