Browse Source

Merge remote-tracking branch 'origin/debug' into debug

kongwz 5 năm trước cách đây
mục cha
commit
97fcfde3d7

+ 14 - 3
kernel/src/main/java/com/lantone/qc/kernel/catalogue/behospitalized/BEH0053.java

@@ -3,10 +3,13 @@ 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.doc.BeHospitalizedDoc;
 import com.lantone.qc.pub.model.entity.Marryiage;
 import com.lantone.qc.pub.util.StringUtil;
 import org.springframework.stereotype.Component;
 
+import java.util.Map;
+
 /**
  * @Description: 结婚年龄未描述
  * @author: rengb
@@ -17,12 +20,20 @@ public class BEH0053 extends QCCatalogue {
 
     @Override
     public void start(InputInfo inputInfo, OutputInfo outputInfo) {
-        if (inputInfo.getBeHospitalizedDoc().getMaritalLabel() == null
-                || StringUtil.isBlank(inputInfo.getBeHospitalizedDoc().getMaritalLabel().getText())) {
+        BeHospitalizedDoc beHospitalizedDoc = inputInfo.getBeHospitalizedDoc();
+        //先取一次结构化数据
+        Map<String, String> beHospitalizedStructureMap = beHospitalizedDoc.getStructureMap();
+        String marryiAgeStr = beHospitalizedStructureMap.get("结婚年龄");
+        if (StringUtil.isNotBlank(marryiAgeStr)){
+            status.set("0");
+        }
+
+        if (beHospitalizedDoc.getMaritalLabel() == null
+                || StringUtil.isBlank(beHospitalizedDoc.getMaritalLabel().getText())) {
             status.set("0");
         }
 
-        Marryiage marryiage = inputInfo.getBeHospitalizedDoc().getMaritalLabel().getMarryiage();
+        Marryiage marryiage = beHospitalizedDoc.getMaritalLabel().getMarryiage();
         if (marryiage != null && StringUtil.isNotBlank(marryiage.getName())) {
             status.set("0");
         }

+ 8 - 4
kernel/src/main/java/com/lantone/qc/kernel/catalogue/firstpagerecord/FIRP0186.java

@@ -1,10 +1,10 @@
 package com.lantone.qc.kernel.catalogue.firstpagerecord;
 
 import com.lantone.qc.kernel.catalogue.QCCatalogue;
-import com.lantone.qc.kernel.util.CatalogueUtil;
 import com.lantone.qc.pub.Content;
 import com.lantone.qc.pub.model.InputInfo;
 import com.lantone.qc.pub.model.OutputInfo;
+import com.lantone.qc.pub.model.doc.DeathRecordDoc;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.stereotype.Component;
 
@@ -19,12 +19,16 @@ import java.util.Map;
 @Component
 public class FIRP0186 extends QCCatalogue {
     public void start(InputInfo inputInfo, OutputInfo outputInfo) {
-        status.set("0");
+        DeathRecordDoc deathRecordDoc = inputInfo.getDeathRecordDoc();
+        if (deathRecordDoc == null) {
+            status.set("0");
+            return;
+        }
         if (inputInfo.getFirstPageRecordDoc() != null && inputInfo.getFirstPageRecordDoc().getStructureMap() != null) {
             Map<String, String> firstpageStructureMap = inputInfo.getFirstPageRecordDoc().getStructureMap();
-//            String outWay = firstpageStructureMap.get(Content.outWay).toString();
+            //String outWay = firstpageStructureMap.get(Content.outWay).toString();
             String deadAutopsy = firstpageStructureMap.get(Content.deadAutopsy);
-            if (StringUtils.isEmpty(deadAutopsy)){
+            if (StringUtils.isEmpty(deadAutopsy)) {
                 status.set("-1");
             }
         }

+ 13 - 8
kernel/src/main/java/com/lantone/qc/kernel/catalogue/firstpagerecord/FIRP0272.java

@@ -9,6 +9,7 @@ import com.lantone.qc.pub.model.doc.FirstPageRecordDoc;
 import com.lantone.qc.pub.model.doc.LeaveHospitalDoc;
 import com.lantone.qc.pub.model.entity.Diag;
 import com.lantone.qc.pub.model.label.DiagLabel;
+import com.lantone.qc.pub.util.ListUtil;
 import org.springframework.stereotype.Component;
 
 import java.util.List;
@@ -26,14 +27,18 @@ public class FIRP0272 extends QCCatalogue {
         LeaveHospitalDoc leaveHospitalDoc = inputInfo.getLeaveHospitalDoc();
         FirstPageRecordDoc firstPageRecordDoc = inputInfo.getFirstPageRecordDoc();
         if (leaveHospitalDoc != null && firstPageRecordDoc != null) {
-            DiagLabel leaveDiagLabel = leaveHospitalDoc.getLeaveDiagLabel();
-            if (leaveDiagLabel != null) {
-                //出院诊断
-                List<Diag> diags = leaveDiagLabel.getDiags();
-                Map<String, Object> firstPageMap = firstPageRecordDoc.getStructureExtMap();
-                if (firstPageMap != null) {
-                    List<String> outDiags = (List<String>) firstPageMap.get(Content.dischargeDiag);
-                    if (outDiags != null && diags != null) {
+            Map<String, Object> firstPageMap = firstPageRecordDoc.getStructureExtMap();
+            if (firstPageMap != null) {
+                List<String> outDiags = (List<String>) firstPageMap.get(Content.dischargeDiag);
+                if (ListUtil.isEmpty(outDiags)) {
+                    status.set("0");
+                    return;
+                }
+                DiagLabel leaveDiagLabel = leaveHospitalDoc.getLeaveDiagLabel();
+                if (leaveDiagLabel != null) {
+                    //出院诊断
+                    List<Diag> diags = leaveDiagLabel.getDiags();
+                    if (diags != null) {
                         if (outDiags.size() == diags.size() && outDiags.containsAll(diags)) {
                             status.set("0");
                         }

+ 18 - 18
kernel/src/main/java/com/lantone/qc/kernel/structure/ai/LeaveHospitalAI.java

@@ -36,29 +36,29 @@ public class LeaveHospitalAI extends ModelAI {
         if (leaveHospitalDoc != null && StringUtils.isNotEmpty(leaveHospitalDoc.getText())) {
             //出院小结全部文本(之后考虑删除传全部文本,改为传相应结构化文本)
             putContent(crfContent, medicalTextType.get(0), leaveHospitalDoc.getText(), Content.discharge);
-
-            Map<String, String> leaveHospitalStructureMap = leaveHospitalDoc.getStructureMap();
-            if (leaveHospitalStructureMap != null) {
-//                //入院情况
-//                if (leaveHospitalStructureMap.get(Content.inStatus) != null) {
-//                    putContent(crfContent, medicalTextType.get(1), leaveHospitalStructureMap.get(Content.inStatus), Content.inStatus);
-//                }
-                //出院诊断
-                if (leaveHospitalStructureMap.get(Content.dischargeDiag) != null) {
-                    putContent(crfContent, medicalTextType.get(1), leaveHospitalStructureMap.get(Content.dischargeDiag), Content.dischargeDiag);
-                }
+        }
+        Map<String, String> leaveHospitalStructureMap = leaveHospitalDoc.getStructureMap();
+        if (leaveHospitalStructureMap != null) {
+            //                //入院情况
+            //                if (leaveHospitalStructureMap.get(Content.inStatus) != null) {
+            //                    putContent(crfContent, medicalTextType.get(1), leaveHospitalStructureMap.get(Content.inStatus), Content.inStatus);
+            //                }
+            //出院诊断
+            if (leaveHospitalStructureMap.get(Content.dischargeDiag) != null) {
+                putContent(crfContent, medicalTextType.get(1), leaveHospitalStructureMap.get(Content.dischargeDiag), Content.dischargeDiag);
             }
+        }
 
-            JSONObject midData = loadAI(crfContent, crfServiceClient);//crf返回数据
-            if (midData.containsKey(Content.discharge)) {
-                putDischargeCrfData(midData.getJSONObject(Content.discharge), inputInfo);//出院小结
-            }
-            if (midData.containsKey(Content.dischargeDiag)) {
-                putDischargeCrfData(midData.getJSONObject(Content.dischargeDiag), inputInfo);//出院诊断
-            }
+        JSONObject midData = loadAI(crfContent, crfServiceClient);//crf返回数据
+        if (midData.containsKey(Content.discharge)) {
+            putDischargeCrfData(midData.getJSONObject(Content.discharge), inputInfo);//出院小结
+        }
+        if (midData.containsKey(Content.dischargeDiag)) {
+            putDischargeCrfData(midData.getJSONObject(Content.dischargeDiag), inputInfo);//出院诊断
         }
     }
 
+
     /**
      * 病历特点
      *