wuxw
2024-06-05 0cb117d1048b669baab4b621ce70984176418d4c
java110-utils/src/main/java/com/java110/utils/util/DateUtil.java
@@ -14,7 +14,7 @@
    private static DateFormat dateFormat = new SimpleDateFormat("yyyyMMddhhmmss");
    public static final String LAST_TIME = "2038-01-01 00:00:00";
    public static final String LAST_TIME = "2050-01-01 00:00:00";
    private static Map<String, SimpleDateFormat> formats = new HashMap();
    public static final String DATE_FORMATE_STRING_DEFAULT = "yyyyMMddHHmmss";
@@ -412,15 +412,19 @@
    public static Date getNextMonthFirstDate(Date curDate) {
        return getNextMonthFirstDate(curDate, 1);
    }
    public static Date getNextMonthFirstDate(Date curDate, int monthCount) {
        Calendar curDateCal = Calendar.getInstance();
        curDateCal.setTime(curDate);
        Calendar calendar = Calendar.getInstance();
        calendar.set(Calendar.DAY_OF_MONTH, 1);
        calendar.set(Calendar.HOUR_OF_DAY, 0);
        calendar.set(Calendar.MINUTE, 0);
        calendar.set(Calendar.SECOND, 0);
        calendar.add(Calendar.MONTH, 1);
        return calendar.getTime();
        curDateCal.set(Calendar.DAY_OF_MONTH, 1);
        curDateCal.set(Calendar.HOUR_OF_DAY, 0);
        curDateCal.set(Calendar.MINUTE, 0);
        curDateCal.set(Calendar.SECOND, 0);
        curDateCal.add(Calendar.MONTH, monthCount);
        return curDateCal.getTime();
    }
    public static Date getFirstDate() {
@@ -818,11 +822,18 @@
        startCalendar.setTime(startDate);
        Calendar endCalender = Calendar.getInstance();
        endCalender.setTime(endDate);
        if (startCalendar.get(Calendar.DAY_OF_MONTH) == endCalender.get(Calendar.DAY_OF_MONTH)) {
        if (
                startCalendar.get(Calendar.DAY_OF_MONTH) == endCalender.get(Calendar.DAY_OF_MONTH)
                        && startCalendar.get(Calendar.HOUR_OF_DAY) == endCalender.get(Calendar.HOUR_OF_DAY)
        ) {
            return true;
        }
        return false;
    }
    public static double dayCompare(Date fromDate, Date toDate) {
        return dayCompare(fromDate, toDate, false);
    }
    /**
@@ -834,7 +845,14 @@
     * @param toDate
     * @return
     */
    public static double dayCompare(Date fromDate, Date toDate) {
    public static double dayCompare(Date fromDate, Date toDate, boolean plusOneSec) {
        if (plusOneSec) {
            Calendar toD = Calendar.getInstance();
            toD.setTime(toDate);
            toD.add(Calendar.SECOND, 1);
            toDate = toD.getTime();
        }
        //todo 需要计算三端时间 相加即可
@@ -848,6 +866,8 @@
        Calendar fromDateCal = Calendar.getInstance();
        fromDateCal.setTime(fromDate);
        fromDateCal.set(Calendar.DAY_OF_MONTH, 1);
        fromDateCal.set(Calendar.HOUR_OF_DAY, 0);
        fromDateCal.set(Calendar.MINUTE, 0);
        if (fromDate.getTime() > fromDateCal.getTime().getTime()) {
            fromDateCal.add(Calendar.MONTH, 1);
            firstDay = false;
@@ -858,6 +878,9 @@
        Calendar toDateCal = Calendar.getInstance();
        toDateCal.setTime(toDate);
        toDateCal.set(Calendar.DAY_OF_MONTH, 1);
        toDateCal.set(Calendar.HOUR_OF_DAY, 0);
        toDateCal.set(Calendar.MINUTE, 0);
        if (toDate.getTime() > toDateCal.getTime().getTime()) {
            toDateFirstDate = toDateCal.getTime();
        }
@@ -910,4 +933,28 @@
        endDate.add(Calendar.HOUR_OF_DAY, hour.intValue());
        return endDate.getTime();
    }
    public static String getNextSecTime(String time) {
        Date tTime = getDateFromStringA(time);
        return getNextSecTime(tTime);
    }
    public static String getNextSecTime(Date time) {
        Calendar calendar = Calendar.getInstance();
        calendar.setTime(time);
        calendar.add(Calendar.SECOND, 1);
        return getFormatTimeStringA(calendar.getTime());
    }
    public static String getPreSecTime(String time) {
        Date tTime = getDateFromStringA(time);
        return getPreSecTime(tTime);
    }
    public static String getPreSecTime(Date time) {
        Calendar calendar = Calendar.getInstance();
        calendar.setTime(time);
        calendar.add(Calendar.SECOND, -1);
        return getFormatTimeStringA(calendar.getTime());
    }
}