[重大更新] 应广大用户要求 将Date换成LocalDateTime

This commit is contained in:
疯狂的狮子Li
2026-04-03 10:59:04 +08:00
parent e20e31b5f8
commit b9489d7406
47 changed files with 170 additions and 112 deletions

View File

@@ -13,7 +13,7 @@ import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
import java.time.LocalDateTime;
/**
@@ -77,7 +77,7 @@ public class TestDemoVo implements Serializable {
@ExcelRequired
@DateTimeFormat("yyyy-MM-dd HH:mm:ss")
@ExcelProperty(value = "创建时间")
private Date createTime;
private LocalDateTime createTime;
/**
* 创建人
@@ -96,7 +96,7 @@ public class TestDemoVo implements Serializable {
* 更新时间
*/
@ExcelProperty(value = "更新时间")
private Date updateTime;
private LocalDateTime updateTime;
/**
* 更新人

View File

@@ -8,7 +8,7 @@ import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
import java.time.LocalDateTime;
/**
@@ -58,7 +58,7 @@ public class TestTreeVo implements Serializable {
* 创建时间
*/
@ExcelProperty(value = "创建时间")
private Date createTime;
private LocalDateTime createTime;
}

View File

@@ -1,6 +1,7 @@
package org.dromara.gen.service;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.LocalDateTimeUtil;
import cn.hutool.core.io.IoUtil;
import cn.hutool.core.lang.Dict;
import cn.hutool.core.util.ObjectUtil;
@@ -169,8 +170,9 @@ public class GenTableServiceImpl implements IGenTableService {
gen.setTableName(x.getName());
gen.setTableComment(x.getComment());
// postgresql的表元数据没有创建时间这个东西(好奇葩) 只能new Date代替
gen.setCreateTime(ObjectUtil.defaultIfNull(x.getCreateTime(), new Date()));
gen.setUpdateTime(x.getUpdateTime());
Date createDate = ObjectUtil.defaultIfNull(x.getCreateTime(), new Date());
gen.setCreateTime(LocalDateTimeUtil.of(createDate));
gen.setUpdateTime(x.getUpdateTime() != null ? LocalDateTimeUtil.of(x.getUpdateTime()) : null);
return gen;
}).sorted(Comparator.comparing(GenTable::getCreateTime).reversed())
.toList();
@@ -212,8 +214,8 @@ public class GenTableServiceImpl implements IGenTableService {
gen.setDataName(dataName);
gen.setTableName(x.getName());
gen.setTableComment(x.getComment());
gen.setCreateTime(x.getCreateTime());
gen.setUpdateTime(x.getUpdateTime());
gen.setCreateTime(LocalDateTimeUtil.of(x.getCreateTime()));
gen.setUpdateTime(LocalDateTimeUtil.of(x.getUpdateTime()));
return gen;
}).toList();
}

View File

@@ -6,7 +6,7 @@ import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
import java.time.LocalDateTime;
/**
* 系统访问记录表 sys_login_info
@@ -75,6 +75,6 @@ public class SysLoginInfo implements Serializable {
/**
* 访问时间
*/
private Date loginTime;
private LocalDateTime loginTime;
}

View File

@@ -6,7 +6,7 @@ import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
import java.time.LocalDateTime;
/**
* 操作日志记录表 oper_log
@@ -100,7 +100,7 @@ public class SysOperLog implements Serializable {
/**
* 操作时间
*/
private Date operTime;
private LocalDateTime operTime;
/**
* 消耗时间

View File

@@ -7,7 +7,7 @@ import lombok.NoArgsConstructor;
import org.dromara.common.core.constant.SystemConstants;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import java.util.Date;
import java.time.LocalDateTime;
/**
* 用户对象 sys_user
@@ -96,7 +96,7 @@ public class SysUser extends BaseEntity {
/**
* 最后登录时间
*/
private Date loginDate;
private LocalDateTime loginDate;
/**
* 备注

View File

@@ -6,7 +6,7 @@ import org.dromara.system.domain.SysLoginInfo;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
import java.time.LocalDateTime;
import java.util.HashMap;
import java.util.Map;
@@ -76,7 +76,7 @@ public class SysLoginInfoBo implements Serializable {
/**
* 访问时间
*/
private Date loginTime;
private LocalDateTime loginTime;
/**
* 请求参数

View File

@@ -8,7 +8,7 @@ import org.dromara.system.domain.SysOperLog;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
import java.time.LocalDateTime;
import java.util.HashMap;
import java.util.Map;
@@ -112,7 +112,7 @@ public class SysOperLogBo implements Serializable {
/**
* 操作时间
*/
private Date operTime;
private LocalDateTime operTime;
/**
* 消耗时间

View File

@@ -6,7 +6,7 @@ import org.dromara.common.translation.constant.TransConstant;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
import java.time.LocalDateTime;
/**
@@ -74,7 +74,7 @@ public class ProfileUserVo implements Serializable {
/**
* 最后登录时间
*/
private Date loginDate;
private LocalDateTime loginDate;
/**
* 部门名

View File

@@ -10,7 +10,7 @@ import org.dromara.system.domain.SysConfig;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
import java.time.LocalDateTime;
/**
@@ -67,6 +67,6 @@ public class SysConfigVo implements Serializable {
* 创建时间
*/
@ExcelProperty(value = "创建时间")
private Date createTime;
private LocalDateTime createTime;
}

