From 8b93776a0df6944b2ca64504b7c70f008fb93401 Mon Sep 17 00:00:00 2001 From: Joshi <3040996759@qq.com> Date: Wed, 9 Jul 2025 16:30:52 +0800 Subject: [PATCH] =?UTF-8?q?=E6=88=AA=E8=87=B3=E6=97=B6=E9=97=B4=E5=88=B0?= =?UTF-8?q?=E7=A7=92?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../oa/controller/SysOaRemindController.java | 2 +- .../service/impl/SysOaRemindServiceImpl.java | 20 +++++++++++++++---- 2 files changed, 17 insertions(+), 5 deletions(-) diff --git a/ruoyi-oa/src/main/java/com/ruoyi/oa/controller/SysOaRemindController.java b/ruoyi-oa/src/main/java/com/ruoyi/oa/controller/SysOaRemindController.java index ac8f41f..e01a406 100644 --- a/ruoyi-oa/src/main/java/com/ruoyi/oa/controller/SysOaRemindController.java +++ b/ruoyi-oa/src/main/java/com/ruoyi/oa/controller/SysOaRemindController.java @@ -124,7 +124,7 @@ public class SysOaRemindController extends BaseController { } /** - * 查询所有小于三天的任务和项目提醒,只查当天(到秒)。 + * 查询所有小于三天的任务和项目提醒,只查当天 * @return List */ @GetMapping("/getRecentRemindList") diff --git a/ruoyi-oa/src/main/java/com/ruoyi/oa/service/impl/SysOaRemindServiceImpl.java b/ruoyi-oa/src/main/java/com/ruoyi/oa/service/impl/SysOaRemindServiceImpl.java index c1f3bbd..3a8f4dd 100644 --- a/ruoyi-oa/src/main/java/com/ruoyi/oa/service/impl/SysOaRemindServiceImpl.java +++ b/ruoyi-oa/src/main/java/com/ruoyi/oa/service/impl/SysOaRemindServiceImpl.java @@ -163,7 +163,7 @@ public class SysOaRemindServiceImpl implements ISysOaRemindService { LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); lqw.in(SysOaRemind::getRemindType, Arrays.asList("task", "project")); lqw.eq(SysOaRemind::getTaskStatus, "0"); - // 只查当天(到秒) + // 只查当天 java.text.SimpleDateFormat sdf = new java.text.SimpleDateFormat("yyyy-MM-dd"); String today = sdf.format(new java.util.Date()); lqw.apply("DATE_FORMAT(create_time, '%Y-%m-%d') = {0}", today); @@ -187,10 +187,22 @@ public class SysOaRemindServiceImpl implements ISysOaRemindService { vo.setDetailId(remind.getDetailId()); vo.setTargetUserId(remind.getTargetUserId()); vo.setEndTime(remind.getEndTime()); - // 计算剩余天数 + // 计算剩余秒数和格式化字符串 if (remind.getEndTime() != null) { - long diff = (remind.getEndTime().getTime() - System.currentTimeMillis()) / (1000 * 60 * 60 * 24); - vo.setRemainTime(diff); + long diffMillis = remind.getEndTime().getTime() - System.currentTimeMillis(); + long remainSeconds = diffMillis / 1000; + vo.setRemainTime(remainSeconds); + // 格式化为天时分秒 + long days = remainSeconds / (60 * 60 * 24); + long hours = (remainSeconds / (60 * 60)) % 24; + long minutes = (remainSeconds / 60) % 60; + long seconds = remainSeconds % 60; + StringBuilder sb = new StringBuilder(); + if (days > 0) sb.append(days).append("天"); + if (hours > 0 || days > 0) sb.append(hours).append("小时"); + if (minutes > 0 || hours > 0 || days > 0) sb.append(minutes).append("分"); + sb.append(seconds).append("秒"); + vo.setRemark(sb.toString()); } voList.add(vo); }