Explorar el Código

添加非空判断,修改bug

hujing hace 5 años
padre
commit
962a7fc3be

+ 12 - 11
kernel/src/main/java/com/lantone/qc/kernel/catalogue/consultation/CON0526.java

@@ -6,10 +6,10 @@ import com.lantone.qc.pub.model.OutputInfo;
 import com.lantone.qc.pub.model.doc.consultation.ConsultationApplicationDoc;
 import com.lantone.qc.pub.model.doc.consultation.ConsultationDoc;
 import com.lantone.qc.pub.model.doc.consultation.ConsultationResultsDoc;
+import com.lantone.qc.pub.util.StringUtil;
 import org.springframework.stereotype.Component;
 
 import java.text.ParseException;
-import java.text.SimpleDateFormat;
 import java.util.Date;
 import java.util.List;
 import java.util.Map;
@@ -22,29 +22,30 @@ import java.util.Map;
  */
 @Component
 public class CON0526 extends QCCatalogue {
-    public static String FORMAT_LONC_CN_MI = "yyyy/MM/dd HH:mm";
-    public void start(InputInfo inputInfo, OutputInfo outputInfo)throws ParseException {
-
+    public void start(InputInfo inputInfo, OutputInfo outputInfo) throws ParseException {
         status.set("0");
         List<ConsultationDoc> consultationDocs = inputInfo.getConsultationDocs();
-        if(consultationDocs.size()>0){
-            for (ConsultationDoc consulation:consultationDocs) {
+        if (consultationDocs.size() > 0) {
+            for (ConsultationDoc consulation : consultationDocs) {
                 ConsultationApplicationDoc consultationApplicationDoc = consulation.getConsultationApplicationDoc();
                 ConsultationResultsDoc consultationResultsDoc = consulation.getConsultationResultsDoc();
                 Map<String, String> applicationMap = consultationApplicationDoc.getStructureMap();
                 Map<String, String> resultMap = consultationResultsDoc.getStructureMap();
-                if(applicationMap != null && resultMap != null){
+                if (applicationMap != null && resultMap != null) {
                     String applicationDate = applicationMap.get("申请日期");
                     String resultDate = resultMap.get("会诊到达时间");
-                    if(applicationDate != null && resultDate != null){
-                        Date date_in = new SimpleDateFormat(FORMAT_LONC_CN_MI).parse(applicationDate);
-                        Date date_out = new SimpleDateFormat(FORMAT_LONC_CN_MI).parse(resultDate);
+                    if (applicationDate != null && resultDate != null) {
+                        Date date_in = StringUtil.parseDateTime(applicationDate);
+                        Date date_out = StringUtil.parseDateTime(resultDate);
+                        if (date_in == null || date_out == null) {
+                            return;
+                        }
                         long times = date_out.getTime() - date_in.getTime();
                         long day = times / (24 * 60 * 60 * 1000);
                         long hour = (times / (60 * 60 * 1000) - day * 24);
                         long min = ((times / (60 * 1000)) - day * 24 * 60 - hour * 60);
                         long min1 = ((times / (60 * 1000)) - day * 24 * 60 - hour * 60);
-                        if (min1>10) {
+                        if (min1 > 10) {
                             status.set("-1");
                         }
 

+ 4 - 0
kernel/src/main/java/com/lantone/qc/kernel/catalogue/crisisvaluereport/CRI0382.java

@@ -5,6 +5,7 @@ import com.lantone.qc.pub.model.InputInfo;
 import com.lantone.qc.pub.model.OutputInfo;
 import com.lantone.qc.pub.model.doc.CrisisValueReportDoc;
 import com.lantone.qc.pub.util.DateUtil;
+import com.lantone.qc.pub.util.ListUtil;
 import com.lantone.qc.pub.util.StringUtil;
 import org.springframework.stereotype.Component;
 
@@ -22,6 +23,9 @@ public class CRI0382 extends QCCatalogue {
     public void start(InputInfo inputInfo, OutputInfo outputInfo) {
         status.set("0");
         List<CrisisValueReportDoc> crisisValueReportDocs = inputInfo.getCrisisValueReportDocs();
+        if (ListUtil.isEmpty(crisisValueReportDocs)) {
+            return;
+        }
         String format = "yyyy年MM月dd日HH时mm分";
         int timeCha = 21600000;
         crisisValueReportDocs.forEach(crisisValueReportDoc -> {

+ 10 - 8
kernel/src/main/java/com/lantone/qc/kernel/catalogue/deathrecord/DEAR0561.java

@@ -5,10 +5,10 @@ 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.doc.FirstPageRecordDoc;
+import com.lantone.qc.pub.util.StringUtil;
 import org.springframework.stereotype.Component;
 
 import java.text.ParseException;
-import java.text.SimpleDateFormat;
 import java.util.Date;
 import java.util.Map;
 
@@ -20,7 +20,6 @@ import java.util.Map;
  */
 @Component
 public class DEAR0561 extends QCCatalogue {
-    public static String FORMAT_LONC_CN_MI = "yyyy/MM/dd HH:mm";
     public void start(InputInfo inputInfo, OutputInfo outputInfo) throws ParseException {
         status.set("0");
         if (inputInfo.getDeathRecordDoc() != null && inputInfo.getDeathRecordDoc().getStructureMap() != null) {
@@ -28,14 +27,17 @@ public class DEAR0561 extends QCCatalogue {
             if (!CatalogueUtil.isEmpty(deathRecordStructureMap.get("死亡时间"))) {
                 String deathDate = deathRecordStructureMap.get("死亡时间");
                 FirstPageRecordDoc firstPageRecordDoc = inputInfo.getFirstPageRecordDoc();
-                if(firstPageRecordDoc != null && firstPageRecordDoc.getStructureMap() != null){
+                if (firstPageRecordDoc != null && firstPageRecordDoc.getStructureMap() != null) {
                     Map<String, String> firstPageMap = firstPageRecordDoc.getStructureMap();
                     String outDate = firstPageMap.get("出院时间");
-                    if(outDate != null && deathDate != null){
-                        Date date_in = new SimpleDateFormat(FORMAT_LONC_CN_MI).parse(deathDate);
-                        Date date_out = new SimpleDateFormat(FORMAT_LONC_CN_MI).parse(outDate);
-                        int hours = (int) ((date_out.getTime() - date_in.getTime()) / (1000*3600));
-                        if(hours >24){
+                    if (outDate != null && deathDate != null) {
+                        Date date_in = StringUtil.parseDateTime(deathDate);
+                        Date date_out = StringUtil.parseDateTime(outDate);
+                        if (date_in == null || date_out == null) {
+                            return;
+                        }
+                        int hours = (int) ((date_out.getTime() - date_in.getTime()) / (1000 * 3600));
+                        if (hours > 24) {
                             status.set("-1");
                         }
                     }

+ 0 - 3
kernel/src/main/java/com/lantone/qc/kernel/catalogue/dutyshiftsystem/DUT0296.java

@@ -20,9 +20,6 @@ import java.util.Map;
  */
 @Component
 public class DUT0296 extends QCCatalogue {
-    public static final String DATE_TIME_FORMAT_chanx = "yyyy-MM-dd HH:mm";
-    public static final String DATE_TIME_FORMAT_tz = "yyyy/MM/dd HH:mm:ss";
-
     public void start(InputInfo inputInfo, OutputInfo outputInfo) {
         status.set("0");