Jelajahi Sumber

Merge remote-tracking branch 'origin/dev'

hujing 5 tahun lalu
induk
melakukan
f23cfb8d93

+ 2 - 1
kernel/src/main/java/com/lantone/qc/kernel/catalogue/behospitalized/BEH0009.java

@@ -34,7 +34,8 @@ public class BEH0009 extends QCCatalogue {
             return;
         }
         String chiefText = chiefLabel.getText();
-        if (StringUtil.isNotBlank(chiefText) && (chiefText.contains("检查") || chiefText.contains("术后") || chiefText.contains("药物") || chiefText.contains("发现"))) {
+        if (StringUtil.isNotBlank(chiefText) &&
+                (chiefText.contains("检查") || chiefText.contains("术后") || chiefText.contains("药物") || chiefText.contains("发现") || chiefText.contains("误服"))) {
             status.set("0");
         } else {
             List<Diag> diags = chiefLabel.getDiags();

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

@@ -55,7 +55,7 @@ public class BEH0014 extends QCCatalogue {
             }
             if (present.contains("体检") || present.contains("发现") || present.contains("检查") || present.contains("因")
                     || present.contains("确诊") || present.contains("诊断") || present.contains("复查") || present.contains("术后")
-                    || present.contains("药物")) {
+                    || present.contains("药物") || present.contains("误服")) {
                 status.set("0");
                 return;
             }

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

@@ -43,7 +43,7 @@ public class BEH0072 extends QCCatalogue {
             for (Family family : families) {
                 if (family.getDead() != null) {
                     Dead dead = family.getDead();
-                    if (family.getName().contains("年迈")) {
+                    if (family.getName().contains("年迈") || dead.getNegative() != null) {
                         continue;
                     }
                     if (dead.getDeadReason() != null || dead.getUnknow() != null) {

+ 13 - 1
kernel/src/main/java/com/lantone/qc/kernel/catalogue/behospitalized/BEH0414.java

@@ -26,6 +26,17 @@ public class BEH0414 extends QCCatalogue {
             Map<String, String> firstpageStructureMap = inputInfo.getFirstPageRecordDoc().getStructureMap();
             Map<String, String> beHospitalStructureMap = inputInfo.getBeHospitalizedDoc().getStructureMap();
             String firstAdmissionAge = firstpageStructureMap.get(Content.age);
+            /* 根据病案首页新生儿出生月数和新生儿出生天数拼接年龄 */
+            String newbornAgeMonths = firstpageStructureMap.get(Content.newbornAgeMonths);
+            String newbornAgeDays = firstpageStructureMap.get(Content.newbornAgeDays);
+            String newbornAgeStr = "";
+            int newbornAge = 0;
+            if (StringUtil.isNotBlank(newbornAgeMonths) && StringUtil.isNotBlank(newbornAgeDays)){
+                newbornAgeStr = newbornAgeMonths + newbornAgeDays;
+            }
+            if (StringUtil.isNotBlank(newbornAgeStr)){
+                newbornAge = removalUnit(newbornAgeStr);
+            }
             String admissionAge = beHospitalStructureMap.get(Content.age);
             if (StringUtil.isBlank(firstAdmissionAge) || StringUtil.isBlank(admissionAge)) {
                 status.set("0");
@@ -33,7 +44,8 @@ public class BEH0414 extends QCCatalogue {
             }
             int firstAdmissionAgeNum = removalUnit(firstAdmissionAge);
             int admissionAgeNum = removalUnit(admissionAge);
-            if (firstAdmissionAgeNum != admissionAgeNum) {
+
+            if (firstAdmissionAgeNum != admissionAgeNum && newbornAge != admissionAgeNum) {
                 status.set("-1");
             }
         }

+ 13 - 1
kernel/src/main/java/com/lantone/qc/kernel/catalogue/firstpagerecord/FIRP0161.java

@@ -25,6 +25,17 @@ public class FIRP0161 extends QCCatalogue {
             Map<String, String> firstpageStructureMap = inputInfo.getFirstPageRecordDoc().getStructureMap();
             Map<String, String> beHospitalStructureMap = inputInfo.getBeHospitalizedDoc().getStructureMap();
             String firstAdmissionAge = firstpageStructureMap.get(Content.age);
+            /* 根据病案首页新生儿出生月数和新生儿出生天数拼接年龄 */
+            String newbornAgeMonths = firstpageStructureMap.get(Content.newbornAgeMonths);
+            String newbornAgeDays = firstpageStructureMap.get(Content.newbornAgeDays);
+            String newbornAgeStr = "";
+            int newbornAge = 0;
+            if (StringUtil.isNotBlank(newbornAgeMonths) && StringUtil.isNotBlank(newbornAgeDays)){
+                newbornAgeStr = newbornAgeMonths + newbornAgeDays;
+            }
+            if (StringUtil.isNotBlank(newbornAgeStr)){
+                newbornAge = removalUnit(newbornAgeStr);
+            }
             String admissionAge = beHospitalStructureMap.get(Content.age);
             if (StringUtil.isBlank(firstAdmissionAge) || StringUtil.isBlank(admissionAge)) {
                 status.set("0");
@@ -32,7 +43,8 @@ public class FIRP0161 extends QCCatalogue {
             }
             int firstAdmissionAgeNum = removalUnit(firstAdmissionAge);
             int admissionAgeNum = removalUnit(admissionAge);
-            if (firstAdmissionAgeNum != admissionAgeNum) {
+
+            if (firstAdmissionAgeNum != admissionAgeNum && newbornAge != admissionAgeNum) {
                 status.set("-1");
             }
         }

+ 4 - 0
kernel/src/main/java/com/lantone/qc/kernel/structure/ai/process/EntityProcessFamily.java

@@ -92,6 +92,10 @@ public class EntityProcessFamily extends EntityProcess {
                     Age age = new Age();
                     age.setName(lemma.getText());
                     dead.setAge(age);
+                } else if (lemma.getProperty().equals(EntityEnum.NEGATIVE.toString())) {
+                    Negative negative = new Negative();
+                    negative.setName(lemma.getText());
+                    dead.setNegative(negative);
                 }
             }
         }

+ 1 - 0
public/src/main/java/com/lantone/qc/pub/model/entity/Dead.java

@@ -12,6 +12,7 @@ public class Dead extends General {
     private String desc;
     private DeadReason deadReason;
     private Unknow unknow;
+    private Negative negative;
     private Age age;
     private PD pd;
 }