fuliqi
2024-09-30 b5df1cee65f3e9dcf554efcd3f1642a8c79d1e76
ycl-server/src/main/java/com/ycl/utils/DateUtils.java
@@ -1,6 +1,7 @@
package com.ycl.utils;
import org.apache.commons.lang3.time.DateFormatUtils;
import org.glassfish.jaxb.core.v2.TODO;
import javax.annotation.Nullable;
import java.lang.management.ManagementFactory;
@@ -232,10 +233,13 @@
    /**
     * 获取某月开始日期
     */
    //TODO:校验逻辑是否正确
    public static String getMouthStart(@Nullable Date date) {
        SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
        Calendar c = Calendar.getInstance();
        c.add(Calendar.MONTH, 0);
        if (date != null) {
            c.setTime(date); // 如果date不为null,则设置Calendar的日期为date
        }
        c.set(Calendar.DAY_OF_MONTH,1);
        return df.format(c.getTime());
    }
@@ -246,6 +250,9 @@
    public static String getMouthEnd(@Nullable Date date) {
        SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
        Calendar c = Calendar.getInstance();
        if (date != null) {
            c.setTime(date); // 如果date不为null,则设置Calendar的日期为date
        }
        c.set(Calendar.DAY_OF_MONTH, c.getActualMaximum(Calendar.DAY_OF_MONTH));
        return df.format(c.getTime());
    }
@@ -278,4 +285,17 @@
    }
    public static Date getDay(int year,int month,int day) {
        // 获取Calendar实例,默认使用当前时区和语言环境
        Calendar calendar = Calendar.getInstance();
        // 清除Calendar中的所有字段值,以避免它们对当前日期时间有影响
        calendar.clear();
        // 设置年份、月份(注意:月份是从0开始的,所以8月是7)、日期
        calendar.set(Calendar.YEAR, year);
        calendar.set(Calendar.MONTH, month);
        calendar.set(Calendar.DAY_OF_MONTH, day);
        // Calendar.getTime()方法返回一个表示此Calendar时间值的Date对象
        Date date = calendar.getTime();
        return date;
    }
}