Browse Source

修改拼接提示语

zhoutg 3 years ago
parent
commit
b53c08db7c
1 changed files with 24 additions and 2 deletions
  1. 24 2
      src/main/java/com/diagbot/util/CoreUtil.java

+ 24 - 2
src/main/java/com/diagbot/util/CoreUtil.java

@@ -400,6 +400,26 @@ public class CoreUtil {
         return unitsJoint;
     }
 
+    /**
+     * 返回单位
+     *
+     * @param pd
+     * @return
+     */
+    public static String getJointUnits(PD pd) {
+        String unitsJoint = "";
+        if (pd == null || StringUtil.isBlank(pd.getUnit())) {
+            return unitsJoint;
+        }
+        boolean flag = RegexUtil.getRegexRes(pd.getUnit(), "^\\d");
+        if (flag) {
+            unitsJoint = "×" + pd.getUnit();
+        } else {
+            unitsJoint = pd.getUnit();
+        }
+        return unitsJoint;
+    }
+
     /**
      * 比较查体是否匹配
      *
@@ -432,12 +452,14 @@ public class CoreUtil {
             // 体征数值比较(例如:体温,血压)
             for (Vital vital : vitalList) {
                 List<Usual> usualList = vital.getUsualList();
+                String unitsJoint = "";
+                // String unitsJoint = getJointUnits(vital.getPd()); // 获取查体单位拼接,单位容易提取错乱,先注释
                 if (ruleBaseDTO.getBaseLibName().equals(vital.getStandName()) && vital.getPd() != null
                         && StringUtil.isNotBlank(vital.getPd().getValue())) {
                     if (CoreUtil.isNumbers(vital.getPd().getValue())) {
                         flag = compareNum(ruleBaseDTO, Double.parseDouble(vital.getPd().getValue()));
                         if (flag) {
-                            msgList.add(vital.getName() + subZeroAndDot(String.valueOf(vital.getPd().getValue())));
+                            msgList.add(vital.getName() + subZeroAndDot(String.valueOf(vital.getPd().getValue())) + unitsJoint);
                         }
                     }
                 } else if (ListUtil.isNotEmpty(usualList)) { // 血压比较
@@ -445,7 +467,7 @@ public class CoreUtil {
                         if (ruleBaseDTO.getBaseLibName().equals(usual.getStandName())) {
                             flag = compareNum(ruleBaseDTO, Double.parseDouble(usual.getValue()));
                             if (flag) {
-                                msgList.add(vital.getName() + subZeroAndDot(String.valueOf(vital.getPd().getValue())));
+                                msgList.add(vital.getName() + subZeroAndDot(String.valueOf(vital.getPd().getValue())) + unitsJoint);
                             }
                         }
                     }