瀏覽代碼

1.与诊断相关的主要体征未描述修改逻辑
2.入院记录体格检查与专科检查不一致添加提示信息

hujing 5 年之前
父節點
當前提交
dae953b4b9

+ 1 - 0
kernel/src/main/java/com/lantone/qc/kernel/catalogue/behospitalized/BEH03048.java

@@ -42,6 +42,7 @@ public class BEH03048 extends QCCatalogue {
                 v = vital + v;
                 if (vitalLabelSpecial.contains(vital) && !vitalLabelSpecial.contains(v)) {
                     status.set("-1");
+                    info.set(vital);
                     return;
                 }
             }

+ 32 - 41
kernel/src/main/java/com/lantone/qc/kernel/catalogue/behospitalized/BEH03051.java

@@ -13,8 +13,6 @@ import org.springframework.stereotype.Component;
 
 import java.util.List;
 import java.util.Map;
-import java.util.Objects;
-import java.util.stream.Collectors;
 
 /**
  * @ClassName : BEH03051
@@ -60,50 +58,43 @@ public class BEH03051 extends QCCatalogue {
         }
 
         List<Diag> initDiags = initialDiagLabel.getDiags();
-        List<String> initDiagStrs = initDiags
-                .stream()
-                .map(Diag::getHospitalDiagName)
-                .filter(Objects::nonNull)
-                .collect(Collectors.toList());
-
-        if (initDiagStrs.size() == 0) {
-            return;
-        }
-        for (String initDiagStr : initDiagStrs) {
-            if (diagVital.containsKey(initDiagStr)) {
-                String vitals = diagVital.get(initDiagStr);
-                String[] vitalArr = vitals.split("\\|");
-                String vitalAnd = vitalArr[0];//体征且的关系,每个必须有
-                for (String vitalInfo : vitalAnd.split("/")) {
-                    String[] vitalInfoArr = vitalInfo.split(":");
-                    String vital = "";
-                    if (!vitalSpecialText.contains(vitalInfoArr[0])) {
-                        status.set("-1");
-                        if (vitalInfoArr.length > 1) {
-                            vital = ":" + vitalInfoArr[1];
+        if (initDiags.size() > 0) {
+            String firstInitDiag = initDiags.get(0).getHospitalDiagName();
+            if (StringUtil.isNotBlank(firstInitDiag)) {
+                if (diagVital.containsKey(firstInitDiag)) {
+                    String vitals = diagVital.get(firstInitDiag);
+                    String[] vitalArr = vitals.split("\\|");
+                    String vitalAnd = vitalArr[0];//体征且的关系,每个必须有
+                    for (String vitalInfo : vitalAnd.split("/")) {
+                        String[] vitalInfoArr = vitalInfo.split(":");
+                        String vital = "";
+                        if (!vitalSpecialText.contains(vitalInfoArr[0])) {
+                            status.set("-1");
+                            if (vitalInfoArr.length > 1) {
+                                vital = ":" + vitalInfoArr[1];
+                            }
+                            info.set(firstInitDiag + vital);
+                            return;
                         }
-                        info.set(initDiagStr + vital);
-                        return;
                     }
-                }
-                if (vitalArr.length == 2) {
-                    String vitalOr = vitalArr[1];//体征或的关系,有一个就行
-                    int existNum = 0;
-                    String vital = "";
-                    for (String vitalInfo : vitalOr.split("/")) {
-                        String[] vitalInfoArr = vitalInfo.split(":");
-                        if (vitalSpecialText.contains(vitalInfoArr[0])) {
-                            existNum++;
+                    if (vitalArr.length == 2) {
+                        String vitalOr = vitalArr[1];//体征或的关系,有一个就行
+                        int existNum = 0;
+                        String vital = "";
+                        for (String vitalInfo : vitalOr.split("/")) {
+                            String[] vitalInfoArr = vitalInfo.split(":");
+                            if (vitalSpecialText.contains(vitalInfoArr[0])) {
+                                existNum++;
+                            }
+                            if (vitalInfoArr.length > 1) {
+                                vital = ":" + vitalInfoArr[1];
+                            }
                         }
-                        if (vitalInfoArr.length > 1) {
-                            vital = ":" + vitalInfoArr[1];
+                        if (existNum == 0) {
+                            status.set("-1");
+                            info.set(firstInitDiag + vital);
                         }
                     }
-                    if (existNum == 0) {
-                        status.set("-1");
-                        info.set(initDiagStr + vital);
-                        return;
-                    }
                 }
             }
         }