Quellcode durchsuchen

内涵质控修改逻辑和bug

hujing vor 5 Jahren
Ursprung
Commit
0067bbb7bf

+ 16 - 1
kernel/src/main/java/com/lantone/qc/kernel/catalogue/behospitalized/BEH02909.java

@@ -54,7 +54,7 @@ public class BEH02909 extends QCCatalogue {
                 for (Medicine medicine : medicines) {
                     /* 现病史中一般情况之后的药品名称,并且不包含不详 */
                     if (presentText.indexOf(medicine.getName()) > lastGeneralIndex && !medicine.getName().contains("不详")) {
-                        drugFromPresent.add(medicine.getName());
+                        drugFromPresent.add(medicine.getName().replaceAll("[“”药物]",""));
                     }
                 }
             }
@@ -62,18 +62,33 @@ public class BEH02909 extends QCCatalogue {
         if (drugFromPresent.size() == 0) {
             status.set("0");
         } else {
+            String infoStr = "";
             int matchSum = 0;
             for (String drug : drugFromPresent) {
                 if (drugsCurrentlyInUse.contains(drug)) {
                     matchSum++;
+                } else {
+                    infoStr = concatInfo(infoStr,drug);
                 }
             }
+            info.set(infoStr);
             if (matchSum == drugFromPresent.size()) {
                 status.set("0");
             }
         }
     }
 
+    private String concatInfo(String infoStr, String drug) {
+        if (StringUtil.isBlank(infoStr)) {
+            infoStr += drug;
+        } else {
+            if (!infoStr.contains(drug)) {
+                infoStr += "," + drug;
+            }
+        }
+        return infoStr;
+    }
+
     private List<String> getDrug(String drugsCurrentlyInUse) {
         List<String> drugs = new ArrayList<>();
         String medicine = "药物名称", usage = "用法", continueUse = "本次住院是否继续使用";

+ 3 - 2
kernel/src/main/java/com/lantone/qc/kernel/catalogue/behospitalized/BEH02969.java

@@ -29,10 +29,11 @@ public class BEH02969 extends QCCatalogue {
             return;
         }
         treatPlan = StringUtil.isBlank(treatPlan) ? "" : treatPlan;
-        treatmentMonitoringPlan = StringUtil.isBlank(treatmentMonitoringPlan) ? "" : treatPlan;
+        treatmentMonitoringPlan = StringUtil.isBlank(treatmentMonitoringPlan) ? "" : treatmentMonitoringPlan;
         String text = treatPlan + "," + treatmentMonitoringPlan;
-        if (text.contains("生命体征") && (!text.contains("血压") || !text.contains("心率"))) {
+        if (text.contains("生命体征") && !text.contains("血压") && !text.contains("心率")) {
             status.set("-1");
+            info.set("需测血压、心率");
         }
     }
 }

+ 3 - 2
kernel/src/main/java/com/lantone/qc/kernel/catalogue/firstcourserecord/FIRC02970.java

@@ -30,10 +30,11 @@ public class FIRC02970 extends QCCatalogue {
             return;
         }
         treatPlan = StringUtil.isBlank(treatPlan) ? "" : treatPlan;
-        treatmentMonitoringPlan = StringUtil.isBlank(treatmentMonitoringPlan) ? "" : treatPlan;
+        treatmentMonitoringPlan = StringUtil.isBlank(treatmentMonitoringPlan) ? "" : treatmentMonitoringPlan;
         String text = treatPlan + "," + treatmentMonitoringPlan;
-        if (text.contains("生命体征") && (!text.contains("血压") || !text.contains("心率"))) {
+        if (text.contains("生命体征") && !text.contains("血压") && !text.contains("心率")) {
             status.set("-1");
+            info.set("需测血压、心率");
         }
     }
 }