View File

@@ -11,7 +11,7 @@ import org.dromara.system.domain.SysDept;
import java.io.Serial;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.time.LocalDateTime;
import java.util.List;
/**
@@ -99,7 +99,7 @@ public class SysDeptVo implements Serializable {
* 创建时间
*/
@ExcelProperty(value = "创建时间")
private Date createTime;
private LocalDateTime createTime;
/**
* 子部门

View File

@@ -10,7 +10,7 @@ import org.dromara.system.domain.SysDictData;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
import java.time.LocalDateTime;
/**
@@ -83,6 +83,6 @@ public class SysDictDataVo implements Serializable {
* 创建时间
*/
@ExcelProperty(value = "创建时间")
private Date createTime;
private LocalDateTime createTime;
}

View File

@@ -8,7 +8,7 @@ import org.dromara.system.domain.SysDictType;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
import java.time.LocalDateTime;
/**
@@ -52,6 +52,6 @@ public class SysDictTypeVo implements Serializable {
* 创建时间
*/
@ExcelProperty(value = "创建时间")
private Date createTime;
private LocalDateTime createTime;
}

View File

@@ -10,7 +10,7 @@ import org.dromara.system.domain.SysLoginInfo;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
import java.time.LocalDateTime;
@@ -95,7 +95,7 @@ public class SysLoginInfoVo implements Serializable {
* 访问时间
*/
@ExcelProperty(value = "访问时间")
private Date loginTime;
private LocalDateTime loginTime;
}

View File

@@ -7,7 +7,7 @@ import org.dromara.system.domain.SysMenu;
import java.io.Serial;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.time.LocalDateTime;
import java.util.List;
@@ -106,7 +106,7 @@ public class SysMenuVo implements Serializable {
/**
* 创建时间
*/
private Date createTime;
private LocalDateTime createTime;
/**
* 子菜单

View File

@@ -6,7 +6,7 @@ import org.dromara.system.domain.SysMessage;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
import java.time.LocalDateTime;
/**
* 消息记录视图对象 sys_message
@@ -68,5 +68,5 @@ public class SysMessageVo implements Serializable {
/**
* 创建时间
*/
private Date createTime;
private LocalDateTime createTime;
}

View File

@@ -8,7 +8,7 @@ import org.dromara.system.domain.SysNotice;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
import java.time.LocalDateTime;
@@ -68,6 +68,6 @@ public class SysNoticeVo implements Serializable {
/**
* 创建时间
*/
private Date createTime;
private LocalDateTime createTime;
}

View File

