From 9fe6d40d35068e62df4f69f9eed86ab1bc738b00 Mon Sep 17 00:00:00 2001
From: gongchunyi <deslre0381@gmail.com>
Date: 星期二, 25 八月 2026 18:08:21 +0800
Subject: [PATCH] fix: 时区错误
---
src/main/java/com/ruoyi/framework/web/domain/BaseEntity.java | 4 ++--
src/main/resources/mapper/monitor/SysOperLogMapper.xml | 18 +++++++++---------
src/main/java/com/ruoyi/framework/config/ApplicationConfig.java | 5 ++++-
src/main/java/com/ruoyi/project/system/domain/SysUser.java | 2 ++
4 files changed, 17 insertions(+), 12 deletions(-)
diff --git a/src/main/java/com/ruoyi/framework/config/ApplicationConfig.java b/src/main/java/com/ruoyi/framework/config/ApplicationConfig.java
index 2cc50ba..ecca849 100644
--- a/src/main/java/com/ruoyi/framework/config/ApplicationConfig.java
+++ b/src/main/java/com/ruoyi/framework/config/ApplicationConfig.java
@@ -16,6 +16,7 @@
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
+import java.text.SimpleDateFormat;
import java.util.TimeZone;
/**
@@ -34,7 +35,7 @@
*/
@Bean
public Jackson2ObjectMapperBuilderCustomizer jacksonObjectMapperCustomization() {
- return jacksonObjectMapperBuilder -> jacksonObjectMapperBuilder.timeZone(TimeZone.getDefault());
+ return jacksonObjectMapperBuilder -> jacksonObjectMapperBuilder.timeZone(TimeZone.getTimeZone("GMT+8"));
}
@Bean
@@ -59,6 +60,8 @@
new LocalDateSerializer(dateFormatter));
mapper.registerModule(module);
mapper.disable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS);
+ mapper.setTimeZone(TimeZone.getTimeZone("GMT+8"));
+ mapper.setDateFormat(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"));
return mapper;
}
}
diff --git a/src/main/java/com/ruoyi/framework/web/domain/BaseEntity.java b/src/main/java/com/ruoyi/framework/web/domain/BaseEntity.java
index 8874722..3fefc07 100644
--- a/src/main/java/com/ruoyi/framework/web/domain/BaseEntity.java
+++ b/src/main/java/com/ruoyi/framework/web/domain/BaseEntity.java
@@ -28,14 +28,14 @@
private String createBy;
/** 鍒涘缓鏃堕棿 */
- @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date createTime;
/** 鏇存柊鑰� */
private String updateBy;
/** 鏇存柊鏃堕棿 */
- @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date updateTime;
/** 澶囨敞 */
diff --git a/src/main/java/com/ruoyi/project/system/domain/SysUser.java b/src/main/java/com/ruoyi/project/system/domain/SysUser.java
index 39050e5..a88c7fc 100644
--- a/src/main/java/com/ruoyi/project/system/domain/SysUser.java
+++ b/src/main/java/com/ruoyi/project/system/domain/SysUser.java
@@ -1,6 +1,7 @@
package com.ruoyi.project.system.domain;
import com.baomidou.mybatisplus.annotation.TableField;
+import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.ruoyi.common.xss.Xss;
import com.ruoyi.framework.aspectj.lang.annotation.Excel;
@@ -73,6 +74,7 @@
/** 鏈�鍚庣櫥褰曟椂闂� */
@Excel(name = "鏈�鍚庣櫥褰曟椂闂�", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss", type = Type.EXPORT)
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date loginDate;
/** 閮ㄩ棬瀵硅薄 */
diff --git a/src/main/resources/mapper/monitor/SysOperLogMapper.xml b/src/main/resources/mapper/monitor/SysOperLogMapper.xml
index 6bb7e8f..4c504a3 100644
--- a/src/main/resources/mapper/monitor/SysOperLogMapper.xml
+++ b/src/main/resources/mapper/monitor/SysOperLogMapper.xml
@@ -28,12 +28,12 @@
select oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time, cost_time
from sys_oper_log
</sql>
-
+
<insert id="insertOperlog" parameterType="com.ruoyi.project.monitor.domain.SysOperLog">
insert into sys_oper_log(title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, cost_time, oper_time)
values (#{title}, #{businessType}, #{method}, #{requestMethod}, #{operatorType}, #{operName}, #{deptName}, #{operUrl}, #{operIp}, #{operLocation}, #{operParam}, #{jsonResult}, #{status}, #{errorMsg}, #{costTime}, sysdate())
</insert>
-
+
<select id="selectOperLogList" parameterType="com.ruoyi.project.monitor.domain.SysOperLog" resultMap="SysOperLogResult">
<include refid="selectOperLogVo"/>
<where>
@@ -50,7 +50,7 @@
AND business_type in
<foreach collection="businessTypes" item="businessType" open="(" separator="," close=")">
#{businessType}
- </foreach>
+ </foreach>
</if>
<if test="status != null">
AND status = #{status}
@@ -65,23 +65,23 @@
AND oper_time <= #{params.endTime}
</if>
</where>
- order by oper_id desc
+ order by oper_time desc
</select>
-
+
<delete id="deleteOperLogByIds" parameterType="Long">
delete from sys_oper_log where oper_id in
<foreach collection="array" item="operId" open="(" separator="," close=")">
#{operId}
- </foreach>
+ </foreach>
</delete>
-
+
<select id="selectOperLogById" parameterType="Long" resultMap="SysOperLogResult">
<include refid="selectOperLogVo"/>
where oper_id = #{operId}
</select>
-
+
<update id="cleanOperLog">
truncate table sys_oper_log
</update>
-</mapper>
\ No newline at end of file
+</mapper>
--
Gitblit v1.9.3