Procházet zdrojové kódy

Merge remote-tracking branch 'origin/master'

wangyu před 5 roky
rodič
revize
db16400924
32 změnil soubory, kde provedl 249 přidání a 197 odebrání
  1. 1 1
      kernel/src/main/java/com/lantone/qc/kernel/catalogue/behospitalized/BEH0014.java
  2. 10 0
      kernel/src/main/java/com/lantone/qc/kernel/catalogue/behospitalized/BEH0070.java
  3. 11 8
      kernel/src/main/java/com/lantone/qc/kernel/catalogue/behospitalized/BEH0397.java
  4. 1 1
      kernel/src/main/java/com/lantone/qc/kernel/catalogue/behospitalized/BEH0441.java
  5. 1 2
      kernel/src/main/java/com/lantone/qc/kernel/catalogue/behospitalized/BEH0442.java
  6. 1 1
      kernel/src/main/java/com/lantone/qc/kernel/catalogue/consultation/CON0280.java
  7. 3 4
      kernel/src/main/java/com/lantone/qc/kernel/catalogue/firstcourserecord/FIRC0092.java
  8. 11 8
      kernel/src/main/java/com/lantone/qc/kernel/catalogue/firstpagerecord/FIRP0256.java
  9. 1 1
      kernel/src/main/java/com/lantone/qc/kernel/catalogue/threelevelward/THR0127.java
  10. 1 1
      kernel/src/main/java/com/lantone/qc/kernel/catalogue/threelevelward/THR0128.java
  11. 10 10
      kernel/src/main/java/com/lantone/qc/kernel/catalogue/threelevelward/THR0130.java
  12. 10 9
      kernel/src/main/java/com/lantone/qc/kernel/catalogue/threelevelward/THR0131.java
  13. 14 13
      kernel/src/main/java/com/lantone/qc/kernel/catalogue/threelevelward/THR0132.java
  14. 10 9
      kernel/src/main/java/com/lantone/qc/kernel/catalogue/threelevelward/THR0133.java
  15. 10 9
      kernel/src/main/java/com/lantone/qc/kernel/catalogue/threelevelward/THR0134.java
  16. 10 9
      kernel/src/main/java/com/lantone/qc/kernel/catalogue/threelevelward/THR0135.java
  17. 14 13
      kernel/src/main/java/com/lantone/qc/kernel/catalogue/threelevelward/THR0136.java
  18. 14 13
      kernel/src/main/java/com/lantone/qc/kernel/catalogue/threelevelward/THR0137.java
  19. 10 9
      kernel/src/main/java/com/lantone/qc/kernel/catalogue/threelevelward/THR0138.java
  20. 10 9
      kernel/src/main/java/com/lantone/qc/kernel/catalogue/threelevelward/THR0139.java
  21. 12 10
      kernel/src/main/java/com/lantone/qc/kernel/catalogue/threelevelward/THR0428.java
  22. 12 10
      kernel/src/main/java/com/lantone/qc/kernel/catalogue/threelevelward/THR0429.java
  23. 12 10
      kernel/src/main/java/com/lantone/qc/kernel/catalogue/threelevelward/THR0430.java
  24. 9 7
      kernel/src/main/java/com/lantone/qc/kernel/catalogue/threelevelward/THR0431.java
  25. 9 7
      kernel/src/main/java/com/lantone/qc/kernel/catalogue/threelevelward/THR0432.java
  26. 9 7
      kernel/src/main/java/com/lantone/qc/kernel/catalogue/threelevelward/THR0433.java
  27. 19 11
      kernel/src/main/java/com/lantone/qc/kernel/structure/ai/FirstCourseRecordAI.java
  28. 1 1
      kernel/src/main/java/com/lantone/qc/kernel/structure/ai/ThreeLevelWardAI.java
  29. 1 1
      kernel/src/main/java/com/lantone/qc/kernel/structure/ai/model/EntityEnum.java
  30. 2 2
      kernel/src/main/java/com/lantone/qc/kernel/util/CatalogueUtil.java
  31. 4 1
      public/src/main/java/com/lantone/qc/pub/model/doc/ThreeLevelWardDoc.java
  32. 6 0
      trans/src/main/java/com/lantone/qc/trans/taizhou/TaiZhouOperationDocTrans.java

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

