refactor(order): OrderTodoVO.updateTime 在 my-list/contract-eligible 2 路径补返回 (#2469/#2468)

这个提交包含在:
API Changelog Bot 2026-05-18 09:39:26 +08:00
父节点 e0250564b1
当前提交 08bf4f0de7

查看文件

@ -0,0 +1,33 @@
# refactor(order): OrderTodoVO.updateTime 在「我的待办」「可签合同订单」2 个路径补返回
> **服务**: hl-order-service-v2
> **PR**: #2469 (已合 dev,已部署测试服)
> **Issue**: #2468 (续 #2351 遗留尾巴)
> **日期**: 2026-05-18
> **影响范围**: 管理后台 2 个待办相关查询接口
---
## 给前端的话 (mmg 看这里)
`OrderTodoVO.updateTime` 字段先前在以下 2 个接口返回 null,本次补全:
| 接口 | updateTime 实测 |
|------|----------------|
| `GET /admin/order/todo/my-list` (我的待办列表) | 2026-05-18 09:00:00 ✓ |
| `GET /admin/order/todo/contract-eligible` (可签合同订单列表) | 2026-04-28 14:21:19 ✓ |
其他 OrderTodoVO 路径 (订单详情待办、按订单查 todos 等) PR #2353 已补,本次只是堵这两个用 mapper 自定义 SQL 返 DTO 的"漏洞"路径。
## 根因
`OrderTodoQueryService` 这两个方法走 `OrderTodoMapper``@Select` 自定义 SQL,返回 `ActiveTodoDTO` / `InsuranceCompletedDTO` 中转再 mapper 成 `OrderTodoVO`。**DTO 本身没有 update 字段**,即使后端 service 想 set 也无源。
## 修改清单 (4 文件 +11 -2)
- `OrderTodoMapper.selectActiveTodos`: SELECT 加 `t.update_time AS updated_at`
- `OrderTodoMapper.selectInsuranceCompleted`: SELECT 加 `t.update_time AS updated_at`
- `ActiveTodoDTO`: 加 `private LocalDateTime updatedAt;`
- `InsuranceCompletedDTO`: 加 `private LocalDateTime updatedAt;`
- `OrderTodoQueryService.mapActiveTodoToVOList`: 补 `vo.setUpdateTime(dto.getUpdatedAt());`
- `OrderTodoQueryService.mapInsuranceToVOList`: 补 `vo.setUpdateTime(dto.getUpdatedAt());`