package com.cloudjoyclub.saas.test; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; /** * @Copyright * @ClassName TestDate * @Description TODO * @Author toString * @Date 2019/12/18 11:10 * @Version 1.0 */ public class TestDate { public static void main(String[] args) { //String timeStr1= LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")); String timeStr2="2019-12-18 11:27:00"; inputDate(timeStr2,"1"); } /** * @Author toString * @Description 校验时间范围 * @Date 2019/12/18 11:37 * @Param timeStr2 需要查询的时间 type 1日 2周 3月 4年 * @return void **/ public static int inputDate(String timeStr2,String type){ long day=24*60; long week=24*60*7; long month=24*60*30; long year=24*60*365; switch (type){ case "1": long daytime = CalculateTime(timeStr2); System.out.println(daytime); if(day>daytime){ System.out.println("小于一天"); return 0; }else{ System.out.println("大于一天"); return 1; } case "2": long weektime = CalculateTime(timeStr2); System.out.println(weektime); if(week>weektime){ System.out.println("小于一周"); return 0; }else{ System.out.println("大于一周"); return 1; } case "3": long monthtime = CalculateTime(timeStr2); System.out.println(monthtime); if(month>monthtime){ System.out.println("小于一月"); return 0; }else{ System.out.println("大于一月"); return 1; } case "4": long yeartime = CalculateTime(timeStr2); System.out.println(yeartime); if(year>yeartime){ System.out.println("小于一年"); return 0; }else{ System.out.println("大于一年"); return 1; } default: return -1; } } /** * @Author toString * @Description 时间转换为分钟计算返回分钟差 * @Date 2019/12/18 11:38 * @Param time 需要查询的时间 * @return long 经过的分钟 **/ public static long CalculateTime(String time) { long nowTime = System.currentTimeMillis(); // 获取当前时间的毫秒数 String msg = null; SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");// 指定时间格式 Date setTime = null; // 指定时间 try { setTime = sdf.parse(time); // 将字符串转换为指定的时间格式 } catch (ParseException e) { e.printStackTrace(); } long reset = setTime.getTime(); // 获取指定时间的毫秒数 long dateDiff = nowTime - reset; if (dateDiff < 0) { msg = "输入的时间不对"; } else { long dateTemp1 = dateDiff / 1000; // 秒 long dateTemp2 = dateTemp1 / 60; // 分钟 return dateTemp2; } return -1L; } }
/** * * @param startTime 开始时间 * @param addDay 添加的天数 * @param endTime 结束时间 * @return true为大于 FALSE为小于 */ public static boolean equlasDate(String startTime,Integer addDay,String endTime) throws ParseException { SimpleDateFormat start = new SimpleDateFormat("yyyy-MM-dd"); Calendar calendar = new GregorianCalendar(); calendar.setTime(start.parse(startTime)); calendar.add(calendar.DATE,addDay); Date AddDate =calendar.getTime(); SimpleDateFormat end = new SimpleDateFormat("yyyy-MM-dd"); Date endDate = end.parse(endTime); return AddDate.getTime()>endDate.getTime(); } /** * * @param startTime 开始时间 * @param addDay 添加的天数 * @param endTime 结束时间 * @return true为大于 FALSE为小于或者等于 * @throws ParseException */ public static boolean equlasDate(Date startTime,Integer addDay,Date endTime) throws ParseException { Calendar calendar = new GregorianCalendar(); calendar.setTime(startTime); calendar.add(calendar.DATE,addDay); Date AddDate =calendar.getTime(); return AddDate.getTime()>endTime.getTime(); }