From 9d30f3aba92b1fe90eaecd486113f544f0f18b7c Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期五, 16 八月 2024 16:41:11 +0800
Subject: [PATCH] 资产管理动态字段

---
 ycl-server/src/main/java/com/ycl/utils/DateUtils.java |   51 +++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 51 insertions(+), 0 deletions(-)

diff --git a/ycl-server/src/main/java/com/ycl/utils/DateUtils.java b/ycl-server/src/main/java/com/ycl/utils/DateUtils.java
index 0be7f5f..9988e85 100644
--- a/ycl-server/src/main/java/com/ycl/utils/DateUtils.java
+++ b/ycl-server/src/main/java/com/ycl/utils/DateUtils.java
@@ -8,6 +8,7 @@
 import java.text.ParseException;
 import java.text.SimpleDateFormat;
 import java.time.*;
+import java.util.Calendar;
 import java.util.Date;
 import java.util.Objects;
 
@@ -227,4 +228,54 @@
         LocalDateTime of = LocalDateTime.of(localDateTime.getYear(), localDateTime.getMonth(), localDateTime.getDayOfMonth(), 23, 59, 59);
         return Timestamp.valueOf(of);
     }
+
+    /**
+     * 鑾峰彇鏌愭湀寮�濮嬫棩鏈�
+     */
+    public static String getMouthStart(@Nullable Date date) {
+        SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
+        Calendar c = Calendar.getInstance();
+        c.add(Calendar.MONTH, 0);
+        c.set(Calendar.DAY_OF_MONTH,1);
+        return df.format(c.getTime());
+    }
+
+    /**
+     * 鑾峰彇鏌愭湀缁撴潫鏃ユ湡
+     */
+    public static String getMouthEnd(@Nullable Date date) {
+        SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
+        Calendar c = Calendar.getInstance();
+        c.set(Calendar.DAY_OF_MONTH, c.getActualMaximum(Calendar.DAY_OF_MONTH));
+        return df.format(c.getTime());
+    }
+    /**
+     * 鑾峰彇鎸囧畾Calendar鐨勫搴﹀紑濮嬫棩鏈�
+      * @param calendar 鏃ュ巻
+     * @return 瀛e害绗竴澶�
+     */
+    public static Calendar getQuarterStart(Calendar calendar) {
+        Calendar quarterStart = (Calendar) calendar.clone();
+        // 璁剧疆涓哄綋鍓嶅搴︾殑绗竴涓湀鐨勭涓�澶�
+        quarterStart.set(Calendar.DAY_OF_MONTH, 1);
+        int month = quarterStart.get(Calendar.MONTH);
+        quarterStart.set(Calendar.MONTH, (month / 3) * 3);
+        return quarterStart;
+    }
+
+    /**
+     * 鑾峰彇鎸囧畾Calendar鐨勫搴︾粨鏉熸棩鏈�
+     * @param calendar 鏃ュ巻
+     * @return 瀛e害鏈�鍚庝竴澶�
+     */
+    public static Calendar getQuarterEnd(Calendar calendar) {
+        Calendar quarterEnd = getQuarterStart(calendar);
+        // 灏嗘湀浠借缃负涓嬩竴涓搴︾殑绗竴涓湀
+        quarterEnd.add(Calendar.MONTH, 3);
+        // 璁剧疆涓洪偅涓湀鐨勬渶鍚庝竴澶�
+        quarterEnd.add(Calendar.DAY_OF_MONTH, -1);
+        return quarterEnd;
+    }
+
+
 }

--
Gitblit v1.8.0