-
全局 TimestampLocalDateTimeDeserializer 原先只认 epoch 毫秒,对非数字字符串 (如 '2026-09-11 00:00:00')经 p.getValueAsLong() 静默返回 0 → 1970-01-01, 请求不报错、数据被静默损坏。 实测用户入口:管理端新建 MES 库存调拨单,转移日期控件发字符串(value-format= 'YYYY-MM-DD 00:00:00')→ 保存提示成功 → DB 存 1970-01-01、列表日期列空白。 同类:HRM 考勤打卡(LocalDateTime,前端发 Date 对象)等。 修复:反序列化器兼容 1. epoch 毫秒(JSON 数字/数字字符串,原契约零回归) 2. yyyy-MM-dd HH
ss(含毫秒)
3. ISO-8601(本地/带时区,覆盖前端 Date 对象序列化)
4. 纯日期 yyyy-MM-dd(当日零点)
无法解析时抛清晰错误(含原始值),不再静默落 1970。
单测 11 例覆盖全部在用格式+非法输入。全量回归(360 例)零日期回归。
-
- 引入 OpenTelemetry API/SDK/OTLP Exporter - 移除 OpenTracing 与 SkyWalking trace toolkit 依赖 - 改造 Tracer 自动配置、业务链路切面和异常记录逻辑 - 使用 Span.current() 获取当前 traceId - 保留 SkyWalking apm-toolkit-logback-1.x,避免影响日志链路输出 - 兼容 JDK8 servlet 依赖
-
- common:LocalDateTimeUtils 增加 GMT+8 默认时区的 ofEpochSecond / toEpochSecond 重载 - system:七牛短信回调使用默认时区解析秒级时间戳,避免本机时区影响接收时间 - iot:当前时间规则使用默认时区转 epoch,修复非 GMT+8 环境下匹配结果错误 验证: - yudao-module-system 单测通过 - yudao-module-iot-biz 单测通过 - yudao-module-iot-gateway 编译通过
-
- 新增 URL Path 编解码工具,保留 + 字符语义 - 文件访问基于原始 URI 解码 path,避免中文、空格、% 等字符下载异常 - 文件客户端生成 URL 时按路径段编码,S3 兼容完整 URL 和裸 path - 优化 Content-Disposition 文件名,支持 filename 和 filename* - 下载文件名优先使用文件记录的原始名称 - 补充 HTTP、Local、S3、文件服务相关单测
-
# Conflicts: # pom.xml # yudao-dependencies/pom.xml # yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/util/json/JsonUtils.java # yudao-server/pom.xml
-
- 表单字段 JSON 改为按 JsonNode 逐个节点递归解析 - 跳过分割线、标签、文字等展示组件的字符串 children - 默认摘要按表单字段配置顺序取前三个真实字段 - 补充流程摘要解析单元测试,覆盖 DB form_fields 常见格式 对应 https://t.zsxq.com/x1UrW
-
…并补充单测,基于 yudao-cloud #248 的二开
-
新增获取指定日期所在季度和周的第一天的方法,增强日期处理能力。 同时在排班请求中添加班组类型、开始日期和结束日期字段,完善排班计划功能。
-
refactor(framework): 优化 ObjectUtils 工具类
-
Merge pull request !1469 from puhui999/master-jdk17
-
…/YunaiV/ruoyi-vue-pro/issues/1032