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

规则基类修改

rengb 5 éve
szülő
commit
fdd17ab464

+ 24 - 12
kernel/src/main/java/com/lantone/qc/kernel/catalogue/QCCatalogue.java

@@ -1,10 +1,11 @@
 package com.lantone.qc.kernel.catalogue;
 
+import com.google.common.collect.Maps;
 import com.lantone.qc.kernel.util.CatalogueUtil;
 import com.lantone.qc.pub.model.InputInfo;
 import com.lantone.qc.pub.model.OutputInfo;
+import lombok.extern.slf4j.Slf4j;
 
-import java.util.HashMap;
 import java.util.Map;
 
 /**
@@ -13,33 +14,44 @@ import java.util.Map;
  * @Author : 楼辉荣
  * @Date: 2020-03-04 11:24
  */
+@Slf4j
 public class QCCatalogue {
 
     protected String status = "-1";
-    protected Map<String, String> resultDetail;
+    protected String info = "";
+    private Map<String, String> resultDetail = Maps.newHashMap();
     private String className = this.getClass().getSimpleName();
 
     public QCCatalogue() {
         CatalogueUtil.qcCatalogueMap.put(className, this);
     }
 
-    /**
-     * @return 如
-     * {
-     * "BEH001":{"status":"-1", "info": "发热"}
-     * }
-     */
     public void execute(InputInfo inputInfo, OutputInfo outputInfo) {
         if (outputInfo.getResult().get(className) != null) {
             return;
         }
-        resultDetail = new HashMap<>();
-        resultDetail.put("info", "");
-        start(inputInfo, outputInfo);
-        outputInfo.getResult().put(className, resultDetail);
+        try {
+            start(inputInfo, outputInfo);
+        } catch (Exception e) {
+            propertiesClear();
+            log.info(e.getMessage());
+        }
+        insertOpt(outputInfo);
     }
 
     protected void start(InputInfo inputInfo, OutputInfo outputInfo) {
     }
 
+    private void insertOpt(OutputInfo outputInfo) {
+        resultDetail.put("info", info);
+        resultDetail.put("status", status);
+        outputInfo.getResult().put(className, resultDetail);
+        propertiesClear();
+    }
+
+    private void propertiesClear() {
+        status = "-1";
+        info = "";
+    }
+
 }

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

@@ -18,7 +18,7 @@ public class BEH0045 extends QCCatalogue {
     @Override
     public void start(InputInfo inputInfo, OutputInfo outputInfo) {
         MaritalHistory maritalHistory = inputInfo.getBeHospitalizedDoc().getPersonalLabel().getMaritalHistory();
-        if (maritalHistory == null || StringUtil.isBlank(maritalHistory.getName())) {
+        if (maritalHistory != null && StringUtil.isNotBlank(maritalHistory.getName())) {
             status = "0";
         }
     }

+ 6 - 0
public/src/main/java/com/lantone/qc/pub/model/OutputInfo.java

@@ -15,5 +15,11 @@ import java.util.Map;
 @Setter
 @Getter
 public class OutputInfo {
+    /**
+     * 如
+     * {
+     * "BEH001":{"status":"-1", "info": "发热"}
+     * }
+     */
     private Map<String, Map<String, String>> result = new HashMap<>();
 }