Преглед изворни кода

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

hujing пре 5 година
родитељ
комит
2afa48791a

+ 16 - 13
kernel/src/main/java/com/lantone/qc/kernel/catalogue/behospitalized/BEH0006.java

@@ -4,42 +4,45 @@ import com.lantone.qc.kernel.catalogue.QCCatalogue;
 import com.lantone.qc.kernel.util.CatalogueUtil;
 import com.lantone.qc.pub.model.InputInfo;
 import com.lantone.qc.pub.model.OutputInfo;
-import com.lantone.qc.pub.model.entity.Clinical;
 import com.lantone.qc.pub.model.entity.PD;
 import com.lantone.qc.pub.model.label.ChiefLabel;
-import org.apache.commons.lang3.StringUtils;
+import com.lantone.qc.pub.util.StringUtil;
 import org.springframework.stereotype.Component;
 
-import java.util.ArrayList;
 import java.util.List;
 
 
 /**
  * @ClassName : BEH0006
- * @Description :主诉症状缺少近期事件描述
+ * @Description :主诉症状缺少近期时间描述
  * @Author : 楼辉荣
  * @Date: 2020-03-06 17:28
  */
 @Component
 public class BEH0006 extends QCCatalogue {
     public void start(InputInfo inputInfo, OutputInfo outputInfo) {
-        if(inputInfo.getBeHospitalizedDoc() == null){
+        if (inputInfo.getBeHospitalizedDoc() == null) {
             status.set("0");
             return;
         }
         ChiefLabel chiefLabel = inputInfo.getBeHospitalizedDoc().getChiefLabel();
-        String chief_text = chiefLabel.getText();
-        if(chief_text.contains("检查") || chief_text.contains("术后") || chief_text.contains("药物")|| chief_text.contains("发现")){
+        if (chiefLabel == null) {
             status.set("0");
-        }else {
+            return;
+        }
+        String chiefText = chiefLabel.getText();
+        if (StringUtil.isNotBlank(chiefText) && (chiefText.contains("复查")
+                || chiefText.contains("检查") || chiefText.contains("术后") || chiefText.contains("药物") || chiefText.contains("发现"))) {
+            status.set("0");
+        } else {
             List<PD> pds = chiefLabel.getPds();
-            if(pds != null && pds.size()>0){
-                for (PD pd:pds) {
+            if (pds != null && pds.size() > 0) {
+                for (PD pd : pds) {
                     String pdName = pd.getName();
-                    if(!CatalogueUtil.isEmpty(pdName)){
-                        if(pdName.contains("天") || pdName.contains("周")|| pdName.contains("月")
+                    if (!CatalogueUtil.isEmpty(pdName)) {
+                        if (pdName.contains("天") || pdName.contains("周") || pdName.contains("月")
                                 || pdName.contains("时") || pdName.contains("半年") || pdName.contains("秒")
-                                || pdName.contains("日") || pdName.contains("今")){
+                                || pdName.contains("日") || pdName.contains("今")) {
                             status.set("0");
                             break;
                         }

+ 22 - 11
kernel/src/main/java/com/lantone/qc/kernel/catalogue/behospitalized/BEH0017.java

@@ -5,10 +5,11 @@ import com.lantone.qc.pub.model.InputInfo;
 import com.lantone.qc.pub.model.OutputInfo;
 import com.lantone.qc.pub.model.entity.Clinical;
 import com.lantone.qc.pub.model.entity.PD;
+import com.lantone.qc.pub.model.label.PresentLabel;
 import com.lantone.qc.pub.util.ListUtil;
+import com.lantone.qc.pub.util.StringUtil;
 import org.springframework.stereotype.Component;
 
-import java.util.ArrayList;
 import java.util.List;
 
 
@@ -25,23 +26,33 @@ public class BEH0017 extends QCCatalogue {
             status.set("0");
             return;
         }
-        List<Clinical> clinicals = inputInfo.getBeHospitalizedDoc().getPresentLabel().getClinicals();
+        PresentLabel presentLabel = inputInfo.getBeHospitalizedDoc().getPresentLabel();
+        if (presentLabel == null) {
+            status.set("0");
+            return;
+        }
+        String presentText = presentLabel.getText();
+        if (StringUtil.isNotBlank(presentText) && presentText.contains("复查")) {
+            status.set("0");
+            return;
+        }
+        List<Clinical> clinicals = presentLabel.getClinicals();
         if (clinicals.size() > 0) {
-            for (Clinical clinical:clinicals) {
+            for (Clinical clinical : clinicals) {
                 List<PD> timestamp = clinical.getTimestamp();
-                if (ListUtil.isNotEmpty(timestamp)){
+                if (ListUtil.isNotEmpty(timestamp)) {
                     status.set("0");
                     return;
                 }
             }
             //现病史取第一个症状
-//            Clinical clinical = clinicals.get(0);
-//            List<PD> timestamp = clinical.getTimestamp();
-//            if (timestamp == null) {
-//                info.set(clinical.getName());
-//            } else {
-//                status.set("0");
-//            }
+            //            Clinical clinical = clinicals.get(0);
+            //            List<PD> timestamp = clinical.getTimestamp();
+            //            if (timestamp == null) {
+            //                info.set(clinical.getName());
+            //            } else {
+            //                status.set("0");
+            //            }
         } else {
             status.set("0");
         }

+ 3 - 2
kernel/src/main/java/com/lantone/qc/kernel/catalogue/firstpagerecord/FIRP02907.java

@@ -1,9 +1,9 @@
 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.model.InputInfo;
 import com.lantone.qc.pub.model.OutputInfo;
+import com.lantone.qc.pub.util.StringUtil;
 import org.springframework.stereotype.Component;
 
 import java.util.Map;
@@ -24,7 +24,8 @@ public class FIRP02907 extends QCCatalogue {
         if (inputInfo.getFirstPageRecordDoc().getStructureMap() != null) {
             Map<String, String> firstpageStructureMap = inputInfo.getFirstPageRecordDoc().getStructureMap();
             String dischargeWard = firstpageStructureMap.get("出院病房");
-            if (!CatalogueUtil.isEmpty(dischargeWard)) {
+            String dischargeBedNum = firstpageStructureMap.get("出院床位序号");
+            if (StringUtil.isNotBlank(dischargeWard) || StringUtil.isNotBlank(dischargeBedNum)) {
                 status.set("0");
             }
         }

+ 1 - 1
public/src/main/java/com/lantone/qc/pub/Content.java

@@ -227,7 +227,7 @@ public class Content {
     public static final String brainInjuryComaAfterHours="颅脑损伤患者昏迷后小时";
     public static final String brainInjuryComaAfterMins="颅脑损伤患者昏迷后分钟";
     public static final String daCode="医嘱转院机构名称";
-    public static final String reHospitalization="31天内再住院计划";
+    public static final String reHospitalization="三十一天内再住院计划";