From c3811d01d1929a98a0f34f70ca187d82ee312dbb Mon Sep 17 00:00:00 2001
From: manailin <261030956@qq.com>
Date: 星期三, 03 十一月 2021 17:26:50 +0800
Subject: [PATCH] Merge branch 'test' of http://gitlab.nhys.cdnhxx.com/root/zhihuishequ into test

---
 springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/DateUtils.java |  101 ++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 97 insertions(+), 4 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 53eeaf8..6b14d69 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
@@ -4,8 +4,10 @@
 import java.text.SimpleDateFormat;
 import java.time.*;
 import java.time.format.DateTimeFormatter;
+import java.util.ArrayList;
 import java.util.Calendar;
 import java.util.Date;
+import java.util.List;
 
 import lombok.extern.slf4j.Slf4j;
 
@@ -23,8 +25,11 @@
     public static DateTimeFormatter format_ymd_String = DateTimeFormatter.ofPattern("yyMMdd");
     public static SimpleDateFormat yyyyMM_format = new SimpleDateFormat("yyyy-MM");
     public static SimpleDateFormat format_yyymmdd = new SimpleDateFormat("yyyyMMdd");
+    public static SimpleDateFormat format_yyyy = new SimpleDateFormat("yyyy");
     private static DateTimeFormatter format_ymdhmssss = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.SSS");
     private static DateTimeFormatter format_ymds = DateTimeFormatter.ofPattern("yyyyMMdd");
+    private static DateTimeFormatter format_yms = DateTimeFormatter.ofPattern("yyyyMM");
+    private static DateTimeFormatter format_y = DateTimeFormatter.ofPattern("yyyy");
 
     /**
      * 将日期对象格式化成指定的字符串格式
@@ -759,6 +764,12 @@
         return instance.get(Calendar.MONTH);
     }
 
+    public static int getYear(Date date) {
+        Calendar instance = Calendar.getInstance();
+        instance.setTime(date);
+        return instance.get(Calendar.YEAR);
+    }
+
     public static boolean before(Date start, Date end) {
         Calendar date1 = Calendar.getInstance();
         date1.setTime(start);
@@ -880,10 +891,92 @@
     }
 
     public static void main(String[] args) throws Exception {
-        // Date date= new Date();
-        // Date after = new Date();
-        // System.out.println(getFirstDayOfMonthString());
-        // System.out.println(getDayOfMonthString());
+         Date date= getLastMonthFirst();
+         Date after = getLastMonthEnd();
+         System.out.println(date);
+         System.out.println(after);
 
+
+    }
+
+    /**
+     * 获取当前年月字符串
+     * @return  年月字符串
+     */
+    public static String getCurrentDateString_YYYY_MM() {
+        String nowtime = getCurrentDate().format(format_yms);
+        return nowtime;
+    }
+
+    /**
+     * 获取当前年字符串
+     * @return
+     */
+    public static String getCurrentDateString_YYYY() {
+        String nowtime = getCurrentDate().format(format_y);
+        return nowtime;
+    }
+
+    /**
+     * 获取当前年第一天
+     * @return  当前年第一天时间
+     */
+    public static Date getFirstDayOfYear() {
+        Calendar currCal=Calendar.getInstance();
+        int currentYear = currCal.get(Calendar.YEAR);
+        return getYearFirst(currentYear);
+    }
+
+    /**
+     * 获取某年第一天日期
+     * @param year 年份
+     * @return Date
+     */
+    public static Date getYearFirst(int year){
+        Calendar calendar = Calendar.getInstance();
+        calendar.clear();
+        calendar.set(Calendar.YEAR, year);
+        Date currYearFirst = calendar.getTime();
+        return currYearFirst;
+    }
+
+    /**
+     * 获取上月第一天时间
+     * @return  上月第一天时间
+     */
+    public static Date getLastMonthFirst(){
+        // 上月起始
+        Calendar lastMonthFirstDateCal = Calendar.getInstance();
+        lastMonthFirstDateCal.add(Calendar.MONTH,-1);
+        lastMonthFirstDateCal.set(Calendar.DAY_OF_MONTH, 1);
+        String lastMonthFirstTime = yyyyMMdd_format.format(lastMonthFirstDateCal.getTime()) + " 00:00:00";
+        return stringToDateStandard(lastMonthFirstTime);
+    }
+
+    /**
+     * 获取上月最后一天时间
+     * @return  最后一天时间
+     */
+    public static Date getLastMonthEnd(){
+        // 上月末尾
+        Calendar lastMonthEndDateCal = Calendar.getInstance();
+        lastMonthEndDateCal.add(Calendar.MONTH,-1);
+        lastMonthEndDateCal.set(Calendar.DAY_OF_MONTH, lastMonthEndDateCal.getActualMaximum(Calendar.DAY_OF_MONTH));
+        String lastMonthEndTime = yyyyMMdd_format.format(lastMonthEndDateCal.getTime()) + " 23:59:59";
+        return stringToDateStandard(lastMonthEndTime);
+    }
+
+    /**
+     * 获取近20天日期
+     * @return  近20天日期
+     */
+    public static List<Date> getOldDays() {
+        List<Date> dates = new ArrayList<>();
+        Date date = new Date();
+        for (int i = 19; i >= 0; i--) {
+            Date date1 = DateUtils.addDay(date, -i);
+            dates.add(date1);
+        }
+        return dates;
     }
 }

--
Gitblit v1.7.1