時間範圍計算校驗,是否滿足日,周,月,年的條件

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;
    }


}
發佈了75 篇原創文章 · 獲贊 95 · 訪問量 22萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章