From 539f733f62f4a368eb90a07a729b5d948378a705 Mon Sep 17 00:00:00 2001
From: zyy <zyy@email.com>
Date: Sat, 19 Jul 2025 18:29:07 +0800
Subject: [PATCH] 后台新增建仓列表 新股列表新增购买状态

---
 src/main/java/com/nq/utils/timeutil/DateTimeUtil.java |   53 +++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 51 insertions(+), 2 deletions(-)

diff --git a/src/main/java/com/nq/utils/timeutil/DateTimeUtil.java b/src/main/java/com/nq/utils/timeutil/DateTimeUtil.java
index 7f9f337..953b55e 100644
--- a/src/main/java/com/nq/utils/timeutil/DateTimeUtil.java
+++ b/src/main/java/com/nq/utils/timeutil/DateTimeUtil.java
@@ -10,7 +10,9 @@
 import java.io.UnsupportedEncodingException;
 import java.net.URLEncoder;
 import java.sql.Timestamp;
+import java.text.ParseException;
 import java.text.SimpleDateFormat;
+import java.time.Instant;
 import java.util.Calendar;
 import java.util.Date;
 
@@ -242,10 +244,57 @@
     }
 
 
+    /**
+     * 计算 Date 到今天的天数(不足一天按一天算)
+     * @param date 要比较的日期(可为 null)
+     * @return 天数(至少为 1 天)
+     */
+    public static long getDaysRoundedUp(Date date) {
+        if (date == null) {
+            return 0; // 处理 null,返回 -1 或根据业务调整
+        }
+        // 获取当前时间(含时分秒)
+        Instant now = Instant.now();
+        Instant dateInstant = date.toInstant();
+
+        // 计算毫秒差
+        long millisDiff = now.toEpochMilli() - dateInstant.toEpochMilli();
+        // 如果日期在未来,直接返回 1 天
+        if (millisDiff <= 0) {
+            millisDiff = Math.abs(millisDiff);
+            //return 1;
+        }
+
+        // 一天的毫秒数
+        long millisPerDay = 24 * 60 * 60 * 1000;
+
+        // 向上取整:不足一天按一天算
+        return (long) Math.ceil((double) millisDiff / millisPerDay);
+    }
 
 
-    public static void main(String[] args) {
 
-        System.out.println(dateToStr1(new Date()));
+    public static void main(String[] args) throws ParseException {
+
+
+        /*SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); // 指定格式
+
+        // 测试:今天(不足一天按一天算)
+        Date today = new Date();
+        System.out.println("今天:" + getDaysRoundedUp(today)); // 输出:1
+
+        // 测试:昨天(23小时前)
+        String str = "2025-07-15 14:10:45";
+        Date date = sdf.parse(str);
+        System.out.println("昨天(23小时前):" + getDaysRoundedUp(date)); // 输出:1
+
+        // 测试:3天前(72小时)
+        String str2 = "2025-07-18 16:10:45";
+        Date date2 = sdf.parse(str2);
+        System.out.println("3天前:" + getDaysRoundedUp(date2)); // 输出:3
+
+        String str3 = "2025-07-19 16:10:45";
+        Date date3 = sdf.parse(str3);
+        System.out.println("未来(1天后):" + getDaysRoundedUp(date3)); // 输出:1*/
     }
 }

--
Gitblit v1.9.3