From 84b51d9bfddcc8da58823fde1b322a8168db5cff Mon Sep 17 00:00:00 2001 From: 101captain <237651143@qq.com> Date: 星期五, 27 五月 2022 09:35:23 +0800 Subject: [PATCH] bug修改 --- springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/DateUtils.java | 178 ++++++++++++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 146 insertions(+), 32 deletions(-) diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/DateUtils.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/DateUtils.java index 32e88b0..c07afb2 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/DateUtils.java +++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/DateUtils.java @@ -53,7 +53,7 @@ /** * 字符串转date - * + * * @param date * 时间戳 * @param format @@ -74,7 +74,7 @@ /** * 字符串转date - * + * * @param date * 时间戳 * @return 时间 @@ -100,7 +100,7 @@ /** * 字符串转date - * + * * @param date * 时间戳 * @return 时间 @@ -119,7 +119,7 @@ /** * 获取当前时间 - * + * * @return * @throws Exception */ @@ -130,7 +130,7 @@ /** * 返回当前事件的时间戳 - * + * * @return */ public static Long getCurrentDateTimeStamp() { @@ -139,7 +139,7 @@ /** * 获取当前时间字符串,格式为yyyy-MM-dd HH:mm:ss - * + * * @return */ public static String getCurrentDateStr() { @@ -159,7 +159,7 @@ /** * 获取当前时间字符串,格式为yyyyMMdd - * + * * @return */ public static String getCurrentDateString() { @@ -169,7 +169,7 @@ /** * 获取当前时间字符串,格式为yyyy-MM-dd - * + * * @return */ public static String getCurrentDateStrymd() { @@ -184,7 +184,7 @@ /** * 获取当前时间long值 - * + * * @return */ public static long getCurrentDataLong() { @@ -193,7 +193,7 @@ /** * 获取当前时间 - * + * * @param format * @return * @throws Exception @@ -298,7 +298,7 @@ /** * 对日期进行加法操作 - * + * * @param date * @param hours * @return @@ -315,7 +315,7 @@ /** * 对日期的分钟进行加法操作 - * + * * @param date * @param minutes * @return @@ -390,7 +390,7 @@ /** * 计算两个日期先差多少秒 - * + * * @param pre * 前一个日期 * @param after @@ -403,7 +403,7 @@ /** * 计算两个时间相差的天数 - * + * * @param stardate * @param enddate * @return @@ -425,7 +425,7 @@ /** * 结束时间与当前时间计算相差的月数 - * + * * @param enddate * @return */ @@ -444,7 +444,7 @@ /** * 获取某个时间段之前的时间点 - * + * * @return */ public static String getSomeTimeStapStr(String sign) { @@ -489,7 +489,7 @@ /** * 获取失效时间点(在什么时间失效) - * + * * @param minutes * 有效分钟数 * @return @@ -500,7 +500,7 @@ /** * 获取当前年份 - * + * * @return */ public static String getCurrentYear() { @@ -510,7 +510,7 @@ /** * 获取当前月份 - * + * * @return */ public static String getCurrentMonth() { @@ -527,7 +527,7 @@ /** * 获取无符号的当前时间 - * + * * @return */ public static String getCurrentDateStrNoSignal() { @@ -536,7 +536,7 @@ /** * 获取前几个小时的时间 - * + * * @param hours * @return */ @@ -552,7 +552,7 @@ /** * 小时取整 - * + * * @param date * @param hour * @return @@ -573,7 +573,7 @@ /** * 分钟取整 以十分钟为单位 ,去除尾端,加上 参数 46->40+minutes*10 - * + * * @param date * @param minutes * @return @@ -601,7 +601,7 @@ /** * 天数取整 - * + * * @param date * @param day * @return @@ -622,7 +622,7 @@ /** * 日期相加减 - * + * * @param time * 时间字符串 yyyy-MM-dd HH:mm:ss * @param num @@ -684,7 +684,7 @@ /** * 获取当前月第一天 - * + * * @return */ public static Date getFirstDayOfMonth() { @@ -697,7 +697,7 @@ /** * 获取当前年月的第一天时间 - * + * * @param year * 年份 * @param month @@ -721,7 +721,7 @@ /** * 获取当前年月的最后一天时间 - * + * * @param year * 年份 * @param month @@ -781,7 +781,7 @@ /** * date2比date1多的天数 - * + * * @param date1 * @param date2 * @return @@ -840,7 +840,7 @@ /** * 获取当前月第一天 - * + * * @return */ public static String getFirstDayOfMonthString() { @@ -856,7 +856,7 @@ /** * 获取当前月最后一天 - * + * * @return */ public static String getLastDayOfMonthString() { @@ -887,7 +887,7 @@ /** * 获取当前时间(年月日) - * + * * @return */ public static String getDayOfMonthString() { @@ -1015,4 +1015,118 @@ } return dates; } + + /** + * 获取上月最后一天时间 + * @return 上月最后一天时间 + */ + public static String getOldMonthLastDay(){ + Calendar calendar=Calendar.getInstance(); + int month=calendar.get(Calendar.MONTH); + calendar.set(Calendar.MONTH, month-1); + calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMaximum(Calendar.DAY_OF_MONTH)); + return format_yyymmdd.format(calendar.getTime()); + } + + /** + * 获取上月第一天时间 + * @return 上月第一天时间 + */ + public static String getOldMonthFirstDay(){ + Calendar calendar=Calendar.getInstance(); + calendar.add(Calendar.MONTH, -1); + calendar.set(Calendar.DAY_OF_MONTH, 1); + return format_yyymmdd.format(calendar.getTime()); + } + + /** + * 获取某年的月份最后一天时间 + * @param year 年份 + * @return 月份list + */ + public static List<String> getYearLastMonths(Integer year){ + List<String> list = new ArrayList<>(); + list.add(getLastDayOfMonth(year,1)); + list.add(getLastDayOfMonth(year,2)); + list.add(getLastDayOfMonth(year,3)); + list.add(getLastDayOfMonth(year,4)); + list.add(getLastDayOfMonth(year,5)); + list.add(getLastDayOfMonth(year,6)); + list.add(getLastDayOfMonth(year,7)); + list.add(getLastDayOfMonth(year,8)); + list.add(getLastDayOfMonth(year,9)); + list.add(getLastDayOfMonth(year,10)); + list.add(getLastDayOfMonth(year,11)); + list.add(getLastDayOfMonth(year,12)); + return list; + } + + /** + * 获取某年的月份第一天时间 + * @param year 年份 + * @return 月份list + */ + public static List<String> getYearFirstMonths(Integer year){ + List<String> list = new ArrayList<>(); + list.add(getFirstDayOfMonth(year,1)); + list.add(getFirstDayOfMonth(year,2)); + list.add(getFirstDayOfMonth(year,3)); + list.add(getFirstDayOfMonth(year,4)); + list.add(getFirstDayOfMonth(year,5)); + list.add(getFirstDayOfMonth(year,6)); + list.add(getFirstDayOfMonth(year,7)); + list.add(getFirstDayOfMonth(year,8)); + list.add(getFirstDayOfMonth(year,9)); + list.add(getFirstDayOfMonth(year,10)); + list.add(getFirstDayOfMonth(year,11)); + list.add(getFirstDayOfMonth(year,12)); + return list; + } + + /** + * 获取某年某月最后一天 + * @param year 年份 + * @param month 月份 + * @return 某年某月最后一天 + */ + public static String getLastDayOfMonth(int year,int month) + { + Calendar cal = Calendar.getInstance(); + //设置年份 + cal.set(Calendar.YEAR,year); + //设置月份 + cal.set(Calendar.MONTH, month-1); + //获取某月最大天数 + int lastDay = cal.getActualMaximum(Calendar.DAY_OF_MONTH); + //设置日历中月份的最大天数 + cal.set(Calendar.DAY_OF_MONTH, lastDay); + //格式化日期 + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); + String lastDayOfMonth = sdf.format(cal.getTime()); + return lastDayOfMonth; + } + + /** + * 获取某年某月的第一天 + * @param year 年份 + * @param month 月份 + * @return 某年某月第一天 + */ + public static String getFirstDayOfMonth(int year,int month) + { + Calendar cal = Calendar.getInstance(); + //设置年份 + cal.set(Calendar.YEAR,year); + //设置月份 + cal.set(Calendar.MONTH, month-1); + //获取某月最小天数 + int firstDay = cal.getActualMinimum(Calendar.DAY_OF_MONTH); + //设置日历中月份的最小天数 + cal.set(Calendar.DAY_OF_MONTH, firstDay); + //格式化日期 + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); + String firstDayOfMonth = sdf.format(cal.getTime()); + + return firstDayOfMonth; + } } -- Gitblit v1.7.1