Forráskód Böngészése

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

# Conflicts:
#	kernel/src/main/java/com/lantone/qc/kernel/util/CatalogueUtil.java
rengb 5 éve
szülő
commit
0642f5a7b5

+ 4 - 0
kernel/src/main/java/com/lantone/qc/kernel/catalogue/firstpagerecord/FIRP0187.java

@@ -27,6 +27,10 @@ public class FIRP0187 extends QCCatalogue {
         Map<String, String> firstpageStructureMap = inputInfo.getFirstPageRecordDoc().getStructureMap();
         String outWay = firstpageStructureMap.get(Content.outWay);
         String deadAutopsy = firstpageStructureMap.get(Content.deadAutopsy);
+        if(CatalogueUtil.isSpecialChar(deadAutopsy)){
+            status.set("0");
+            return;
+        }
         if (StringUtils.isEmpty(outWay) && StringUtils.isEmpty(deadAutopsy)) {
             status.set("0");
             return;

+ 9 - 0
kernel/src/main/java/com/lantone/qc/kernel/catalogue/firstpagerecord/FIRP0196.java

@@ -18,6 +18,10 @@ import java.util.Map;
 @Component
 public class FIRP0196 extends QCCatalogue {
     public void start(InputInfo inputInfo, OutputInfo outputInfo) {
+        /**
+         * 如果入院前天数且入院前天数不为空,且不是数字,例如是“-”,就不报错
+         * 如果天数是数字,那么小时和分都不能为空
+         */
         status.set("0");
         if (inputInfo.getFirstPageRecordDoc() != null && inputInfo.getFirstPageRecordDoc().getStructureMap() != null) {
             Map<String, String> firstpageStructureMap = inputInfo.getFirstPageRecordDoc().getStructureMap();
@@ -27,6 +31,11 @@ public class FIRP0196 extends QCCatalogue {
             String brainInjuryComaAfterDays = firstpageStructureMap.get(Content.brainInjuryComaAfterDays);
             String brainInjuryComaAfterHours = firstpageStructureMap.get(Content.brainInjuryComaAfterHours);
             String brainInjuryComaAfterMins = firstpageStructureMap.get(Content.brainInjuryComaAfterMins);
+            String regex = "([1-9]\\d*\\.?\\d*)|(0\\.\\d*[1-9])";
+            if (StringUtil.isNotBlank(brainInjuryComaBeforeDays) && !brainInjuryComaBeforeDays.matches(regex)
+                && StringUtil.isNotBlank(brainInjuryComaAfterDays) && !brainInjuryComaAfterDays.matches(regex)) {
+                return ;
+            }
             if (StringUtil.isBlank(brainInjuryComaBeforeDays)
                     || StringUtil.isBlank(brainInjuryComaBeforeHours)
                     || StringUtil.isBlank(brainInjuryComaBeforeMins)

+ 7 - 0
kernel/src/main/java/com/lantone/qc/kernel/catalogue/firstpagerecord/FIRP0273.java

@@ -1,6 +1,7 @@
 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;
@@ -18,11 +19,17 @@ import java.util.Map;
 @Component
 public class FIRP0273 extends QCCatalogue {
     public void start(InputInfo inputInfo, OutputInfo outputInfo) {
+        /**
+         * 跟任燕青确认如果天数是“-”,则不报错
+         */
         status.set("0");
         if (inputInfo.getFirstPageRecordDoc() != null && inputInfo.getFirstPageRecordDoc().getStructureMap() != null) {
             Map<String, String> firstpageStructureMap = inputInfo.getFirstPageRecordDoc().getStructureMap();
             String infantAgeMonths = firstpageStructureMap.get(Content.newbornAgeMonths);
             String infantAgeDays = firstpageStructureMap.get(Content.newbornAgeDays);
+            if (CatalogueUtil.isSpecialChar(infantAgeMonths)) {
+                return ;
+            }
             if (StringUtil.isNotBlank(infantAgeMonths) && Integer.parseInt(infantAgeMonths) > 0) {
                 status.set("-1");
             }

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

@@ -495,6 +495,18 @@ public class CatalogueUtil {
         return infoStr;
     }
 
+    /**
+     * 判断是否是特殊字符:“-”,“/”,"\"
+     * @param str
+     * @return
+     */
+    public static Boolean isSpecialChar(String str) {
+        if( ("-").equals(str) || ("\\").equals(str) || ("/").equals(str)){
+            return true;
+        }
+        return false;
+    }
+
     /**
      * 获取医生职称 主治  主任......
      *