@@ -10,7 +10,7 @@ import org.dromara.system.domain.SysOperLog;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
import java.time.LocalDateTime;
/**
@@ -129,7 +129,7 @@ public class SysOperLogVo implements Serializable {
* 操作时间
*/
@ExcelProperty(value = "操作时间")
private Date operTime;
private LocalDateTime operTime;
/**
* 消耗时间

View File

@@ -8,7 +8,7 @@ import org.dromara.system.domain.SysOss;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
import java.time.LocalDateTime;
/**
* OSS对象存储视图对象 sys_oss
@@ -55,7 +55,7 @@ public class SysOssVo implements Serializable {
/**
* 创建时间
*/
private Date createTime;
private LocalDateTime createTime;
/**
* 上传人

View File

@@ -12,7 +12,7 @@ import org.dromara.system.domain.SysPost;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
import java.time.LocalDateTime;
/**
* 岗位信息视图对象 sys_post
@@ -80,7 +80,7 @@ public class SysPostVo implements Serializable {
* 创建时间
*/
@ExcelProperty(value = "创建时间")
private Date createTime;
private LocalDateTime createTime;
/**
* 部门名

View File

@@ -11,7 +11,7 @@ import org.dromara.system.domain.SysRole;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
import java.time.LocalDateTime;
/**
* 角色信息视图对象 sys_role
@@ -86,7 +86,7 @@ public class SysRoleVo implements Serializable {
* 创建时间
*/
@ExcelProperty(value = "创建时间")
private Date createTime;
private LocalDateTime createTime;
/**
* 用户是否存在此角色标识 默认不存在

View File

@@ -6,7 +6,7 @@ import org.dromara.system.domain.SysSocial;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
import java.time.LocalDateTime;
/**
@@ -135,5 +135,5 @@ public class SysSocialVo implements Serializable {
/**
* 创建时间
*/
private Date createTime;
private LocalDateTime createTime;
}

View File

@@ -9,7 +9,7 @@ import org.dromara.system.listener.DeptExcelConverter;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
import java.time.LocalDateTime;
/**
* 用户对象导出VO
@@ -83,7 +83,7 @@ public class SysUserExportVo implements Serializable {
* 最后登录时间
*/
@ExcelProperty(value = "最后登录时间")
private Date loginDate;
private LocalDateTime loginDate;
/**
* 负责人

View File

@@ -12,7 +12,7 @@ import org.dromara.system.domain.SysUser;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
import java.time.LocalDateTime;
import java.util.List;
@@ -96,7 +96,7 @@ public class SysUserVo implements Serializable {
/**
* 最后登录时间
*/
private Date loginDate;
private LocalDateTime loginDate;
/**
* 备注
@@ -106,7 +106,7 @@ public class SysUserVo implements Serializable {
/**
* 创建时间
*/
private Date createTime;
private LocalDateTime createTime;
/**
* 部门名

View File

@@ -28,8 +28,8 @@ import org.springframework.context.event.EventListener;
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;
import java.time.LocalDateTime;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
import java.util.Map;
@@ -56,8 +56,8 @@ public class SysLoginInfoServiceImpl implements ISysLoginInfoService {
@EventListener
public void recordLoginInfo(LoginInfoEvent loginInfoEvent) {
HttpServletRequest request = loginInfoEvent.getRequest();
final UserAgent userAgent = UserAgentUtil.parse(request.getHeader("User-Agent"));
final String ip = ServletUtils.getClientIP(request);
UserAgent userAgent = UserAgentUtil.parse(request.getHeader("User-Agent"));
String ip = ServletUtils.getClientIP(request);
// 客户端信息
String clientId = request.getHeader(LoginHelper.CLIENT_KEY);
SysClientVo client = null;
@@ -144,7 +144,7 @@ public class SysLoginInfoServiceImpl implements ISysLoginInfoService {
@Override
public void insertLoginInfo(SysLoginInfoBo bo) {
SysLoginInfo loginInfo = MapstructUtils.convert(bo, SysLoginInfo.class);
loginInfo.setLoginTime(new Date());
loginInfo.setLoginTime(LocalDateTime.now());
baseMapper.insert(loginInfo);
}

View File

@@ -23,10 +23,9 @@ import org.dromara.system.mapper.SysMessageMapper;
import org.dromara.system.service.ISysMessageService;
import org.springframework.stereotype.Service;
import java.util.Date;
import java.time.LocalDateTime;
import java.util.List;
import java.util.Map;
import java.util.concurrent.TimeUnit;
/**
* 消息记录服务实现
@@ -212,7 +211,7 @@ public class SysMessageServiceImpl implements ISysMessageService, MessageService
// 分类匹配
lqw.eq(SysMessage::getCategory, category);
// 仅查询30天内消息
lqw.ge(SysMessage::getCreateTime, new Date(System.currentTimeMillis() - TimeUnit.DAYS.toMillis(BOX_DAYS)));
lqw.ge(SysMessage::getCreateTime, LocalDateTime.now().minusDays(BOX_DAYS));
// 全局消息 或 当前用户在接收人范围内
lqw.and(wrapper -> wrapper.eq(SysMessage::getSendUserIds, GLOBAL_USER_IDS)
.or()

View File

@@ -19,8 +19,8 @@ import org.springframework.context.event.EventListener;
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;
import java.time.LocalDateTime;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
import java.util.Map;
@@ -99,7 +99,7 @@ public class SysOperLogServiceImpl implements ISysOperLogService {
@Override
public void insertOperlog(SysOperLogBo bo) {
SysOperLog operLog = MapstructUtils.convert(bo, SysOperLog.class);
operLog.setOperTime(new Date());
operLog.setOperTime(LocalDateTime.now());
baseMapper.insert(operLog);
}

View File

@@ -7,7 +7,7 @@ import lombok.EqualsAndHashCode;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import java.io.Serial;
import java.util.Date;
import java.time.LocalDateTime;
/**
* 请假对象 test_leave
@@ -42,12 +42,12 @@ public class TestLeave extends BaseEntity {
/**
* 开始时间
*/
private Date startDate;
private LocalDateTime startDate;
/**
* 结束时间
*/
private Date endDate;
private LocalDateTime endDate;
/**
* 请假天数

View File

@@ -12,7 +12,7 @@ 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.HashMap;
import java.util.Map;
@@ -57,7 +57,7 @@ public class TestLeaveBo implements Serializable {
@NotNull(message = "开始时间不能为空", groups = {AddGroup.class, EditGroup.class})
@DateTimeFormat(pattern = "yyyy-MM-dd")
@JsonFormat(pattern = "yyyy-MM-dd")
private Date startDate;
private LocalDateTime startDate;
/**
* 结束时间
@@ -65,7 +65,7 @@ public class TestLeaveBo implements Serializable {
@NotNull(message = "结束时间不能为空", groups = {AddGroup.class, EditGroup.class})
@DateTimeFormat(pattern = "yyyy-MM-dd")
@JsonFormat(pattern = "yyyy-MM-dd")
private Date endDate;
private LocalDateTime endDate;
/**
* 请假天数

View File

@@ -10,7 +10,7 @@ import org.dromara.workflow.domain.FlowCategory;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
import java.time.LocalDateTime;
/**
* 流程分类视图对象 wf_category
@@ -64,6 +64,6 @@ public class FlowCategoryVo implements Serializable {
* 创建时间
*/
@ExcelProperty(value = "创建时间")
private Date createTime;
private LocalDateTime createTime;
}