@@ -28,7 +28,7 @@ public class BEH0014 extends QCCatalogue {
             Cause cause = clinical.getCause();
             if(cause == null){
                 int causeIndex = inputInfo.getBeHospitalizedDoc().getPresentLabel().getText().indexOf("因");
-                if (causeIndex < 15) {
+                if (causeIndex < 15 && causeIndex > -1) {
                     status.set("0");
                 } else {
                     info.set(clinicalName);

+ 10 - 0
kernel/src/main/java/com/lantone/qc/kernel/catalogue/behospitalized/BEH0070.java

@@ -3,6 +3,7 @@ package com.lantone.qc.kernel.catalogue.behospitalized;
 import com.lantone.qc.kernel.catalogue.QCCatalogue;
 import com.lantone.qc.pub.model.InputInfo;
 import com.lantone.qc.pub.model.OutputInfo;
+import com.lantone.qc.pub.model.entity.Diag;
 import com.lantone.qc.pub.model.entity.Family;
 import com.lantone.qc.pub.model.label.FamilyLabel;
 import com.lantone.qc.pub.util.ListUtil;
@@ -10,6 +11,7 @@ import com.lantone.qc.pub.util.StringUtil;
 import org.springframework.stereotype.Component;
 
 import java.util.List;
+import java.util.stream.Collectors;
 
 /**
  * @ClassName : BEH0070
@@ -36,6 +38,14 @@ public class BEH0070 extends QCCatalogue {
                 if (family.getDiagInfectious() != null && StringUtil.isNotBlank(family.getDiagInfectious().getName())) {
                     isFindDiagInfectious = true;
                 }
+                if (family.getDiags() != null) {
+                    List<Diag> diags = family.getDiags().stream().filter(diag ->
+                            (diag.getHospitalDiagName() != null && diag.getHospitalDiagName().contains("炎"))
+                                    || (diag.getHospitalDiagName() != null && diag.getHospitalDiagName().contains("核"))).collect(Collectors.toList());
+                    if (diags.size() > 0) {
+                        isFindDiagInfectious = true;
+                    }
+                }
                 if (isFindGeneticDiseaseKeyword && isFindDiagInfectious) {
                     status.set("0");
                     return;

+ 11 - 8
kernel/src/main/java/com/lantone/qc/kernel/catalogue/behospitalized/BEH0397.java

@@ -11,6 +11,7 @@ import org.springframework.stereotype.Component;
 
 import java.util.List;
 import java.util.regex.Pattern;
+import java.util.stream.Collectors;
 
 /**
  * @Description: 父母健康状况未描述
@@ -33,18 +34,20 @@ public class BEH0397 extends QCCatalogue {
         }
 
         Pattern p = Pattern.compile("[父母爸妈]");
-        long count = familyList
+        List<Family> filterFamilies = familyList
                 .stream()
                 .filter(
                         i -> i != null
                                 && StringUtil.isNotBlank(i.getName())
-                                && p.matcher(i.getName()).find()
-                                && i.getHealthCondition() != null
-                                && StringUtil.isNotBlank(i.getHealthCondition().getName())
-                )
-                .count();
-        if (count > 0) {
-            status.set("0");
+                                && p.matcher(i.getName()).find()).collect(Collectors.toList());
+        for (Family family : filterFamilies) {
+            if (family.getDead() != null) {
+                status.set("0");
+                return;
+            } else if (family.getHealthCondition() != null && StringUtil.isNotBlank(family.getHealthCondition().getName())) {
+                status.set("0");
+                return;
+            }
         }
     }
 

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

@@ -22,7 +22,7 @@ public class BEH0441 extends QCCatalogue {
         List<GeneralDesc> generals = inputInfo.getBeHospitalizedDoc().getPresentLabel().getGenerals();
         if(generals.size() > 0 || generals != null){
             for (GeneralDesc general:generals) {
-                if(general.getName().contains("纳")){
+                if(general.getName().contains("纳")|| general.getName().contains("饮食")){
                     status.set("0");
                     break;
                 }

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

@@ -23,8 +23,7 @@ public class BEH0442 extends QCCatalogue {
         BeHospitalizedDoc beHospitalizedDoc = inputInfo.getBeHospitalizedDoc();
         if(beHospitalizedDoc != null && beHospitalizedDoc.getPresentLabel() != null){
             String text = beHospitalizedDoc.getPresentLabel().getText();
-            if(text != null && (text.contains("二便")|| text.contains("小便")
-                    ||text.contains("大便")||text.contains("大小便"))){
+            if(text != null && (text.contains("便") || text.contains("血尿") || text.contains("多尿"))){
                 return;
             }else {
                 status.set("-1");

+ 1 - 1
kernel/src/main/java/com/lantone/qc/kernel/catalogue/consultation/CON0280.java

@@ -16,6 +16,6 @@ import java.util.Map;
 @Component
 public class CON0280 extends QCCatalogue {
     public void start(InputInfo inputInfo, OutputInfo outputInfo) {
-        if (inputInfo.getConsultationDocs() == null) status.set("0");
+        if (inputInfo.getConsultationDocs() == null || inputInfo.getConsultationDocs().size() == 0) status.set("0");
     }
 }

+ 3 - 4
kernel/src/main/java/com/lantone/qc/kernel/catalogue/firstcourserecord/FIRC0092.java

@@ -16,13 +16,12 @@ import org.springframework.stereotype.Component;
 @Component
 public class FIRC0092 extends QCCatalogue {
     public void start(InputInfo inputInfo, OutputInfo outputInfo) {
-        status.set("0");
         FirstCourseRecordDoc firstCourseRecordDoc = inputInfo.getFirstCourseRecordDoc();
         if (firstCourseRecordDoc != null) {
             TreatPlanLabel treatPlanLabel = firstCourseRecordDoc.getTreatPlanLabel();
-            if (!(treatPlanLabel.getNursingLevel() != null &&
-                    (treatPlanLabel.getMedicine() != null || treatPlanLabel.getTreat().size() > 0))) {
-                status.set("-1");
+            if (treatPlanLabel.getNursingLevel() != null &&
+                    (treatPlanLabel.getMedicine() != null || treatPlanLabel.getTreat().size() > 0)) {
+                status.set("0");
             }
         }
     }

+ 11 - 8
kernel/src/main/java/com/lantone/qc/kernel/catalogue/firstpagerecord/FIRP0256.java

@@ -45,15 +45,18 @@ public class FIRP0256 extends QCCatalogue {
             List<OutcomeCure> outcomeCures = new ArrayList<>();//转归情况-治愈
             List<PositiveFinding> positiveFindings = new ArrayList<>();//阳性表现
             for (ThreeLevelWardDoc threeLevelWardDoc : threeLevelWardDocs) {
-                if (threeLevelWardDoc.getThreeLevelWardLabel() == null
-                        || !threeLevelWardDoc.getThreeLevelWardLabel().getTitle().contains("最后一次")) {
-                    continue;
+                if (threeLevelWardDoc.getThreeLevelWardLabel() == null) {
+                    List<ThreeLevelWardLabel> threeLevelWardLabels = threeLevelWardDoc.getThreeLevelWardLabel();
+                    for (ThreeLevelWardLabel threeLevelWardLabel : threeLevelWardLabels) {
+                        if (!threeLevelWardLabel.getTitle().contains("最后一次")) {
+                            continue;
+                        }
+                        betterFindings = threeLevelWardLabel.getBetterFindings();
+                        outcomeToBetters = threeLevelWardLabel.getOutcomeToBetters();
+                        outcomeCures = threeLevelWardLabel.getOutcomeCures();
+                        positiveFindings = threeLevelWardLabel.getPositiveFindings();
+                    }
                 }
-                ThreeLevelWardLabel threeLevelWardLabel = threeLevelWardDoc.getThreeLevelWardLabel();
-                betterFindings = threeLevelWardLabel.getBetterFindings();
-                outcomeToBetters = threeLevelWardLabel.getOutcomeToBetters();
-                outcomeCures = threeLevelWardLabel.getOutcomeCures();
-                positiveFindings = threeLevelWardLabel.getPositiveFindings();
             }
 
             //出院小结转归情况

+ 1 - 1
kernel/src/main/java/com/lantone/qc/kernel/catalogue/threelevelward/THR0127.java

@@ -50,7 +50,7 @@ public class THR0127 extends QCCatalogue {
                 i++;
             }
             if (roundRecordEveryWeek.size() == 0){
-                status.set("-1");
+                status.set("0");
                 return;
             }
             for (String roundRecord : roundRecordEveryWeek) {

+ 1 - 1
kernel/src/main/java/com/lantone/qc/kernel/catalogue/threelevelward/THR0128.java

@@ -50,7 +50,7 @@ public class THR0128 extends QCCatalogue {
                 i++;
             }
             if (roundRecordEveryWeek.size() == 0){
-                status.set("-1");
+                status.set("0");
                 return;
             }
             for (String roundRecord : roundRecordEveryWeek) {

+ 10 - 10
kernel/src/main/java/com/lantone/qc/kernel/catalogue/threelevelward/THR0130.java

@@ -24,16 +24,16 @@ public class THR0130 extends QCCatalogue {
         if (inputInfo.getThreeLevelWardDocs().size() > 0) {
             List<ThreeLevelWardDoc> threeLevelWardDocs = inputInfo.getThreeLevelWardDocs();
             for (ThreeLevelWardDoc threeLevelWardDoc : threeLevelWardDocs) {
-                ThreeLevelWardLabel threeLevelWardLabel = threeLevelWardDoc.getThreeLevelWardLabel();
-                if (threeLevelWardLabel == null
-                        || StringUtil.isBlank(threeLevelWardLabel.getTitle())
-                        || !Content.indications.equals(threeLevelWardLabel.getTitle())) {
-                    continue;
-                }
-
-                if (threeLevelWardLabel.getClinicals().size() == 0 && threeLevelWardLabel.getSigns().size() == 0) {
-                    status.set("-1");
-                    return;
+                List<ThreeLevelWardLabel> threeLevelWardLabels = threeLevelWardDoc.getThreeLevelWardLabel();
+                for (ThreeLevelWardLabel threeLevelWardLabel : threeLevelWardLabels) {
+                    if (StringUtil.isBlank(threeLevelWardLabel.getTitle())
+                            || !Content.indications.equals(threeLevelWardLabel.getTitle())) {
+                        continue;
+                    }
+                    if (threeLevelWardLabel.getClinicals().size() == 0 && threeLevelWardLabel.getSigns().size() == 0) {
+                        status.set("-1");
+                        return;
+                    }
                 }
             }
         }

+ 10 - 9
kernel/src/main/java/com/lantone/qc/kernel/catalogue/threelevelward/THR0131.java

@@ -44,15 +44,16 @@ public class THR0131 extends QCCatalogue {
                 }
             }
             for (ThreeLevelWardDoc threeLevelWardDoc : threeLevelWardDocs) {
-                ThreeLevelWardLabel threeLevelWardLabel = threeLevelWardDoc.getThreeLevelWardLabel();
-                if (threeLevelWardLabel == null
-                        || StringUtil.isBlank(threeLevelWardLabel.getTitle())
-                        || !Content.indications.equals(threeLevelWardLabel.getTitle())) {
-                    continue;
-                }
-                if (threeLevelWardLabel.getDiffDiag().size() == 0 && StringUtil.isBlank(threeLevelWardLabel.getDiffDiagText())) {
-                    status.set("-1");
-                    return;
+                List<ThreeLevelWardLabel> threeLevelWardLabels = threeLevelWardDoc.getThreeLevelWardLabel();
+                for (ThreeLevelWardLabel threeLevelWardLabel : threeLevelWardLabels) {
+                    if (StringUtil.isBlank(threeLevelWardLabel.getTitle())
+                            || !Content.indications.equals(threeLevelWardLabel.getTitle())) {
+                        continue;
+                    }
+                    if (threeLevelWardLabel.getDiffDiag().size() == 0 && StringUtil.isBlank(threeLevelWardLabel.getDiffDiagText())) {
+                        status.set("-1");
+                        return;
+                    }
                 }
             }
         }

+ 14 - 13
kernel/src/main/java/com/lantone/qc/kernel/catalogue/threelevelward/THR0132.java

@@ -7,6 +7,7 @@ import com.lantone.qc.pub.model.OutputInfo;
 import com.lantone.qc.pub.model.doc.ThreeLevelWardDoc;
 import com.lantone.qc.pub.model.label.ThreeLevelWardLabel;
 import com.lantone.qc.pub.util.StringUtil;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.stereotype.Component;
 
 import java.util.List;
@@ -20,22 +21,22 @@ import java.util.List;
 @Component
 public class THR0132 extends QCCatalogue {
     public void start(InputInfo inputInfo, OutputInfo outputInfo) {
-        status.set("0");
         if (inputInfo.getThreeLevelWardDocs().size() > 0) {
             List<ThreeLevelWardDoc> threeLevelWardDocs = inputInfo.getThreeLevelWardDocs();
             for (ThreeLevelWardDoc threeLevelWardDoc : threeLevelWardDocs) {
-                ThreeLevelWardLabel threeLevelWardLabel = threeLevelWardDoc.getThreeLevelWardLabel();
-                if (threeLevelWardLabel == null
-                        || StringUtil.isBlank(threeLevelWardLabel.getTitle())
-                        || !Content.indications.equals(threeLevelWardLabel.getTitle())) {
-                    continue;
-                }
-                if (threeLevelWardLabel.getDiags().size() == 0
-                        || StringUtil.isNotBlank(threeLevelWardLabel.getDiagBasisText()) && threeLevelWardLabel.getDiagBasisText().length() < 30
-                        || threeLevelWardLabel.getDiffDiag().size() == 0 && StringUtil.isBlank(threeLevelWardLabel.getDiffDiagText())
-                        || threeLevelWardLabel.getTreatmentPlans().size() == 0) {
-                    status.set("-1");
-                    return;
+                List<ThreeLevelWardLabel> threeLevelWardLabels = threeLevelWardDoc.getThreeLevelWardLabel();
+                for (ThreeLevelWardLabel threeLevelWardLabel : threeLevelWardLabels) {
+                    if (StringUtil.isBlank(threeLevelWardLabel.getTitle())
+                            || !Content.indications.equals(threeLevelWardLabel.getTitle())) {
+                        continue;
+                    }
+                    if (threeLevelWardLabel.getDiags().size() > 0
+                            && StringUtil.isNotBlank(threeLevelWardLabel.getDiagBasisText())
+                            && (threeLevelWardLabel.getDiffDiag().size() > 0 || StringUtils.isNotEmpty(threeLevelWardLabel.getDiffDiagText()))
+                            && threeLevelWardLabel.getTreatmentPlans().size() > 0) {
+                        status.set("0");
+                        return;
+                    }
                 }
             }
         }

+ 10 - 9
kernel/src/main/java/com/lantone/qc/kernel/catalogue/threelevelward/THR0133.java

@@ -24,15 +24,16 @@ public class THR0133 extends QCCatalogue {
         if (inputInfo.getThreeLevelWardDocs().size() > 0) {
             List<ThreeLevelWardDoc> threeLevelWardDocs = inputInfo.getThreeLevelWardDocs();
             for (ThreeLevelWardDoc threeLevelWardDoc : threeLevelWardDocs) {
-                ThreeLevelWardLabel threeLevelWardLabel = threeLevelWardDoc.getThreeLevelWardLabel();
-                if (threeLevelWardLabel == null
-                        || StringUtil.isBlank(threeLevelWardLabel.getTitle())
-                        || !Content.indications.equals(threeLevelWardLabel.getTitle())) {
-                    continue;
-                }
-                if (threeLevelWardLabel.getTreatmentPlans().size() == 0) {
-                    status.set("-1");
-                    return;
+                List<ThreeLevelWardLabel> threeLevelWardLabels = threeLevelWardDoc.getThreeLevelWardLabel();
+                for (ThreeLevelWardLabel threeLevelWardLabel : threeLevelWardLabels) {
+                    if (StringUtil.isBlank(threeLevelWardLabel.getTitle())
+                            || !Content.indications.equals(threeLevelWardLabel.getTitle())) {
+                        continue;
+                    }
+                    if (threeLevelWardLabel.getTreatmentPlans().size() == 0) {
+                        status.set("-1");
+                        return;
+                    }
                 }
             }
         }

+ 10 - 9
kernel/src/main/java/com/lantone/qc/kernel/catalogue/threelevelward/THR0134.java

@@ -24,15 +24,16 @@ public class THR0134 extends QCCatalogue {
         if (inputInfo.getThreeLevelWardDocs().size() > 0) {
             List<ThreeLevelWardDoc> threeLevelWardDocs = inputInfo.getThreeLevelWardDocs();
             for (ThreeLevelWardDoc threeLevelWardDoc : threeLevelWardDocs) {
-                ThreeLevelWardLabel threeLevelWardLabel = threeLevelWardDoc.getThreeLevelWardLabel();
-                if (threeLevelWardLabel == null
-                        || StringUtil.isBlank(threeLevelWardLabel.getTitle())
-                        || !Content.indications.equals(threeLevelWardLabel.getTitle())) {
-                    continue;
-                }
-                if (threeLevelWardLabel.getDiags().size() == 0) {
-                    status.set("-1");
-                    return;
+                List<ThreeLevelWardLabel> threeLevelWardLabels = threeLevelWardDoc.getThreeLevelWardLabel();
+                for (ThreeLevelWardLabel threeLevelWardLabel : threeLevelWardLabels) {
+                    if (StringUtil.isBlank(threeLevelWardLabel.getTitle())
+                            || !Content.indications.equals(threeLevelWardLabel.getTitle())) {
+                        continue;
+                    }
+                    if (threeLevelWardLabel.getDiags().size() == 0) {
+                        status.set("-1");
+                        return;
+                    }
                 }
             }
         }

+ 10 - 9
kernel/src/main/java/com/lantone/qc/kernel/catalogue/threelevelward/THR0135.java

@@ -24,15 +24,16 @@ public class THR0135 extends QCCatalogue {
         if (inputInfo.getThreeLevelWardDocs().size() > 0) {
             List<ThreeLevelWardDoc> threeLevelWardDocs = inputInfo.getThreeLevelWardDocs();
             for (ThreeLevelWardDoc threeLevelWardDoc : threeLevelWardDocs) {
-                ThreeLevelWardLabel threeLevelWardLabel = threeLevelWardDoc.getThreeLevelWardLabel();
-                if (threeLevelWardLabel == null
-                        || StringUtil.isBlank(threeLevelWardLabel.getTitle())
-                        || !Content.director.equals(threeLevelWardLabel.getTitle())) {
-                    continue;
-                }
-                if (threeLevelWardLabel.getClinicals().size() == 0 && threeLevelWardLabel.getSigns().size() == 0) {
-                    status.set("-1");
-                    return;
+                List<ThreeLevelWardLabel> threeLevelWardLabels = threeLevelWardDoc.getThreeLevelWardLabel();
+                for (ThreeLevelWardLabel threeLevelWardLabel : threeLevelWardLabels) {
+                    if (StringUtil.isBlank(threeLevelWardLabel.getTitle())
+                            || !Content.director.equals(threeLevelWardLabel.getTitle())) {
+                        continue;
+                    }
+                    if (threeLevelWardLabel.getClinicals().size() == 0 && threeLevelWardLabel.getSigns().size() == 0) {
+                        status.set("-1");
+                        return;
+                    }
                 }
             }
         }

+ 14 - 13
kernel/src/main/java/com/lantone/qc/kernel/catalogue/threelevelward/THR0136.java

@@ -34,7 +34,7 @@ public class THR0136 extends QCCatalogue {
                 return;
             }
             List<ThreeLevelWardDoc> threeLevelWardDocs = inputInfo.getThreeLevelWardDocs();
-            Map<String,Map<String, String>> doctorRecord = extractWardRecord(
+            Map<String, Map<String, String>> doctorRecord = extractWardRecord(
                     threeLevelWardDocs,
                     admisTime,
                     72 * 60);
@@ -44,18 +44,19 @@ public class THR0136 extends QCCatalogue {
                 }
             }
             for (ThreeLevelWardDoc threeLevelWardDoc : threeLevelWardDocs) {
-                ThreeLevelWardLabel threeLevelWardLabel = threeLevelWardDoc.getThreeLevelWardLabel();
-                if (threeLevelWardLabel == null
-                        || StringUtil.isBlank(threeLevelWardLabel.getTitle())
-                        || !Content.director.equals(threeLevelWardLabel.getTitle())) {
-                    continue;
-                }
-                if (threeLevelWardDoc.getText().contains("鉴别诊断")) {
-                    return;
-                }
-                if (threeLevelWardLabel.getDiffDiag().size() == 0 && StringUtil.isBlank(threeLevelWardLabel.getDiffDiagText())) {
-                    status.set("-1");
-                    return;
+                List<ThreeLevelWardLabel> threeLevelWardLabels = threeLevelWardDoc.getThreeLevelWardLabel();
+                for (ThreeLevelWardLabel threeLevelWardLabel : threeLevelWardLabels) {
+                    if (StringUtil.isBlank(threeLevelWardLabel.getTitle())
+                            || !Content.director.equals(threeLevelWardLabel.getTitle())) {
+                        continue;
+                    }
+                    if (threeLevelWardDoc.getText().contains("鉴别诊断")) {
+                        return;
+                    }
+                    if (threeLevelWardLabel.getDiffDiag().size() == 0 && StringUtil.isBlank(threeLevelWardLabel.getDiffDiagText())) {
+                        status.set("-1");
+                        return;
+                    }
                 }
             }
         }

+ 14 - 13
kernel/src/main/java/com/lantone/qc/kernel/catalogue/threelevelward/THR0137.java

@@ -7,6 +7,7 @@ import com.lantone.qc.pub.model.OutputInfo;
 import com.lantone.qc.pub.model.doc.ThreeLevelWardDoc;
 import com.lantone.qc.pub.model.label.ThreeLevelWardLabel;
 import com.lantone.qc.pub.util.StringUtil;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.stereotype.Component;
 
 import java.util.List;
@@ -20,22 +21,22 @@ import java.util.List;
 @Component
 public class THR0137 extends QCCatalogue {
     public void start(InputInfo inputInfo, OutputInfo outputInfo) {
-        status.set("0");
         if (inputInfo.getThreeLevelWardDocs().size() > 0) {
             List<ThreeLevelWardDoc> threeLevelWardDocs = inputInfo.getThreeLevelWardDocs();
             for (ThreeLevelWardDoc threeLevelWardDoc : threeLevelWardDocs) {
-                ThreeLevelWardLabel threeLevelWardLabel = threeLevelWardDoc.getThreeLevelWardLabel();
-                if (threeLevelWardLabel == null
-                        || StringUtil.isBlank(threeLevelWardLabel.getTitle())
-                        || !Content.director.equals(threeLevelWardLabel.getTitle())) {
-                    continue;
-                }
-                if (threeLevelWardLabel.getDiags().size() == 0
-                        || StringUtil.isNotBlank(threeLevelWardLabel.getDiagBasisText()) && threeLevelWardLabel.getDiagBasisText().length() < 30
-                        || threeLevelWardLabel.getDiffDiag().size() == 0 && StringUtil.isBlank(threeLevelWardLabel.getDiffDiagText())
-                        || threeLevelWardLabel.getTreatmentPlans().size() == 0) {
-                    status.set("-1");
-                    return;
+                List<ThreeLevelWardLabel> threeLevelWardLabels = threeLevelWardDoc.getThreeLevelWardLabel();
+                for (ThreeLevelWardLabel threeLevelWardLabel : threeLevelWardLabels) {
+                    if (StringUtil.isBlank(threeLevelWardLabel.getTitle())
+                            || !Content.director.equals(threeLevelWardLabel.getTitle())) {
+                        continue;
+                    }
+                    if (threeLevelWardLabel.getDiags().size() > 0
+                            && StringUtil.isNotBlank(threeLevelWardLabel.getDiagBasisText())
+                            && (threeLevelWardLabel.getDiffDiag().size() > 0 || StringUtils.isNotEmpty(threeLevelWardLabel.getDiffDiagText()))
+                            && threeLevelWardLabel.getTreatmentPlans().size() > 0) {
+                        status.set("0");
+                        return;
+                    }
                 }
             }
         }

+ 10 - 9
kernel/src/main/java/com/lantone/qc/kernel/catalogue/threelevelward/THR0138.java

@@ -24,15 +24,16 @@ public class THR0138 extends QCCatalogue {
         if (inputInfo.getThreeLevelWardDocs().size() > 0) {
             List<ThreeLevelWardDoc> threeLevelWardDocs = inputInfo.getThreeLevelWardDocs();
             for (ThreeLevelWardDoc threeLevelWardDoc : threeLevelWardDocs) {
-                ThreeLevelWardLabel threeLevelWardLabel = threeLevelWardDoc.getThreeLevelWardLabel();
-                if (threeLevelWardLabel == null
-                        || StringUtil.isBlank(threeLevelWardLabel.getTitle())
-                        || !Content.director.equals(threeLevelWardLabel.getTitle())) {
-                    continue;
-                }
-                if (threeLevelWardLabel.getTreatmentPlans().size() == 0) {
-                    status.set("-1");
-                    return;
+                List<ThreeLevelWardLabel> threeLevelWardLabels = threeLevelWardDoc.getThreeLevelWardLabel();
+                for (ThreeLevelWardLabel threeLevelWardLabel : threeLevelWardLabels) {
+                    if (StringUtil.isBlank(threeLevelWardLabel.getTitle())
+                            || !Content.director.equals(threeLevelWardLabel.getTitle())) {
+                        continue;
+                    }
+                    if (threeLevelWardLabel.getTreatmentPlans().size() == 0) {
+                        status.set("-1");
+                        return;
+                    }
                 }
             }
         }

+ 10 - 9
kernel/src/main/java/com/lantone/qc/kernel/catalogue/threelevelward/THR0139.java

@@ -24,15 +24,16 @@ public class THR0139 extends QCCatalogue {
         if (inputInfo.getThreeLevelWardDocs().size() > 0) {
             List<ThreeLevelWardDoc> threeLevelWardDocs = inputInfo.getThreeLevelWardDocs();
             for (ThreeLevelWardDoc threeLevelWardDoc : threeLevelWardDocs) {
-                ThreeLevelWardLabel threeLevelWardLabel = threeLevelWardDoc.getThreeLevelWardLabel();
-                if (threeLevelWardLabel == null
-                        || StringUtil.isBlank(threeLevelWardLabel.getTitle())
-                        || !Content.director.equals(threeLevelWardLabel.getTitle())) {
-                    continue;
-                }
-                if (threeLevelWardLabel.getDiags().size() == 0) {
-                    status.set("-1");
-                    return;
+                List<ThreeLevelWardLabel> threeLevelWardLabels = threeLevelWardDoc.getThreeLevelWardLabel();
+                for (ThreeLevelWardLabel threeLevelWardLabel : threeLevelWardLabels) {
+                    if (StringUtil.isBlank(threeLevelWardLabel.getTitle())
+                            || !Content.director.equals(threeLevelWardLabel.getTitle())) {
+                        continue;
+                    }
+                    if (threeLevelWardLabel.getDiags().size() == 0) {
+                        status.set("-1");
+                        return;
+                    }
                 }
             }
         }

+ 12 - 10
kernel/src/main/java/com/lantone/qc/kernel/catalogue/threelevelward/THR0428.java

@@ -27,16 +27,18 @@ public class THR0428 extends QCCatalogue {
         if (inputInfo.getThreeLevelWardDocs().size() > 0) {
             List<ThreeLevelWardDoc> threeLevelWardDocs = inputInfo.getThreeLevelWardDocs();
             for (ThreeLevelWardDoc threeLevelWardDoc : threeLevelWardDocs) {
-                ThreeLevelWardLabel threeLevelWardLabel = threeLevelWardDoc.getThreeLevelWardLabel();
-                if (threeLevelWardLabel == null || threeLevelWardLabel.getSerious() != 1) {
-                    continue;
-                }
-                if (threeLevelWardLabel.getDiags().size() == 0
-                        || StringUtil.isNotBlank(threeLevelWardLabel.getDiagBasisText()) && threeLevelWardLabel.getDiagBasisText().length() < 30
-                        || threeLevelWardLabel.getDiffDiag().size() == 0 && StringUtil.isBlank(threeLevelWardLabel.getDiffDiagText())
-                        || threeLevelWardLabel.getTreatmentPlans().size() == 0) {
-                    status.set("-1");
-                    return;
+                List<ThreeLevelWardLabel> threeLevelWardLabels = threeLevelWardDoc.getThreeLevelWardLabel();
+                for (ThreeLevelWardLabel threeLevelWardLabel : threeLevelWardLabels) {
+                    if (threeLevelWardLabel.getSerious() != 1) {
+                        continue;
+                    }
+                    if (threeLevelWardLabel.getDiags().size() == 0
+                            || StringUtil.isNotBlank(threeLevelWardLabel.getDiagBasisText()) && threeLevelWardLabel.getDiagBasisText().length() < 30
+                            || threeLevelWardLabel.getDiffDiag().size() == 0 && StringUtil.isBlank(threeLevelWardLabel.getDiffDiagText())
+                            || threeLevelWardLabel.getTreatmentPlans().size() == 0) {
+                        status.set("-1");
+                        return;
+                    }
                 }
             }
         }

+ 12 - 10
kernel/src/main/java/com/lantone/qc/kernel/catalogue/threelevelward/THR0429.java

@@ -27,16 +27,18 @@ public class THR0429 extends QCCatalogue {
         if (inputInfo.getThreeLevelWardDocs().size() > 0) {
             List<ThreeLevelWardDoc> threeLevelWardDocs = inputInfo.getThreeLevelWardDocs();
             for (ThreeLevelWardDoc threeLevelWardDoc : threeLevelWardDocs) {
-                ThreeLevelWardLabel threeLevelWardLabel = threeLevelWardDoc.getThreeLevelWardLabel();
-                if (threeLevelWardLabel == null || threeLevelWardLabel.getSerious() != 2) {
-                    continue;
-                }
-                if (threeLevelWardLabel.getDiags().size() == 0
-                        || StringUtil.isNotBlank(threeLevelWardLabel.getDiagBasisText()) && threeLevelWardLabel.getDiagBasisText().length() < 30
-                        || threeLevelWardLabel.getDiffDiag().size() == 0 && StringUtil.isBlank(threeLevelWardLabel.getDiffDiagText())
-                        || threeLevelWardLabel.getTreatmentPlans().size() == 0) {
-                    status.set("-1");
-                    return;
+                List<ThreeLevelWardLabel> threeLevelWardLabels = threeLevelWardDoc.getThreeLevelWardLabel();
+                for (ThreeLevelWardLabel threeLevelWardLabel : threeLevelWardLabels) {
+                    if (threeLevelWardLabel.getSerious() != 2) {
+                        continue;
+                    }
+                    if (threeLevelWardLabel.getDiags().size() == 0
+                            || StringUtil.isNotBlank(threeLevelWardLabel.getDiagBasisText()) && threeLevelWardLabel.getDiagBasisText().length() < 30
+                            || threeLevelWardLabel.getDiffDiag().size() == 0 && StringUtil.isBlank(threeLevelWardLabel.getDiffDiagText())
+                            || threeLevelWardLabel.getTreatmentPlans().size() == 0) {
+                        status.set("-1");
+                        return;
+                    }
                 }
             }
         }

+ 12 - 10
kernel/src/main/java/com/lantone/qc/kernel/catalogue/threelevelward/THR0430.java

@@ -27,16 +27,18 @@ public class THR0430 extends QCCatalogue {
         if (inputInfo.getThreeLevelWardDocs().size() > 0) {
             List<ThreeLevelWardDoc> threeLevelWardDocs = inputInfo.getThreeLevelWardDocs();
             for (ThreeLevelWardDoc threeLevelWardDoc : threeLevelWardDocs) {
-                ThreeLevelWardLabel threeLevelWardLabel = threeLevelWardDoc.getThreeLevelWardLabel();
-                if (threeLevelWardLabel == null || threeLevelWardLabel.getSerious() != 3) {
-                    continue;
-                }
-                if (threeLevelWardLabel.getDiags().size() == 0
-                        || StringUtil.isNotBlank(threeLevelWardLabel.getDiagBasisText()) && threeLevelWardLabel.getDiagBasisText().length() < 30
-                        || threeLevelWardLabel.getDiffDiag().size() == 0 && StringUtil.isBlank(threeLevelWardLabel.getDiffDiagText())
-                        || threeLevelWardLabel.getTreatmentPlans().size() == 0) {
-                    status.set("-1");
-                    return;
+                List<ThreeLevelWardLabel> threeLevelWardLabels = threeLevelWardDoc.getThreeLevelWardLabel();
+                for (ThreeLevelWardLabel threeLevelWardLabel : threeLevelWardLabels) {
+                    if (threeLevelWardLabel.getSerious() != 3) {
+                        continue;
+                    }
+                    if (threeLevelWardLabel.getDiags().size() == 0
+                            || StringUtil.isNotBlank(threeLevelWardLabel.getDiagBasisText()) && threeLevelWardLabel.getDiagBasisText().length() < 30
+                            || threeLevelWardLabel.getDiffDiag().size() == 0 && StringUtil.isBlank(threeLevelWardLabel.getDiffDiagText())
+                            || threeLevelWardLabel.getTreatmentPlans().size() == 0) {
+                        status.set("-1");
+                        return;
+                    }
                 }
             }
         }

+ 9 - 7
kernel/src/main/java/com/lantone/qc/kernel/catalogue/threelevelward/THR0431.java

@@ -26,13 +26,15 @@ public class THR0431 extends QCCatalogue {
         if (inputInfo.getThreeLevelWardDocs().size() > 0) {
             List<ThreeLevelWardDoc> threeLevelWardDocs = inputInfo.getThreeLevelWardDocs();
             for (ThreeLevelWardDoc threeLevelWardDoc : threeLevelWardDocs) {
-                ThreeLevelWardLabel threeLevelWardLabel = threeLevelWardDoc.getThreeLevelWardLabel();
-                if (threeLevelWardLabel == null || threeLevelWardLabel.getSerious() != 1) {
-                    continue;
-                }
-                if (threeLevelWardLabel.getTreatmentPlans().size() == 0) {
-                    status.set("-1");
-                    return;
+                List<ThreeLevelWardLabel> threeLevelWardLabels = threeLevelWardDoc.getThreeLevelWardLabel();
+                for (ThreeLevelWardLabel threeLevelWardLabel : threeLevelWardLabels) {
+                    if (threeLevelWardLabel.getSerious() != 1) {
+                        continue;
+                    }
+                    if (threeLevelWardLabel.getTreatmentPlans().size() == 0) {
+                        status.set("-1");
+                        return;
+                    }
                 }
             }
         }

+ 9 - 7
kernel/src/main/java/com/lantone/qc/kernel/catalogue/threelevelward/THR0432.java

@@ -26,13 +26,15 @@ public class THR0432 extends QCCatalogue {
         if (inputInfo.getThreeLevelWardDocs().size() > 0) {
             List<ThreeLevelWardDoc> threeLevelWardDocs = inputInfo.getThreeLevelWardDocs();
             for (ThreeLevelWardDoc threeLevelWardDoc : threeLevelWardDocs) {
-                ThreeLevelWardLabel threeLevelWardLabel = threeLevelWardDoc.getThreeLevelWardLabel();
-                if (threeLevelWardLabel == null || threeLevelWardLabel.getSerious() != 2) {
-                    continue;
-                }
-                if (threeLevelWardLabel.getTreatmentPlans().size() == 0) {
-                    status.set("-1");
-                    return;
+                List<ThreeLevelWardLabel> threeLevelWardLabels = threeLevelWardDoc.getThreeLevelWardLabel();
+                for (ThreeLevelWardLabel threeLevelWardLabel : threeLevelWardLabels) {
+                    if (threeLevelWardLabel.getSerious() != 2) {
+                        continue;
+                    }
+                    if (threeLevelWardLabel.getTreatmentPlans().size() == 0) {
+                        status.set("-1");
+                        return;
+                    }
                 }
             }
         }

+ 9 - 7
kernel/src/main/java/com/lantone/qc/kernel/catalogue/threelevelward/THR0433.java

@@ -26,13 +26,15 @@ public class THR0433 extends QCCatalogue {
         if (inputInfo.getThreeLevelWardDocs().size() > 0) {
             List<ThreeLevelWardDoc> threeLevelWardDocs = inputInfo.getThreeLevelWardDocs();
             for (ThreeLevelWardDoc threeLevelWardDoc : threeLevelWardDocs) {
-                ThreeLevelWardLabel threeLevelWardLabel = threeLevelWardDoc.getThreeLevelWardLabel();
-                if (threeLevelWardLabel == null || threeLevelWardLabel.getSerious() != 3) {
-                    continue;
-                }
-                if (threeLevelWardLabel.getTreatmentPlans().size() == 0) {
-                    status.set("-1");
-                    return;
+                List<ThreeLevelWardLabel> threeLevelWardLabels = threeLevelWardDoc.getThreeLevelWardLabel();
+                for (ThreeLevelWardLabel threeLevelWardLabel : threeLevelWardLabels) {
+                    if (threeLevelWardLabel.getSerious() != 3) {
+                        continue;
+                    }
+                    if (threeLevelWardLabel.getTreatmentPlans().size() == 0) {
+                        status.set("-1");
+                        return;
+                    }
                 }
             }
         }

+ 19 - 11
kernel/src/main/java/com/lantone/qc/kernel/structure/ai/FirstCourseRecordAI.java

@@ -39,16 +39,24 @@ public class FirstCourseRecordAI extends ModelAI {
         JSONArray similarContent = new JSONArray();
         FirstCourseRecordDoc firstCourseRecordDoc = inputInfo.getFirstCourseRecordDoc();
         if (firstCourseRecordDoc != null && StringUtils.isNotEmpty(firstCourseRecordDoc.getText())) {
-            //病历特点
-            putContent(crfContent, medicalTextType.get(0), firstCourseRecordDoc.getCaseCharacteristicLabel().getText(), Content.case_feature);
+//            //病历特点
+//            putContent(crfContent, medicalTextType.get(0), firstCourseRecordDoc.getCaseCharacteristicLabel().getText(), Content.case_feature);
             //初步诊断
             putContent(crfContent, medicalTextType.get(1), firstCourseRecordDoc.getInitialDiagLabel().getText(), Content.initial_diag);
-            //诊断依据
-            putContent(crfContent, medicalTextType.get(0), firstCourseRecordDoc.getDiagnosisLabel().getText(), Content.diag_basis);
+//            //诊断依据
+//            putContent(crfContent, medicalTextType.get(0), firstCourseRecordDoc.getDiagnosisLabel().getText(), Content.diag_basis);
             //鉴别诊断
             putContent(crfContent, medicalTextType.get(1), firstCourseRecordDoc.getDifferentialDiagLabel().getText(), Content.differential_diag_basis);
             //诊疗计划
-            putContent(crfContent, medicalTextType.get(2), firstCourseRecordDoc.getTreatPlanLabel().getText(), Content.treat_plan);
+            if (StringUtils.isNotEmpty(firstCourseRecordDoc.getStructureMap().get("诊疗计划")) && StringUtils.isNotEmpty(firstCourseRecordDoc.getStructureMap().get("需求评估"))) {
+                putContent(crfContent, medicalTextType.get(2), firstCourseRecordDoc.getStructureMap().get("需求评估") + StringUtils.isNotEmpty(firstCourseRecordDoc.getStructureMap().get("诊疗计划")), Content.treat_plan);
+            } else if (StringUtils.isNotEmpty(firstCourseRecordDoc.getStructureMap().get("诊疗计划"))) {
+                putContent(crfContent, medicalTextType.get(2), firstCourseRecordDoc.getStructureMap().get("诊疗计划"), Content.treat_plan);
+            } else if (StringUtils.isNotEmpty(firstCourseRecordDoc.getStructureMap().get("需求评估"))) {
+                putContent(crfContent, medicalTextType.get(2), firstCourseRecordDoc.getStructureMap().get("需求评估"), Content.treat_plan);
+            } else {
+                putContent(crfContent, medicalTextType.get(2), firstCourseRecordDoc.getTreatPlanLabel().getText(), Content.treat_plan);
+            }
 
             //病历特点与现病史比较相似度
             if (inputInfo.getBeHospitalizedDoc() != null && StringUtil.isNotBlank(inputInfo.getBeHospitalizedDoc().getPresentLabel().getText())) {
@@ -56,15 +64,15 @@ public class FirstCourseRecordAI extends ModelAI {
             }
 
             JSONObject midData = loadAI(crfContent, crfServiceClient);//crf返回数据
-            if (midData.containsKey(Content.case_feature)) {
-                putCaseCharacteristicCrfData(midData.getJSONObject(Content.case_feature), inputInfo);//处理病历特点
-            }
+//            if (midData.containsKey(Content.case_feature)) {
+//                putCaseCharacteristicCrfData(midData.getJSONObject(Content.case_feature), inputInfo);//处理病历特点
+//            }
             if (midData.containsKey(Content.initial_diag)) {
                 putInitialDiagCrfData(midData.getJSONObject(Content.initial_diag), inputInfo);//处理初步诊断
             }
-            if (midData.containsKey(Content.diag_basis)) {
-                putDiagnosisCrfData(midData.getJSONObject(Content.diag_basis), inputInfo);//处理诊断依据
-            }
+//            if (midData.containsKey(Content.diag_basis)) {
+//                putDiagnosisCrfData(midData.getJSONObject(Content.diag_basis), inputInfo);//处理诊断依据
+//            }
             if (midData.containsKey(Content.differential_diag_basis)) {
                 putDifferentialDiagCrfData(midData.getJSONObject(Content.differential_diag_basis), inputInfo);//处理鉴别诊断
             }

+ 1 - 1
kernel/src/main/java/com/lantone/qc/kernel/structure/ai/ThreeLevelWardAI.java

@@ -142,7 +142,7 @@ public class ThreeLevelWardAI extends ModelAI {
         for (ThreeLevelWardDoc threeLevelWardDoc : threeLevelWardDocs) {
             String text = threeLevelWardDoc.getText();
             if (StringUtil.isNotBlank(text) && StringUtil.isNotBlank(originalText) && text.equals(originalText)) {
-                threeLevelWardDoc.setThreeLevelWardLabel(threeLevelWardLabel);
+                threeLevelWardDoc.getThreeLevelWardLabel().add(threeLevelWardLabel);
                 break;
             }
         }

+ 1 - 1
kernel/src/main/java/com/lantone/qc/kernel/structure/ai/model/EntityEnum.java

@@ -15,7 +15,7 @@ public enum EntityEnum {
     OPERATION_KEYWORD("手术史"), OPERATION_RESULT("手术结果"), INJURY("外伤史"), ALLERGY("过敏"),
     FOOD_ALLERGY("食物过敏原"), DRUG_ALLERGY("药物过敏原"), ALLERGY_SYMPTOM("过敏表现"), BLOOD_TRANSFUSION("输血史"),
     TRANSFUSION_REACTION("输血反应"), VACCINATION("预防接种史"), DISEASE_KEYWORD("疾病史"), INFECTIOUS_KEYWORD("传染病史"),
-    UNKNOWN("情况不详"), HEALTH("健康况"), AGE("年龄"), SMOKING_HISTORY("吸烟史"),
+    UNKNOWN("情况不详"), HEALTH("健康况"), AGE("年龄"), SMOKING_HISTORY("吸烟史"),
     HISTORY_OF_ALCOHOL_INTAKE("饮酒史"), USAGE("用量"), MENSES("月经"), LEUKORRHEA("白带"),
     BIRTH_HIS("生育情况"), CONJUGAL_RELATION("夫妻关系"), RELATIVES("家属"), GROUP_CONSULTATION("会诊"), ORGANISM("生物体"),
     OCCUPATION("职业"), LOCATION("地点"), DEAD("死亡"), DEAD_REASON("死亡原因"),

+ 2 - 2
kernel/src/main/java/com/lantone/qc/kernel/util/CatalogueUtil.java

@@ -244,7 +244,7 @@ public class CatalogueUtil {
         //按时间排好序查房记录的第一条主治医师查房记录存进doctorRecord
         for (Map<String, String> record : sortRecord) {
             String roundTitle = record.get("查房标题");
-            if (!isEmpty(roundTitle) && !CatalogueUtil.subTitle(record.get("查房标题")).contains(Content.indications)) {
+            if (isEmpty(roundTitle) || (!isEmpty(roundTitle) && !CatalogueUtil.subTitle(record.get("查房标题")).contains(Content.indications))) {
                 continue;
             }
             doctorRecord.put(Content.indications, record);
@@ -253,7 +253,7 @@ public class CatalogueUtil {
         //按时间排好序查房记录的第一条主任医师/副主任医师查房记录存进doctorRecord
         for (Map<String, String> record : sortRecord) {
             String roundTitle = record.get("查房标题");
-            if (!isEmpty(roundTitle) && !CatalogueUtil.subTitle(record.get("查房标题")).contains(Content.director)) {
+            if (isEmpty(roundTitle) || (!isEmpty(roundTitle) && !CatalogueUtil.subTitle(record.get("查房标题")).contains(Content.director))) {
                 continue;
             }
             doctorRecord.put(Content.director, record);

+ 4 - 1
public/src/main/java/com/lantone/qc/pub/model/doc/ThreeLevelWardDoc.java

@@ -4,6 +4,9 @@ import com.lantone.qc.pub.model.label.ThreeLevelWardLabel;
 import lombok.Getter;
 import lombok.Setter;
 
+import java.util.ArrayList;
+import java.util.List;
+
 /**
  * @ClassName : ThreeLevelWardDoc
  * @Description : 查房记录文档
@@ -13,5 +16,5 @@ import lombok.Setter;
 @Getter
 @Setter
 public class ThreeLevelWardDoc extends ModelDoc {
-    private ThreeLevelWardLabel threeLevelWardLabel;
+    private List<ThreeLevelWardLabel> threeLevelWardLabel = new ArrayList<>();
 }

+ 6 - 0
trans/src/main/java/com/lantone/qc/trans/taizhou/TaiZhouOperationDocTrans.java

@@ -25,6 +25,12 @@ import java.util.Set;
  */
 public class TaiZhouOperationDocTrans extends ModelDocTrans {
 
+    /**
+     * 手术文档包含:术后首次病程及谈话记录;手术记录;术前讨论、术前小结
+     *
+     * @param medrecVo
+     * @return
+     */
     @Override
     public List<OperationDoc> extract(MedrecVo medrecVo) {
         List<OperationDoc> retList = Lists.newArrayList();