try {
if (null != recordSingle && null != recordSingle.getStartTime() && null != recordSingle.getEndTime()) {
Date startTime = recordSingle.getStartTime();
Date endTime = recordSingle.getEndTime();
// 定义日期格式
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
// 格式化日期
String strStartTime = sdf.format(startTime);
String strEndTime = sdf.format(endTime);
String pattern = "yyyy-MM-dd HH:mm:ss";
DateTimeFormatter formatterDate = DateTimeFormatter.ofPattern(pattern);
LocalDateTime date1 = LocalDateTime.parse(strStartTime.trim(), formatterDate);
LocalDateTime date2 = LocalDateTime.parse(strEndTime.trim(), formatterDate);
if (date1.isAfter(date2)) {
return Result.error("生效日期晚于截止日期!");
}
// 获取两个日期对应的毫秒数
long time1 = startTime.getTime();
long time2 = endTime.getTime();
// 计算两个日期的毫秒数差值
long diff = Math.abs(time2 - time1);
// 计算 30 天对应的毫秒数
long thirtyDaysInMillis = 30L * 24 * 60 * 60 * 1000;
// 判断差值是否在 30 天对应的毫秒数范围内
boolean isWithin30Days = diff <= thirtyDaysInMillis;
if (!isWithin30Days) {
return Result.error("截止日期不能超过生效日期30天,请重新录入日期!");
}
}
} catch (Exception e) {
}
11-11
1803

07-16
2万+
