6.6 KiB
6.6 KiB
schema, ticket, title, consumer, author, change_type, backend_status, gateway_status, frontend_status, frontend_owner, frontend_ref, target_release, verified_at, status_note, updated_at, base
| schema | ticket | title | consumer | author | change_type | backend_status | gateway_status | frontend_status | frontend_owner | frontend_ref | target_release | verified_at | status_note | updated_at | base |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| hl-changelog/v2 | finance-review-logs-6domains | 6 域审核记录独立查询接口(详情弹窗「审核记录」独立 tab 数据源) | admin | yst(GIT) | 新增接口 | merged | verified | verified | mmg | a84f2ffe87612e158c9c9eaffe7aabb05dee69c4 | 2026-09-17 | 6 单据域(应付款/预付款/报账款/员工借款/费用报销/业务外收支)各新增 1 个审核流水独立查询接口 GET /admin/finance/<域>/{id}/review-logs,6 域共用 FinReviewLogRespVO 8 字段,按审核发生时间升序、无记录空数组。配套原型:单据详情弹窗拆「详情信息/审核记录」两 tab(payex-detail 通用框架),审核记录 tab 数据走本接口。报账详情旧内嵌 reviewLogs 字段标 @Deprecated(保留向后兼容不回删,新接入走 §报账独立接口)。已合并 dev-v3(PR #7814)+ 部署测试服行为级验证 PASS(Flyway 6 表建齐、6 接口 200、approve 落痕可回放)。 前端 hl-admin 2026-09-17 done:五域 api 封装+ReviewLogPane 共享面板(loader/statusLabel 注入、tab 懒加载、docId 变化重拉),报账/预付款/员工借款/费用报销/业务外收支五域详情弹窗两 tab 接线齐;应付款付款单域前端页面占位未交付,封装随页面建设时补。 | 2026-09-17 | dev-v3 |
6 域审核记录独立查询接口
服务: hl-order-service-v3(hl-finance 模块) 类型: 🆕 新增接口(6 个只读端点;另:报账详情出参
reviewLogs字段标 @Deprecated,向后兼容不回删) 日期: 2026-09-16 关联: Issue #7801(PR-2)/ PR #7814 · 原型 #7805 / #7808
🔴 一句话给前端
6 类单据(应付款/预付款/报账款/员工借款/费用报销/业务外收支)的审核记录,从「详情接口内嵌字段」抽成独立的审核流水接口。单据详情弹窗拆成「详情信息 / 审核记录」两个 tab:详情信息仍走原详情接口,审核记录 tab 调本新接口。
| 之前 | 现在 | |
|---|---|---|
| 审核记录来源 | 仅报账款有(内嵌详情出参 reviewLogs),其余 5 域无 |
6 域统一独立接口 GET .../review-logs |
| 详情弹窗 | 审核记录混在详情里 | 「详情信息 / 审核记录」两 tab 分离 |
报账 reviewLogs |
详情出参内嵌数组 | 标 @Deprecated(仍返回、不回删),新接入走独立接口 |
接口清单(6 个,结构完全一致)
| # | 方法 | 路径 | 域 | 单据不存在错误码 |
|---|---|---|---|---|
| 1 | GET | /admin/finance/payments/{id}/review-logs |
应付款付款单 | 598801 |
| 2 | GET | /admin/finance/prepays/{id}/review-logs |
预付款申请单 | 599001 |
| 3 | GET | /admin/finance/reimburses/{id}/review-logs |
报账执行单 | 599201 |
| 4 | GET | /admin/finance/staff-loans/{id}/review-logs |
员工借款单 | 599101 |
| 5 | GET | /admin/finance/expenses/{id}/review-logs |
费用报销单 | 598701 |
| 6 | GET | /admin/finance/nonbiz-flows/{id}/review-logs |
业务外收支单 | 598504 |
统一规格:
- 路径占位
{id}= 单据主键(Long,string 序列化) - 返回
Result<List<FinReviewLogRespVO>>,按审核发生时间 升序,无记录返回 空数组[](非 null、非 404) - 单据不存在/已软删 → 抛各域既有 NOT_FOUND 错误码(见上表),零新增错误码
出参(FinReviewLogRespVO,6 域共用)
| 字段 | 类型 | 说明 |
|---|---|---|
logId |
String | 流水 ID(Long,string 序列化防 JS 精度丢失) |
action |
String | 审核动作(词表按域,见下) |
operatorId |
String | 操作人 ID(Long string;无登录上下文时为 null) |
operatorName |
String | 操作人真名快照(AdminContextUtil 取当前登录管理员;可空) |
opinion |
String | 审核意见(可空) |
fromStatus |
String | 操作前单据状态 |
toStatus |
String | 操作后单据状态 |
createTime |
String | 审核发生时间 yyyy-MM-dd HH:mm:ss |
action 词表(按域实证,前端按值渲染文案)
| 域 | action 取值 |
|---|---|
| 应付款 / 预付款 / 员工借款 / 费用报销 | APPROVE 批准 / REJECT 驳回 |
| 业务外收支 | 仅 APPROVE 批准(本域无驳回动作) |
| 报账款 | APPROVE 批准 / RETURN 退回 / UN_APPROVE 反审(反向操作也留痕) |
前端展示「操作」列建议:APPROVE=批准 / REJECT=驳回 / RETURN=退回 / UN_APPROVE=反审。配合
fromStatus→toStatus可渲染「从 X 改为 Y」。
示例
请求:GET /admin/finance/payments/1962xxxxxxxxxx/review-logs
典型(有记录):
{
"code": 0,
"data": [
{ "logId": "2101...", "action": "REJECT", "operatorId": "1962...", "operatorName": "王芳", "opinion": "金额与行程不符", "fromStatus": "SUBMITTED", "toStatus": "REJECTED", "createTime": "2026-09-15 10:20:00" },
{ "logId": "2101...", "action": "APPROVE", "operatorId": "1962...", "operatorName": "王芳", "opinion": "重新核对无误", "fromStatus": "SUBMITTED", "toStatus": "APPROVED", "createTime": "2026-09-16 09:05:00" }
],
"message": "success"
}
边界(无记录):
{ "code": 0, "data": [], "message": "success" }
异常(单据不存在):
{ "code": 598801, "data": null, "message": "付款单不存在" }
注意事项
- 详情两 tab 的数据分工:详情信息 tab 仍调原详情接口;审核记录 tab 调本接口。两个接口独立,可并行/懒加载(切到审核记录 tab 再调)。
- 报账详情
reviewLogs已 @Deprecated:字段仍返回(向后兼容不回删),但新接入请改走GET /admin/finance/reimburses/{id}/review-logs。字段语义与本接口一致。 - 追加写只增不删:审核流水是完整历史轨迹(一张单反复审核/反审全程留痕),单据本体只留最终态。不要假设最多一条。
- 空态:无审核记录返回空数组,前端「审核记录」tab 显示「暂无审核记录」占位即可。
- 审核动作在翻转单据状态的同一事务内落痕,状态翻转与留痕同生共死,不会出现「态已翻、痕没落」。
关联
- Issue:https://git.1814.love:8443/wx/HL/issues/7801
- PR:https://git.1814.love:8443/wx/HL/pulls/7814
- 原型对齐:PR #7805(详情两 tab)/ #7808(查看纯只读权限分离)
- 负责人:腰苏图