瀏覽代碼

医嘱有抗生素使用病程无记录修改

wangsy 4 年之前
父節點
當前提交
fd3c81f6a2
共有 1 個文件被更改,包括 6 次插入3 次删除
  1. 6 3
      kernel/src/main/java/com/lantone/qc/kernel/catalogue/threelevelward/THR02985.java

+ 6 - 3
kernel/src/main/java/com/lantone/qc/kernel/catalogue/threelevelward/THR02985.java

@@ -173,7 +173,7 @@ public class THR02985 extends QCCatalogue {
             if (drugs.contains(" ")) {
                 drugs = drugs.split(" ")[0];
             }
-            drugs = removeBracket(drugs).replaceAll("[^\u4e00-\u9fa5]", "");
+            drugs = removeBracket(drugs).replaceAll("[^\u4e00-\u9fa5]", "");
             Set<String> splitDrugs = CatalogueUtil.getRegexWords(drugs, "[((\\[][^\\[\\]()()]+[\\]))]")
                     .stream().filter(x -> !x.equals("合资") && !x.equals("进口") && !x.equals("国产")).collect(Collectors.toSet());
             /**********************************************先文本匹配************************************************/
@@ -296,13 +296,16 @@ public class THR02985 extends QCCatalogue {
         if ((doctorAdviceDate.before(wardDate) && !CatalogueUtil.compareTime(doctorAdviceDate, wardDate, days * 24 * 60L))
                 || (wardDate.before(doctorAdviceDate) && !CatalogueUtil.compareTime(wardDate, doctorAdviceDate, 24 * 60L))) {
             boolean findDrug = false;
+            String standardDrug = null;
             for (String drug : drugs) {
                 if (StringUtil.isBlank(drug)) {
                     continue;
                 }
-                if (content.contains(drug.replaceAll("[^\\u4e00-\\u9fa5]", ""))
+                drug = drug.replaceAll("[^\\u4e00-\\u9fa5]", "");
+                standardDrug = similarityUtil.getDrugStandardWord(drug);
+                if (content.contains(drug) || (StringUtil.isNotBlank(content) && content.contains(standardDrug))
                         || (existDrug.contains(drug) && (regexFind(content, "继续", "治疗") || regexFind(content, "维持", "治疗")
-                        || regexFind(content, "继续", "抗感染") || regexFind(content, "治疗", "同前")))) {
+                        || regexFind(content, "继续", "抗感染") || regexFind(content, "治疗", "同前") || regexFind(content, "治疗同前")))) {
                     findDrug = true;
                     existDrug.add(drug);
                     break;