4ac9254496a96740481904ceb022c1a9015a262c
根因: - ** - `core-framework/.../ApplicationConfig.java:39` — `LocalDateTimeDeserializer` 只配置了 `yyyy-MM-dd HH:mm:ss` 格式 - 前端发送 ISO 8601 格式日期字符串 `"2026-06-01T01:45:06.439Z"`(含毫秒 + `Z` 时区后缀),Jackson 反序列化失败抛出 `JsonParseException` 修复: - ** - 修改 `ApplicationConfig.java`,将单一格式的 `LocalDateTimeDeserializer` 替换为自定义多格式反序列化器 - 新反序列化器依次尝试:ISO 8601(`yyyy-MM-ddTHH:mm:ss.SSS`)→ 简单格式(`yyyy-MM-dd HH:mm:ss`)→ 斜杠格式(`yyyy/M/d HH:mm:ss`) - 自动剥离 `Z`/`z` 时区后缀和 `+HH:MM` 偏移量(`LocalDateTime` 不含时区信息) - 6 环验证:** - ①前端 → ②Controller:`@RequestBody` 反序列化现在支持 ISO 8601 格式 ✅ - ③Service:无需修改,DTO 字段类型未变 ✅ - ④Mapper:无需修改,SQL 映射未变 ✅ - ⑤DB:无需修改,字段类型未变 ✅ - ⑥关联模块:全局生效,所有使用 `LocalDateTime` 的实体均受益 ✅ - 编译验证:** `mvn compile -pl openhis-application -am` → BUILD SUCCESS ✅ - 变更文件:** `core-framework/src/main/java/com/core/framework/config/ApplicationConfig.java`
his-repo
@ 5de8a22418
Fix Bug #445: 引用计费时已生成医嘱项目重新出现在待生成列表 — handleQuoteBilling 中先清空 temporaryAdvices 再执行 ID 匹配过滤,导致过滤逻辑对空数组无效;且 ID 匹配不可靠(新医嘱无 requestId/chargeItemId),已改为在清空前提取复合键(名称|||规格|||数量)并在数据加载后用该键过滤
Fix Bug #547: 执行科室配置保存时时间冲突检测范围错误 — 根因:addOrEditOrgLoc 方法使用 getOrgLocListByActivityDefinitionId 跨科室查询同一诊疗的所有配置,导致不同科室间的正常时间重叠被误判为冲突;修复:改为 getOrgLocListByOrgIdAndActivityDefinitionId(orgId, activityDefId) 限定同科室范围;同时优化软删除科室处理,当冲突记录关联的科室已被删除时,使用"科室[ID]已删除"替代静默跳过
Description
No description provided
Languages
Java
47.9%
Vue
46.4%
JavaScript
4.4%
HTML
0.7%
TypeScript
0.2%
Other
0.1%