View File

@@ -6,7 +6,7 @@ import org.dromara.workflow.common.constant.FlowConstant;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
import java.time.LocalDateTime;
/**
* 流程定义视图
@@ -24,12 +24,12 @@ public class FlowDefinitionVo implements Serializable {
/**
* 创建时间
*/
private Date createTime;
private LocalDateTime createTime;
/**
* 更新时间
*/
private Date updateTime;
private LocalDateTime updateTime;
/**
* 删除标记

View File

@@ -9,7 +9,7 @@ import org.dromara.workflow.common.constant.FlowConstant;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
import java.time.LocalDateTime;
import java.util.List;
/**
@@ -28,12 +28,12 @@ public class FlowHisTaskVo implements Serializable {
/**
* 创建时间
*/
private Date createTime;
private LocalDateTime createTime;
/**
* 更新时间
*/
private Date updateTime;
private LocalDateTime updateTime;
/**
* 删除标记
@@ -215,7 +215,7 @@ public class FlowHisTaskVo implements Serializable {
*
* @param createTime 创建时间
*/
public void setCreateTime(Date createTime) {
public void setCreateTime(LocalDateTime createTime) {
this.createTime = createTime;
updateRunDuration();
}
@@ -225,7 +225,7 @@ public class FlowHisTaskVo implements Serializable {
*
* @param updateTime 更新时间
*/
public void setUpdateTime(Date updateTime) {
public void setUpdateTime(LocalDateTime updateTime) {
this.updateTime = updateTime;
updateRunDuration();
}

View File

@@ -5,7 +5,7 @@ import org.dromara.common.translation.annotation.Translation;
import org.dromara.common.translation.constant.TransConstant;
import org.dromara.workflow.common.constant.FlowConstant;
import java.util.Date;
import java.time.LocalDateTime;
/**
* 流程实例视图对象。
@@ -23,12 +23,12 @@ public class FlowInstanceVo {
/**
* 创建时间
*/
private Date createTime;
private LocalDateTime createTime;
/**
* 更新时间
*/
private Date updateTime;
private LocalDateTime updateTime;
/**
* 删除标记

View File

@@ -10,7 +10,7 @@ import org.dromara.workflow.domain.FlowSpel;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
import java.time.LocalDateTime;
/**
@@ -74,6 +74,6 @@ public class FlowSpelVo implements Serializable {
* 创建时间
*/
@ExcelProperty(value = "创建时间")
private Date createTime;
private LocalDateTime createTime;
}

View File

@@ -9,7 +9,7 @@ import org.dromara.workflow.common.constant.FlowConstant;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
import java.time.LocalDateTime;
import java.util.List;
import java.util.Map;
@@ -32,12 +32,12 @@ public class FlowTaskVo implements Serializable {
/**
* 创建时间
*/
private Date createTime;
private LocalDateTime createTime;
/**
* 更新时间
*/
private Date updateTime;
private LocalDateTime updateTime;
/**
* 删除标记

View File

@@ -8,7 +8,7 @@ import org.dromara.workflow.domain.TestLeave;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
import java.time.LocalDateTime;
/**
@@ -47,13 +47,13 @@ public class TestLeaveVo implements Serializable {
* 开始时间
*/
@ExcelProperty(value = "开始时间")
private Date startDate;
private LocalDateTime startDate;
/**
* 结束时间
*/
@ExcelProperty(value = "结束时间")
private Date endDate;
private LocalDateTime endDate;
/**
* 请假天数

View File

@@ -12,7 +12,6 @@ import org.dromara.common.core.domain.dto.DeptDTO;
import org.dromara.common.core.domain.dto.TaskAssigneeDTO;
import org.dromara.common.core.domain.dto.UserDTO;
import org.dromara.common.core.domain.model.TaskAssigneeBody;
import org.dromara.common.core.enums.FormatsType;
import org.dromara.common.core.service.*;
import org.dromara.common.core.utils.DateUtils;
import org.dromara.common.core.utils.StreamUtils;
@@ -191,7 +190,7 @@ public class FlwTaskAssigneeServiceImpl implements IFlwTaskAssigneeService, Hand
.setHandlerCode(assignee -> StringUtils.blankToDefault(assignee.getHandlerCode(), ""))
.setHandlerName(assignee -> StringUtils.blankToDefault(assignee.getHandlerName(), ""))
.setGroupName(assignee -> this.getGroupName(type, assignee.getGroupName()))
.setCreateTime(assignee -> DateUtils.parseDateToStr(FormatsType.YYYY_MM_DD_HH_MM_SS, assignee.getCreateTime()));
.setCreateTime(assignee -> DateUtils.formatDateTime(assignee.getCreateTime()));
}
/**

View File

@@ -17,6 +17,7 @@ import org.dromara.common.core.domain.dto.UserDTO;
import org.dromara.common.core.enums.BusinessStatusEnum;
import org.dromara.common.core.exception.ServiceException;
import org.dromara.common.core.service.UserService;
import org.dromara.common.core.utils.DateUtils;
import org.dromara.common.core.utils.StreamUtils;
import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.core.utils.ValidatorUtils;

View File

@@ -1,7 +1,7 @@
package org.dromara.workflow.service.impl;
import cn.hutool.core.convert.Convert;
import cn.hutool.core.date.DateUtil;
import java.time.temporal.ChronoUnit;
import cn.hutool.core.map.MapUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
@@ -126,7 +126,7 @@ public class TestLeaveServiceImpl implements ITestLeaveService {
*/
@Override
public TestLeaveVo insertByBo(TestLeaveBo bo) {
long day = DateUtil.betweenDay(bo.getStartDate(), bo.getEndDate(), true);
long day = ChronoUnit.DAYS.between(bo.getStartDate(), bo.getEndDate());
// 截止日期也算一天
bo.setLeaveDays((int) day + 1);
bo.setApplyCode(System.currentTimeMillis() + StrUtil.EMPTY);
@@ -150,7 +150,7 @@ public class TestLeaveServiceImpl implements ITestLeaveService {
@Transactional(rollbackFor = Exception.class)
@Override
public TestLeaveVo submitAndFlowStart(TestLeaveBo bo) {
long day = DateUtil.betweenDay(bo.getStartDate(), bo.getEndDate(), true);
long day = ChronoUnit.DAYS.between(bo.getStartDate(), bo.getEndDate());
// 截止日期也算一天
bo.setLeaveDays((int) day + 1);
if (ObjectUtil.isNull(bo.getId())) {