refactor: 移除 DateTimeFormat 注解的使用,日期类型统一改为 LocalDateTime

starter-web 模块已支持 Query 日期时间转换
This commit is contained in:
2025-03-26 23:17:11 +08:00
parent cae6da298c
commit 7d4ae0b35a
7 changed files with 12 additions and 24 deletions

View File

@@ -16,14 +16,12 @@
package top.continew.admin.auth.model.query;
import cn.hutool.core.date.DatePattern;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
import java.time.LocalDateTime;
import java.util.List;
/**
@@ -55,8 +53,7 @@ public class OnlineUserQuery implements Serializable {
* 登录时间
*/
@Schema(description = "登录时间", example = "2023-08-08 00:00:00,2023-08-08 23:59:59")
@DateTimeFormat(pattern = DatePattern.NORM_DATETIME_PATTERN)
private List<Date> loginTime;
private List<LocalDateTime> loginTime;
/**
* 用户 ID

View File

@@ -77,7 +77,7 @@ public class OnlineUserServiceImpl implements OnlineUserService {
.isMatchClientId(query.getClientId(), userContext)) {
continue;
}
List<Date> loginTimeList = query.getLoginTime();
List<LocalDateTime> loginTimeList = query.getLoginTime();
entry.getValue().parallelStream().forEach(token -> {
UserExtraContext extraContext = UserContextHolder.getExtraContext(token);
if (!this.isMatchLoginTime(loginTimeList, extraContext.getLoginTime())) {
@@ -144,10 +144,10 @@ public class OnlineUserServiceImpl implements OnlineUserService {
* @param loginTime 登录时间
* @return 是否匹配登录时间
*/
private boolean isMatchLoginTime(List<Date> loginTimeList, LocalDateTime loginTime) {
private boolean isMatchLoginTime(List<LocalDateTime> loginTimeList, LocalDateTime loginTime) {
if (CollUtil.isEmpty(loginTimeList)) {
return true;
}
return DateUtil.isIn(DateUtil.date(loginTime).toJdkDate(), loginTimeList.get(0), loginTimeList.get(1));
return loginTime.isAfter(loginTimeList.get(0)) && loginTime.isBefore(loginTimeList.get(1));
}
}

View File

@@ -16,16 +16,14 @@
package top.continew.admin.system.model.query;
import cn.hutool.core.date.DatePattern;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.Size;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import top.continew.admin.common.enums.DisEnableStatusEnum;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
import java.time.LocalDateTime;
import java.util.List;
/**
@@ -69,9 +67,8 @@ public class LogQuery implements Serializable {
* 操作时间
*/
@Schema(description = "操作时间", example = "2023-08-08 00:00:00,2023-08-08 23:59:59")
@DateTimeFormat(pattern = DatePattern.NORM_DATETIME_PATTERN)
@Size(max = 2, message = "操作时间必须是一个范围")
private List<Date> createTime;
private List<LocalDateTime> createTime;
/**
* 状态

View File

@@ -16,16 +16,14 @@
package top.continew.admin.system.model.query;
import cn.hutool.core.date.DatePattern;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.Size;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import top.continew.admin.common.enums.DisEnableStatusEnum;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
import java.time.LocalDateTime;
import java.util.List;
/**
@@ -57,9 +55,8 @@ public class UserQuery implements Serializable {
* 创建时间
*/
@Schema(description = "创建时间", example = "2023-08-08 00:00:00,2023-08-08 23:59:59")
@DateTimeFormat(pattern = DatePattern.NORM_DATETIME_PATTERN)
@Size(max = 2, message = "创建时间必须是一个范围")
private List<Date> createTime;
private List<LocalDateTime> createTime;
/**
* 部门 ID

View File

@@ -43,7 +43,7 @@ import top.continew.starter.extension.crud.model.query.SortQuery;
import top.continew.starter.extension.crud.model.resp.PageResp;
import top.continew.starter.file.excel.util.ExcelUtils;
import java.util.Date;
import java.time.LocalDateTime;
import java.util.List;
/**
@@ -114,7 +114,7 @@ public class LogServiceImpl implements LogService {
String ip = query.getIp();
String createUserString = query.getCreateUserString();
DisEnableStatusEnum status = query.getStatus();
List<Date> createTimeList = query.getCreateTime();
List<LocalDateTime> createTimeList = query.getCreateTime();
return new QueryWrapper<LogDO>().and(StrUtil.isNotBlank(description), q -> q.like("t1.description", description)
.or()
.like("t1.module", description))

View File

@@ -500,7 +500,7 @@ public class UserServiceImpl extends BaseServiceImpl<UserMapper, UserDO, UserRes
protected QueryWrapper<UserDO> buildQueryWrapper(UserQuery query) {
String description = query.getDescription();
DisEnableStatusEnum status = query.getStatus();
List<Date> createTimeList = query.getCreateTime();
List<LocalDateTime> createTimeList = query.getCreateTime();
Long deptId = query.getDeptId();
List<Long> userIdList = query.getUserIds();
// 获取排除用户 ID 列表

View File

@@ -16,13 +16,11 @@
package top.continew.admin.schedule.model.query;
import cn.hutool.core.date.DatePattern;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.Min;
import jakarta.validation.constraints.Size;
import lombok.Data;
import org.hibernate.validator.constraints.Range;
import org.springframework.format.annotation.DateTimeFormat;
import top.continew.admin.schedule.enums.JobExecuteStatusEnum;
import java.io.Serial;
@@ -70,7 +68,6 @@ public class JobLogQuery implements Serializable {
* 创建时间
*/
@Schema(description = "创建时间", example = "2023-08-08 00:00:00,2023-08-08 23:59:59")
@DateTimeFormat(pattern = DatePattern.NORM_DATETIME_PATTERN)
@Size(max = 2, message = "创建时间必须是一个范围")
private LocalDateTime[] datetimeRange;