From 0c8a5ad9a0b1a1f80487baaae1006463cf965c1d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E4=BA=AC=E9=80=9A?= <2405957150@qq.com> Date: Sat, 7 Jun 2025 16:54:04 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=B1=95=E7=A4=BA=E6=97=B6=E9=97=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/ApprovalProcessController.java | 70 ++++++++++++++++++- .../database/domain/ApprovalProcess.java | 5 ++ 2 files changed, 72 insertions(+), 3 deletions(-) diff --git a/gather-app/src/main/java/com/ruoyi/business/controller/ApprovalProcessController.java b/gather-app/src/main/java/com/ruoyi/business/controller/ApprovalProcessController.java index 67edb2f..467d36d 100644 --- a/gather-app/src/main/java/com/ruoyi/business/controller/ApprovalProcessController.java +++ b/gather-app/src/main/java/com/ruoyi/business/controller/ApprovalProcessController.java @@ -14,6 +14,10 @@ import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; +import java.time.Instant; +import java.time.LocalDateTime; +import java.time.ZoneId; +import java.time.format.DateTimeFormatter; import java.util.List; /** @@ -36,9 +40,72 @@ public class ApprovalProcessController extends BaseController { startPage(); QueryWrapper queryWrapper = new QueryWrapper<>(approvalProcess); List list = approvalsProcessService.list(queryWrapper); + + for (ApprovalProcess process : list) { + +// 如果创建时间为当天的时间 + if (process.getCreateTime() > System.currentTimeMillis() - 24 * 60 * 60 * 1000) { +// 一分钟之内,显示刚刚 + // 模拟获取创建时间戳(这里以当前时间戳减去一定值为例,实际应替换为 process.getCreateTime() ) + long createTime = process.getCreateTime(); + long currentTime = System.currentTimeMillis(); + + String result; + if (createTime > currentTime - 60 * 1000) { + result = "刚刚"; + process.setShowTime(result); + } else if (createTime <= currentTime - 60 * 1000 && createTime > currentTime - 30 * 60 * 1000) { + long minutes = (currentTime - createTime) / (60 * 1000); + result = minutes + "分钟前"; + process.setShowTime(result); + } else if (createTime <= currentTime - 30 * 60 * 1000 && createTime > currentTime - 60 * 60 * 1000) { + result = "半小时前"; + process.setShowTime(result); + } else if (createTime <= currentTime - 60 * 60 * 1000) { + long hours = (currentTime - createTime) / (60 * 60 * 1000); + result = hours + "小时前"; + process.setShowTime(result); + } else { + result = "时间计算异常"; + process.setShowTime(result); + } + /*Long createTime = process.getCreateTime(); + Instant instant = Instant.ofEpochMilli(createTime); + LocalDateTime localDateTime = LocalDateTime.ofInstant(instant, ZoneId.of("Asia/Shanghai")); + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("HH:mm"); + String formattedTime = localDateTime.format(formatter); + process.setShowTime(formattedTime);*/ + } else if (process.getCreateTime() > System.currentTimeMillis() - 24 * 60 * 60 * 1000 && process.getCreateTime() < System.currentTimeMillis() - 2 * 24 * 60 * 60 * 1000) { +// 超过一天不大于两天,显示“昨天” + process.setShowTime("昨天"); + } else { +// 超过两天显示年月日时分秒 + Long createTime = process.getCreateTime(); + Instant instant = Instant.ofEpochMilli(createTime); + LocalDateTime localDateTime = LocalDateTime.ofInstant(instant, ZoneId.of("Asia/Shanghai")); + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("MM/dd"); + String formattedTime = localDateTime.format(formatter); + process.setShowTime(formattedTime); + } + } return getDataTable(list); } + public static void main(String[] args) { + Long createTime = 1749279303395L; + Instant instant = Instant.ofEpochMilli(createTime); + +// 2. 转换为本地时区(如北京时间 UTC+8) + LocalDateTime localDateTime = LocalDateTime.ofInstant(instant, ZoneId.of("Asia/Shanghai")); + +// 3. 定义日期时间格式 + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("HH:mm"); + +// 4. 格式化为字符串 + String formattedTime = localDateTime.format(formatter); + System.out.println(formattedTime); + } + @ApiOperation("根据编号查") @PostMapping("/getByApprovalNo/{id}") public TableDataInfo getByApprovalNo(@PathVariable String id) { @@ -58,7 +125,4 @@ public class ApprovalProcessController extends BaseController { } - - - } diff --git a/gather-app/src/main/java/com/ruoyi/database/domain/ApprovalProcess.java b/gather-app/src/main/java/com/ruoyi/database/domain/ApprovalProcess.java index 83e8413..7265659 100644 --- a/gather-app/src/main/java/com/ruoyi/database/domain/ApprovalProcess.java +++ b/gather-app/src/main/java/com/ruoyi/database/domain/ApprovalProcess.java @@ -34,6 +34,11 @@ public class ApprovalProcess { @ApiModelProperty("抄送人姓名") private String ccName; + + @ApiModelProperty("显示时间") + @TableField(exist = false) + private String showTime; + @ApiModelProperty("抄送人ID") private Long ccId;