From c1a9eee9c9aa0d3c7592fa75e70243e0297b3a0d Mon Sep 17 00:00:00 2001
From: fhx <308050795@qq.com>
Date: 星期四, 06 四月 2023 10:38:03 +0800
Subject: [PATCH] 1.新增文件工具类

---
 src/main/java/com/hx/util/DateUtil.java |   70 ++++++++++++++++++++++++++++++++---
 1 files changed, 64 insertions(+), 6 deletions(-)

diff --git a/src/main/java/com/hx/util/DateUtil.java b/src/main/java/com/hx/util/DateUtil.java
index 3618084..361a86c 100644
--- a/src/main/java/com/hx/util/DateUtil.java
+++ b/src/main/java/com/hx/util/DateUtil.java
@@ -455,7 +455,7 @@
      * endTime姣攕tartTime澶氱殑澶╂暟
      * @param startTime 鏈�灏忔椂闂�
      * @param endTime 鏈�澶ф椂闂�
-     * @return
+     * @return 杩斿洖
      */
     public static Integer differDay(Date startTime,Date endTime){
         Calendar cal1 = Calendar.getInstance();
@@ -500,8 +500,7 @@
     }
 
     /**鎶婄杞崲鎴怷澶鏃禭鍒哫绉�*/
-    public static String getChineseStr(Integer second)
-    {
+    public static String getChineseStr(Integer second) {
         int day = 24 * 60 * 60;
         int hour = 60 * 60;
         int min = 60;
@@ -609,7 +608,7 @@
     public static Date getYearStart(Date time) {
         Calendar calendar = Calendar.getInstance();
         calendar.setTime(time);
-        calendar.set(Calendar.MONTH, 1);
+        calendar.set(Calendar.MONTH, 0);
         calendar.set(Calendar.DAY_OF_MONTH, 1);
         calendar.set(Calendar.HOUR_OF_DAY, 0);
         calendar.set(Calendar.MINUTE, 0);
@@ -625,7 +624,7 @@
     public static Date getYearEnd(Date time) {
         Calendar calendar = Calendar.getInstance();
         calendar.setTime(time);
-        calendar.set(Calendar.MONTH, 12);
+        calendar.set(Calendar.MONTH, 11);
         calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMaximum(Calendar.DATE));
         calendar.set(Calendar.HOUR_OF_DAY, 23);
         calendar.set(Calendar.MINUTE, 59);
@@ -695,6 +694,7 @@
         cal.roll(Calendar.DATE, -1);
         return cal.getActualMaximum(Calendar.DATE);
     }
+    
     /**鑾峰彇鏈堜唤鐨勫ぉ鏁�
      * @param year 骞翠唤
      * @param month 鏈堜唤
@@ -712,7 +712,7 @@
     /**鑾峰彇鏈堜唤鐨勫ぉ鏁�
      * @param yearMonth 骞存湀
      * @param format 鏃堕棿鏍煎紡
-     * @return
+     * @return 杩斿洖
      */
     public static int getMonthDays(String yearMonth,String format) {
         SimpleDateFormat sdf = new SimpleDateFormat(format);
@@ -755,4 +755,62 @@
         SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA);
         return sdf.format(calendar.getTime());
     }
+
+    /**
+     * 鑾峰彇鏃堕棿褰撴湀鍓╀綑澶╂暟
+     * */
+    public static Integer getMonthSurplus(Date date) {
+        Calendar month = Calendar.getInstance();
+        month.setTime(new Date());
+        month.set(Calendar.DATE, 1);
+        month.roll(Calendar.DATE, -1);
+        return month.getActualMaximum(Calendar.DATE) - Calendar.getInstance().get(Calendar.DAY_OF_MONTH);
+    }
+
+    /**鑾峰彇褰撳墠鏃堕棿鎵�鍦ㄥ懆鐨勫懆涓�00:00:00*/
+    public static Date getMonday(Date date) {
+        Calendar calendar = Calendar.getInstance(Locale.CHINA);
+        calendar.setTime(date);
+        //浠ュ懆涓�涓洪鏃�
+        calendar.setFirstDayOfWeek(Calendar.MONDAY);
+        calendar.set(Calendar.HOUR_OF_DAY, 0);
+        calendar.set(Calendar.MINUTE, 0);
+        calendar.set(Calendar.SECOND, 0);
+        //鍛ㄤ竴
+        calendar.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY);
+        return calendar.getTime();
+    }
+
+    /**
+     * 鏍规嵁鍑虹敓骞存湀鏃ヨ绠楀勾榫�
+     * @param birth
+     * @return
+     */
+    public static int getAge(Date birth) {
+        Calendar cal = Calendar.getInstance();
+        int thisYear = cal.get(Calendar.YEAR);
+        int thisMonth = cal.get(Calendar.MONTH);
+        int dayOfMonth = cal.get(Calendar.DAY_OF_MONTH);
+
+        cal.setTime(birth);
+        int birthYear = cal.get(Calendar.YEAR);
+        int birthMonth = cal.get(Calendar.MONTH);
+        int birthdayOfMonth = cal.get(Calendar.DAY_OF_MONTH);
+
+        int age = thisYear - birthYear;
+
+        // 鏈冻鏈�
+        if (thisMonth <= birthMonth) {
+            // 褰撴湀
+            if (thisMonth == birthMonth) {
+                // 鏈冻鏃�
+                if (dayOfMonth < birthdayOfMonth) {
+                    age--;
+                }
+            } else {
+                age--;
+            }
+        }
+        return age;
+    }
 }

--
Gitblit v1.8.0