Parcourir la source

运政接口-增加入参参数校验

15810770710@163.com il y a 3 ans
Parent
commit
d2e6dad440

+ 33 - 0
src/main/java/info/aspirecn/iov/yysj/check/info/common/TransferParam.java

@@ -415,6 +415,11 @@ public class TransferParam {
 		} else if (!pattern.matcher(qualificationCertificateTo).matches()) {
 			errorList.add(Constants.driver_qualificationCertificateTo);
 		}
+		if (!checkStartEndTime(qualificationCertificateFrom, qualificationCertificateTo)) {
+			errorList.add(Constants.driver_qualificationCertificateFrom);
+			errorList.add(Constants.driver_qualificationCertificateTo);
+		}
+
 		if (StringUtils.isEmpty(drivingLicense)) {
 			emptyList.add(Constants.driver_drivingLicense);
 		} else if (!checkIdCode(drivingLicense)) {
@@ -452,6 +457,8 @@ public class TransferParam {
 		}
 		if (StringUtils.isEmpty(roadTransportCertificateNumber)) {
 			emptyList.add(Constants.car_roadTransport);
+		} else if (roadTransportCertificateNumber.length() > 18) {
+			errorList.add(Constants.car_roadTransport);
 		}
 		if (StringUtils.isEmpty(vehiclePlateColorCode)) {
 			emptyList.add(Constants.car_vehiclePlateColorCode);
@@ -468,6 +475,11 @@ public class TransferParam {
 		} else if (!pattern.matcher(roadTransportCertificateValidPeriodTo).matches()) {
 			errorList.add(Constants.car_roadTransportCertificateValidPeriodTo);
 		}
+
+		if (!checkStartEndTime(roadTransportCertificateValidPeriodFrom, roadTransportCertificateValidPeriodTo)) {
+			errorList.add(Constants.car_roadTransportCertificateValidPeriodFrom);
+			errorList.add(Constants.car_roadTransportCertificateValidPeriodTo);
+		}
 		if (emptyList.size() == 0 && errorList.size() == 0) {
 			Map<String, Object> vehicleInfoMap = new HashMap<String, Object>();
 			vehicleInfoMap.put(Constants.clyyyz_vehicleNumber, vehicleNumber);
@@ -494,6 +506,8 @@ public class TransferParam {
 		}
 		if (StringUtils.isEmpty(permitNumber)) {
 			emptyList.add(Constants.bill_permitNumber);
+		} else if (permitNumber.length() > 18) {
+			errorList.add(Constants.bill_permitNumber);
 		}
 
 		if(StringUtils.isEmpty(permitValidPeriodFrom)){
@@ -506,6 +520,11 @@ public class TransferParam {
 		} else if(!pattern.matcher(permitValidPeriodTo).matches()){
 			errorList.add(Constants.bill_permitValidPeriodTo);
 		}
+
+		if (!checkStartEndTime(permitValidPeriodFrom, permitValidPeriodTo)) {
+			errorList.add(Constants.bill_permitValidPeriodFrom);
+			errorList.add(Constants.bill_permitValidPeriodTo);
+		}
 //		if(StringUtils.isEmpty(unifiedSocialCreditIdentifier)){
 //			emptyList.add(Constants.bill_unifiedSocialCreditIdentifier);
 //		}
@@ -1332,6 +1351,20 @@ public class TransferParam {
 		Pattern namePattern = Pattern.compile(NAME_REGEX);
 		return namePattern.matcher(name).matches();
 	}
+
+	public boolean checkStartEndTime(String startTime, String endTime) {
+		SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMdd");
+		try {
+			long startTimestamp = simpleDateFormat.parse(startTime).getTime();
+			long endTimestamp = simpleDateFormat.parse(endTime).getTime();
+			if (startTimestamp > endTimestamp) {
+				return false;
+			}
+		} catch (ParseException pe) {
+			log.error("checkStartEndTime.ParseException:", pe);
+		}
+		return true;
+	}
 	public static void main(String[] args) {
 		String certificateNumberReg = "[0-9a-zA-Z]{1,20}";
 		Pattern certificateNumberPattern = Pattern.compile(certificateNumberReg);