Просмотр исходного кода

接口增加日期规则不合法校验20230104

mashengyi 2 лет назад
Родитель
Сommit
5cdbcef3eb

+ 9 - 0
src/main/java/com/jkcredit/invoice/credit/interserver/CustomerInterLowerServiceImpl.java

@@ -280,6 +280,15 @@ public class CustomerInterLowerServiceImpl implements CustomerInterLowerService
                 return  result;
             }
 
+            if(!DateUtil.isValidDate(serviceStartTime)){
+                result.setMsg("日期格式有误");
+                return  result;
+            }
+            if(!DateUtil.isValidDate(serviceEndTime)){
+                result.setMsg("日期格式有误");
+                return  result;
+            }
+
 
 
 

+ 37 - 0
src/main/java/com/jkcredit/invoice/credit/interserver/NoCarInterServiceImpl.java

@@ -271,6 +271,16 @@ public class NoCarInterServiceImpl implements NoCarInterService {
                 result.setMsg("必传参数有空值");
                 return  result;
             }
+
+            if(!DateUtil.isValidDate(startTime)){
+                result.setMsg("日期格式有误");
+                return  result;
+            }
+            if(!DateUtil.isValidDate(predictEndTime)){
+                result.setMsg("日期格式有误");
+                return  result;
+            }
+
             CustomerRec customerRec = new CustomerRec();
             customerRec.setCustomerName(appKey);
             customerRec.setCompanyReferencenum(taxplayerCode);
@@ -380,6 +390,13 @@ public class NoCarInterServiceImpl implements NoCarInterService {
                 result.setMsg("必传参数有空值");
                 return  result;
             }
+
+            if(!DateUtil.isValidDate(endTime)){
+                result.setMsg("日期格式有误");
+                return  result;
+            }
+
+
             NoCarWayBill noCarWayBill = new NoCarWayBill();
             noCarWayBill.setCustomerName(appKey);
             noCarWayBill.setBillNum(num);
@@ -462,6 +479,17 @@ public class NoCarInterServiceImpl implements NoCarInterService {
                 return  result;
             }
 
+
+            if(!DateUtil.isValidDate(startTime)){
+                result.setMsg("日期格式有误");
+                return  result;
+            }
+
+            if(!DateUtil.isValidDate(predictEndTime)){
+                result.setMsg("日期格式有误");
+                return  result;
+            }
+
             CustomerRec customerRec = new CustomerRec();
             customerRec.setCustomerName(appKey);
             customerRec.setCompanyReferencenum(taxplayerCode);
@@ -584,6 +612,15 @@ public class NoCarInterServiceImpl implements NoCarInterService {
                 result.setMsg("有空的必填运单要素,请检查");
                 return  result;
             }
+
+
+
+            if(!DateUtil.isValidDate(endTime)){
+                result.setMsg("日期格式有误");
+                return  result;
+            }
+
+
             NoCarWayBill noCarWayBill = new NoCarWayBill();
             noCarWayBill.setBillNum(num);
             noCarWayBill.setDestAddr(realDestAddr);

+ 20 - 0
src/main/java/com/jkcredit/invoice/credit/interserver/SelfCarInterServiceImpl.java

@@ -420,6 +420,16 @@ public class SelfCarInterServiceImpl implements SelfCarInterService {
                 return  result;
             }
 
+            if(!DateUtil.isValidDate(startExTime)){
+                result.setMsg("日期格式有误");
+                return  result;
+            }
+
+            if(!DateUtil.isValidDate(endExTime)){
+                result.setMsg("日期格式有误");
+                return  result;
+            }
+
             CustomerRec customerRec = new CustomerRec();
             customerRec.setCustomerName(appKey);
             customerRec.setCompanyNum(companyNum);
@@ -680,6 +690,16 @@ public class SelfCarInterServiceImpl implements SelfCarInterService {
                 return  result;
             }
 
+            if(!DateUtil.isValidDate(startInvoiceMakeTime)){
+                result.setMsg("日期格式有误");
+                return  result;
+            }
+
+            if(!DateUtil.isValidDate(endInvoiceMakeTime)){
+                result.setMsg("日期格式有误");
+                return  result;
+            }
+
             CustomerRec customerRec = new CustomerRec();
             customerRec.setCustomerName(appKey);
             customerRec.setCompanyNum(companyNum);

+ 28 - 2
src/main/java/com/jkcredit/invoice/util/DateUtil.java

@@ -330,9 +330,13 @@ public class DateUtil {
         return hours;
     }
     public static void main(String [] args){
-       // System.out.print(getDateAfterDays("2021-10-31",1));;
 
-        System.out.println(DateUtil.getDistanceHoursTwo("2022-02-26 09:02:26","2022-03-01 09:02:58"));
+        System.out.println(getDistanceHoursFormat("2022-11-31T23:59:59"));
+
+        System.out.println(isValidDate("2022-12-01T23:59:59"));
+        System.out.println(isValidDate("2022-11-31T23:59:59"));
+
+       // System.out.println(DateUtil.getDistanceHoursTwo("2022-02-26 09:02:26","2022-03-01 09:02:58"));
     }
 
 
@@ -359,6 +363,8 @@ public class DateUtil {
 
 
 
+
+
     private static String[] parsePatterns = {"yyyy-MM"};
 
     public static Date parseDate(String str) {
@@ -373,6 +379,26 @@ public class DateUtil {
     }
 
 
+
+    public static boolean isValidDate(String str) {
+        boolean convertSuccess=true;
+         // 指定日期格式为四位年/两位月份/两位日期,注意yyyy/MM/dd区分大小写;
+
+        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
+        try {
+        // 设置lenient为false. 否则SimpleDateFormat会比较宽松地验证日期,
+        //比如2007/02/29会被接受,并转换成2007/03/01
+            format.setLenient(false);
+            format.parse(str);
+        } catch (ParseException e) {
+            // e.printStackTrace();
+            // 如果throw java.text.ParseException或者NullPointerException,就说明格式不对
+            convertSuccess=false;
+        }
+        return convertSuccess;
+    }
+
+
 }