package com.usoft.fin.grpc.utils;

import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;

/**
 * 时间处理
 * @author wangdy
 * @date 2018-08-28 11:13
 **/
public class DateUtils {

    /**
     * 比较时间
     * @param date1
     * @param date2
     * @return （1：data1 > data2 ,-1: data1 < data2 , 0: data1 = data2）
     */
    private static int compareDate(String date1, String date2) {
        DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        try {
            Date dt1 = df.parse(date1);
            Date dt2 = df.parse(date2);
            if (dt1.getTime() > dt2.getTime()) {
                return 1;
            } else if (dt1.getTime() < dt2.getTime()) {
                return -1;
            } else {
                return 0;
            }
        } catch (Exception exception) {
            exception.printStackTrace();
        }
        return 0;
    }

    /**
     * 当前时间是否在区间内
     * @param start
     * @param end
     * @return
     */
    public static boolean compareNow(String start, String end) {
        String nowDate = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
        start = start.substring(0,11) + "00:00:00";
        end = end.substring(0,11) + "23:59:59";
        if (DateUtils.compareDate(nowDate, end) == 1 || DateUtils.compareDate(start, nowDate) == 1) {
            return false;
        }
        return true;
    }
}
