This commit is contained in:
luke 2025-06-17 10:07:34 +08:00
parent eba7cc53bb
commit 6c22b72094
2 changed files with 31 additions and 7 deletions

View File

@ -1,5 +1,6 @@
package com.knowledge.base.infrastructure.config; package com.knowledge.base.infrastructure.config;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter; import java.time.format.DateTimeFormatter;
/** /**
@ -15,4 +16,6 @@ public class ConstantConfig {
public static final DateTimeFormatter DTF = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); public static final DateTimeFormatter DTF = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
public static final LocalDateTime LONG_TERM_EXPIRE_TIME = LocalDateTime.of(9999, 12, 31, 23, 59, 59);
} }

View File

@ -127,19 +127,40 @@ public class FileQueryController {
Map<String, Object> item = new LinkedHashMap<>(); Map<String, Object> item = new LinkedHashMap<>();
item.put("fileName", dto.getFileName()); item.put("fileName", dto.getFileName());
item.put("url", dto.getUrl()); item.put("url", dto.getUrl());
if (dto.getExpireTime() != null) {
long days = Duration.between(
today.atStartOfDay(),
LocalDateTime.parse(dto.getExpireTime()).toLocalDate().atStartOfDay()
).toDays();
item.put("daysRemaining", Math.max(days, 0)); // 格式化上传时间
} else { if (StrUtil.isNotBlank(dto.getUploadTime())) {
item.put("daysRemaining", -1); try {
LocalDateTime uploadTime = LocalDateTime.parse(dto.getUploadTime());
item.put("uploadTime", uploadTime.format(ConstantConfig.DTF));
} catch (Exception e) {
item.put("uploadTime", dto.getUploadTime());
} }
} else {
item.put("uploadTime", "-");
}
// 格式化剩余天数
if (StrUtil.isNotBlank(dto.getExpireTime())) {
try {
LocalDateTime expireTime = LocalDateTime.parse(dto.getExpireTime());
if (expireTime.equals(ConstantConfig.LONG_TERM_EXPIRE_TIME)) {
item.put("daysRemaining", "长期有效");
} else {
long days = Duration.between(LocalDateTime.now(), expireTime).toDays();
item.put("daysRemaining", days >= 0 ? "还剩 " + days + "" : "已过期");
}
} catch (Exception e) {
item.put("daysRemaining", "未知");
}
} else {
item.put("daysRemaining", "未知");
}
data.add(item); data.add(item);
} }
Map<String, Object> response = new LinkedHashMap<>(); Map<String, Object> response = new LinkedHashMap<>();
response.put("total", result.getTotal()); response.put("total", result.getTotal());
response.put("currentCount", result.getList().size()); response.put("currentCount", result.getList().size());