From 36a00aa8bee92f62470fc1031c8c07f3de35910d Mon Sep 17 00:00:00 2001
From: fuliqi <fuliqi@qq.com>
Date: 星期三, 15 一月 2025 17:53:25 +0800
Subject: [PATCH] osd不做筛选,检测全量

---
 ycl-server/src/main/java/com/ycl/utils/DateUtils.java |   77 ++++++++++++++++++++++++++++++++++++++
 1 files changed, 77 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..faa53de 100644
--- a/ycl-server/src/main/java/com/ycl/utils/DateUtils.java
+++ b/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;
@@ -8,6 +9,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 +229,79 @@
         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();
+        if (date != null) {
+            c.setTime(date); // 濡傛灉date涓嶄负null锛屽垯璁剧疆Calendar鐨勬棩鏈熶负date
+        }
+        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();
+        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());
+    }
+    /**
+     * 鑾峰彇鎸囧畾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;
+    }
+
+
+    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;
+    }
+    public static Integer getDayOfMonth(Date date) {
+        // 鍒涘缓涓�涓狢alendar瀵硅薄骞惰缃负褰撳墠鏃ユ湡鍜屾椂闂�
+        Calendar calendar = Calendar.getInstance();
+        calendar.setTime(date);
+        // 鑾峰彇褰撳墠鏃ユ湡鏄綋鏈堜腑鐨勭鍑犲ぉ
+        return calendar.get(Calendar.DAY_OF_MONTH);
+    }
 }

--
Gitblit v1.8.0