Browse Source

Merge remote-tracking branch 'origin/dev-1.2' into dev

hujing 5 years ago
parent
commit
68f69225db

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

@@ -32,6 +32,10 @@ public class BEH02909 extends QCCatalogue {
             status.set("0");
             status.set("0");
             return;
             return;
         }
         }
+        /*if (drugsCurrentlyInUse.contains("见现病史")) {
+            status.set("0");
+            return;
+        }*/
         /*List<String> drug = getDrug(drugsCurrentlyInUse);*/
         /*List<String> drug = getDrug(drugsCurrentlyInUse);*/
         PresentLabel presentLabel = inputInfo.getBeHospitalizedDoc().getPresentLabel();
         PresentLabel presentLabel = inputInfo.getBeHospitalizedDoc().getPresentLabel();
         if (presentLabel == null) {
         if (presentLabel == null) {
@@ -50,7 +54,7 @@ public class BEH02909 extends QCCatalogue {
                 for (Medicine medicine : medicines) {
                 for (Medicine medicine : medicines) {
                     /* 现病史中一般情况之后的药品名称,并且不包含不详 */
                     /* 现病史中一般情况之后的药品名称,并且不包含不详 */
                     if (presentText.indexOf(medicine.getName()) > lastGeneralIndex && !medicine.getName().contains("不详")) {
                     if (presentText.indexOf(medicine.getName()) > lastGeneralIndex && !medicine.getName().contains("不详")) {
-                        drugFromPresent.add(medicine.getName());
+                        drugFromPresent.add(medicine.getName().replaceAll("[“”药物]",""));
                     }
                     }
                 }
                 }
             }
             }
@@ -58,18 +62,33 @@ public class BEH02909 extends QCCatalogue {
         if (drugFromPresent.size() == 0) {
         if (drugFromPresent.size() == 0) {
             status.set("0");
             status.set("0");
         } else {
         } else {
+            String infoStr = "";
             int matchSum = 0;
             int matchSum = 0;
             for (String drug : drugFromPresent) {
             for (String drug : drugFromPresent) {
                 if (drugsCurrentlyInUse.contains(drug)) {
                 if (drugsCurrentlyInUse.contains(drug)) {
                     matchSum++;
                     matchSum++;
+                } else {
+                    infoStr = concatInfo(infoStr,drug);
                 }
                 }
             }
             }
+            info.set(infoStr);
             if (matchSum == drugFromPresent.size()) {
             if (matchSum == drugFromPresent.size()) {
                 status.set("0");
                 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) {
     private List<String> getDrug(String drugsCurrentlyInUse) {
         List<String> drugs = new ArrayList<>();
         List<String> drugs = new ArrayList<>();
         String medicine = "药物名称", usage = "用法", continueUse = "本次住院是否继续使用";
         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;
             return;
         }
         }
         treatPlan = StringUtil.isBlank(treatPlan) ? "" : treatPlan;
         treatPlan = StringUtil.isBlank(treatPlan) ? "" : treatPlan;
-        treatmentMonitoringPlan = StringUtil.isBlank(treatmentMonitoringPlan) ? "" : treatPlan;
+        treatmentMonitoringPlan = StringUtil.isBlank(treatmentMonitoringPlan) ? "" : treatmentMonitoringPlan;
         String text = treatPlan + "," + treatmentMonitoringPlan;
         String text = treatPlan + "," + treatmentMonitoringPlan;
-        if (text.contains("生命体征") && (!text.contains("血压") || !text.contains("心率"))) {
+        if (text.contains("生命体征") && !text.contains("血压") && !text.contains("心率")) {
             status.set("-1");
             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;
             return;
         }
         }
         treatPlan = StringUtil.isBlank(treatPlan) ? "" : treatPlan;
         treatPlan = StringUtil.isBlank(treatPlan) ? "" : treatPlan;
-        treatmentMonitoringPlan = StringUtil.isBlank(treatmentMonitoringPlan) ? "" : treatPlan;
+        treatmentMonitoringPlan = StringUtil.isBlank(treatmentMonitoringPlan) ? "" : treatmentMonitoringPlan;
         String text = treatPlan + "," + treatmentMonitoringPlan;
         String text = treatPlan + "," + treatmentMonitoringPlan;
-        if (text.contains("生命体征") && (!text.contains("血压") || !text.contains("心率"))) {
+        if (text.contains("生命体征") && !text.contains("血压") && !text.contains("心率")) {
             status.set("-1");
             status.set("-1");
+            info.set("需测血压、心率");
         }
         }
     }
     }
 }
 }