根因: - ** - `InspectionPackage.java` 和 `InspectionPackageDetail.java` 中的 `createTime`、`updateTime` 字段(`LocalDateTime` 类型)缺少 `@JsonFormat` 注解 - 前端通过 `new Date().toISOString()` 发送 ISO 8601 格式日期字符串(如 `"2026-06-01T01:45:06.439Z"`),Jackson 反序列化时无法自动识别格式,抛出 `JSON parse error: Cannot deserialize value of type java.time.LocalDateTime from String` - 项目全局有自定义反序列化器(`ApplicationConfig.java`),但字段级 `@JsonFormat` 注解缺失导致 Jackson 在某些场景下未走自定义逻辑 修复: - ** - `openhis-domain/src/main/java/com/openhis/lab/domain/InspectionPackage.java:79-83` — `createTime`、`updateTime` 字段添加 `@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")` - `openhis-domain/src/main/java/com/openhis/lab/domain/InspectionPackageDetail.java:70-74` — `createTime`、`updateTime` 字段添加 `@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")` - 6 环验证:** - | 环节 | 状态 | 说明 | - |---|---|---| - | ①前端录入 | ✅ 正常 | 前端发送 `new Date().toISOString()` 格式 | - | ②Controller | ✅ 正常 | `@RequestBody InspectionPackage` 接收无误 | - | ③Service | ✅ 正常 | Service 层不涉及日期格式处理 | - | ④Mapper | ✅ 正常 | MyBatis Plus 自动映射 | - | ⑤DB | ✅ 正常 | PostgreSQL `timestamp` 字段匹配 | - 验证结果:** - `mvn compile -pl openhis-application -am` → **BUILD SUCCESS**(0 error) - 与项目中其他实体类(如 `Instrument.java`)保持一致的 `@JsonFormat` 模式
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
package com.openhis.lab.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
|
||||
@@ -106,10 +107,12 @@ public class InspectionPackage {
|
||||
|
||||
/** 创建时间 */
|
||||
@TableField("create_time")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private LocalDateTime createTime;
|
||||
|
||||
/** 更新时间 */
|
||||
@TableField("update_time")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private LocalDateTime updateTime;
|
||||
|
||||
/** 删除标志(false-正常,true-删除) */
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package com.openhis.lab.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
|
||||
@@ -75,10 +76,12 @@ public class InspectionPackageDetail {
|
||||
|
||||
/** 创建时间 */
|
||||
@TableField("create_time")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private LocalDateTime createTime;
|
||||
|
||||
/** 更新时间 */
|
||||
@TableField("update_time")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private LocalDateTime updateTime;
|
||||
|
||||
/** 删除标志(false-正常,true-删除) */
|
||||
|
||||
Reference in New Issue
Block a user