瀏覽代碼

客户运单上传模版校验优化20220515

mashengyi 2 年之前
父節點
當前提交
188968531b
共有 1 個文件被更改,包括 48 次插入9 次删除
  1. 48 9
      src/main/java/com/jkcredit/invoice/controller/business/NoCarController.java

+ 48 - 9
src/main/java/com/jkcredit/invoice/controller/business/NoCarController.java

@@ -459,8 +459,31 @@ public class NoCarController {
         StringBuffer sb = new StringBuffer();
         DateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
         int i = 0;
-        for(NoCarWayBill noCarWayBill:list){
+        String strError = "";
+        for(int j = 0 ;j<list.size();j++){
+
+            NoCarWayBill noCarWayBill = list.get(j);
             try {
+                if(null == noCarWayBill){
+
+                    log.error("buildDateError"+sb.toString()+"第"+(j+1)+"行数据存在错误,请检查数据是否未传递");
+                    strError =  "第"+(j+1)+"行数据存在错误,请检查数据是否未传递";
+                    throw new RuntimeException("第"+(j+1)+"行数据存在错误,请检查数据是否未传递");
+                }
+                if(org.apache.commons.lang3.StringUtils.isBlank(noCarWayBill.getBillNum())
+                        || org.apache.commons.lang3.StringUtils.isBlank(noCarWayBill.getPlateNum())
+                        || org.apache.commons.lang3.StringUtils.isBlank(noCarWayBill.getPlateColor())
+                        || null == noCarWayBill.getStartTimeDate()
+                        || null == noCarWayBill.getPredictEndTimeDate()
+                        || org.apache.commons.lang3.StringUtils.isBlank(noCarWayBill.getSourceAddr())
+                        || org.apache.commons.lang3.StringUtils.isBlank(noCarWayBill.getDestAddr())
+                        || null == noCarWayBill.getFeeD()
+                        || org.apache.commons.lang3.StringUtils.isBlank(noCarWayBill.getTaxplayerCode())){
+                    log.error("buildDateError"+sb.toString()+"第"+(j+1)+"行数据存在错误,请检查必输项是否未输入或者输入是否正确");
+                    strError =   "第"+(j+1)+"行数据存在错误,请检查必输项是否未输入或者输入是否正确";
+                    throw new RuntimeException("第"+(j+1)+"行数据存在错误,请检查必输项是否未输入或者输入是否正确");
+
+                }
                 noCarWayBill.setStartTime(format.format(noCarWayBill.getStartTimeDate()));
                 noCarWayBill.setPredictEndTime(format.format(noCarWayBill.getPredictEndTimeDate()));
                 if(noCarWayBill.getFeeD() !=null){
@@ -470,35 +493,51 @@ public class NoCarController {
                 noCarWayBill.setBillNum(noCarWayBill.getBillNum().trim());
             }catch (Exception e){
                 sb.append(noCarWayBill.getBillNum()+"#");
-                log.info(noCarWayBill.getBillNum());
+                log.error(noCarWayBill.getBillNum());
                 i++;
             }
 
         }
         if(i>0){
-
-            log.info("buildDateError"+sb.toString()+"数据存在错误,请检查文件中数据,金额是否有空的,时间是否全是时间格式");
-            throw new RuntimeException(sb.toString()+"数据存在错误,请检查文件中数据,金额是否有空的,时间是否全是时间格式");
+            log.error(org.apache.commons.lang3.StringUtils.isBlank(strError)?"buildDateError"+sb.toString()+"第"+i+"行数据存在错误,请检查文件中数据,金额是否有空的,时间是否全是时间格式":"buildDateError"+sb.toString()+strError);
+            throw new RuntimeException(org.apache.commons.lang3.StringUtils.isBlank(strError)?"第"+i+"行数据存在错误,请检查文件中数据,金额是否有空的,时间是否全是时间格式":strError);
         }
     }
     public void buildDateEnd(List<NoCarWayBill> list){
         DateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
         int i = 0;
         StringBuffer sb = new StringBuffer();
-        for(NoCarWayBill noCarWayBill:list){
+        String strError = "";
+        for(int j = 0 ;j<list.size();j++){
+            NoCarWayBill noCarWayBill = list.get(j);
+
             try{
+                if(null == noCarWayBill){
+                    log.error("buildDateError"+sb.toString()+"第"+(j+1)+"行数据存在错误,请检查数据是否未传递");
+                    strError =  "第"+(j+1)+"行数据存在错误,请检查数据是否未传递";
+                    throw new RuntimeException("第"+(j+1)+"行数据存在错误,请检查数据是否未传递");
+                }
+
+                if(org.apache.commons.lang3.StringUtils.isBlank(noCarWayBill.getBillNum())
+                        || null == noCarWayBill.getActEndTimeDate()
+                        || org.apache.commons.lang3.StringUtils.isBlank(noCarWayBill.getDestAddr())){
+                    log.error("buildDateError"+sb.toString()+"第"+(j+1)+"行数据存在错误,请检查必输项是否未输入或者输入是否正确");
+                    strError =   "第"+(j+1)+"行数据存在错误,请检查必输项是否未输入或者输入是否正确";
+                    throw new RuntimeException("第"+(j+1)+"行数据存在错误,请检查必输项是否未输入或者输入是否正确");
+                }
+
                 noCarWayBill.setPredictEndTime(format.format(noCarWayBill.getActEndTimeDate()));
             }catch (Exception e){
                 sb.append(noCarWayBill.getBillNum()+"#");
-                log.info(noCarWayBill.getBillNum());
+                log.error(noCarWayBill.getBillNum());
                 i++;
             }
 
         }
         if(i>0){
 
-            log.info("buildDateEndError"+sb.toString()+"数据存在错误,请检查文件中数据,金额是否有空的,时间是否全是时间格式");
-            throw new RuntimeException(sb.toString()+"数据存在错误,请检查文件中数据,金额是否有空的,时间是否全是时间格式");
+            log.error(org.apache.commons.lang3.StringUtils.isBlank(strError)?"buildDateError"+sb.toString()+"第"+i+"行数据存在错误,请检查文件中数据,时间是否全是时间格式":"buildDateError"+sb.toString()+strError);
+            throw new RuntimeException(org.apache.commons.lang3.StringUtils.isBlank(strError)?"第"+i+"行数据存在错误,请检查文件中数据,时间是否全是时间格式":strError);
         }
     }
     /**