5.5 KiB
5.5 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-reimburse-detail-lines-voucher-reviewlogs | 报账详情补透出支出行凭证 voucherUrls + 审核流水 reviewLogs(复核留痕可追溯) | admin | yst(GIT) | 修改接口 | deployed | verified | verified | mmg | 9c9190d0b5b9572563d42d2364ceb75d189449a3 | 2026-09-16 | 报账详情 GET /admin/finance/reimburses/{id} 出参两处增强(纯新增字段,无存量变更):①支出行明细 lines 每项补透出凭证附件 voucherUrls(Epic #7764 跨域映射此前未透传,复核核对垫付需看发票/收据影像);②详情新增 reviewLogs 审核流水(复核批准/退回/反审每次留痕,含操作人/时间/动作/意见/前后状态,单据反复审核可追溯,#7791)。已部署测试服并造数实证(BZ-202609160003:lines 8 行 voucherUrls 非空、reviewLogs 2 条留痕时间升序)。;前端 hl-admin 9c9190d0 已实现:详情抽屉 lines 补凭证列(非空才出列,影像新窗打开)+审核记录区块(OperationLogTimeline,动作中文/意见/状态流转,空不显),spec 11/11,checkpoint 全绿。 | 2026-09-16 | dev-v3 |
报账详情补透出支出行凭证 voucherUrls + 审核流水 reviewLogs
服务: hl-order-service-v3(hl-finance 模块) 类型: ✏️ 修改接口(纯出参字段新增,无存量字段/路径/语义变更,向后兼容) 日期: 2026-09-16 接口:
GET /admin/finance/reimburses/{id}(报账执行单详情) 关联: Issue #7790 / #7791,PR #7794 / #7795
🔴 一句话给前端
报账详情接口出参加了两块,都是纯新增字段,老前端不读也不影响:
| 新增字段 | 位置 | 内容 |
|---|---|---|
voucherUrls |
lines[] 每一项 |
该支出行的凭证 URL 数组(发票/收据影像),无凭证为 null |
reviewLogs |
详情顶层 | 该单的审核流水列表(复核批准/退回/反审每次一条),按审核时间升序 |
一、支出行明细 lines 补凭证 voucherUrls
复核人员核对垫付时,现在能直接在详情里看到每笔支出的凭证影像,不用再跳核单详情页。
lines[] 项新增字段:
| 字段 | 类型 | 说明 |
|---|---|---|
voucherUrls |
string[] |
凭证 URL 数组(发票/收据影像);无凭证时为 null(前端做好空态) |
其余 lines[] 字段不变(category/categoryName/itemName/unitPrice/quantity/amount/reimburseAmount/paymentMethod/paymentMethodName/date/remark)。
二、详情新增审核流水 reviewLogs
报账单复核(审核)现在全程留痕:每次批准/退回/反审都记一条,单据被反复审核也能追溯每一步。
详情顶层新增字段:
| 字段 | 类型 | 说明 |
|---|---|---|
reviewLogs |
ReviewLogVO[] |
审核流水,按审核发生时间升序;无记录返回空数组 [] |
ReviewLogVO 字段:
| 字段 | 类型 | 说明 |
|---|---|---|
logId |
string | 审核流水 ID(string 序列化) |
action |
string | 审核动作:APPROVE 批准 / RETURN 退回 / UN_APPROVE 反审 |
operatorId |
string | 审核操作人 ID(string 序列化) |
operatorName |
string | 审核操作人姓名快照 |
opinion |
string | 审核意见(批准意见 / 退回原因;反审为 null) |
fromStatus |
string | 操作前单据状态(PENDING/APPROVED) |
toStatus |
string | 操作后单据状态(APPROVED/CLOSED/RETURNED/PENDING) |
createTime |
string | 审核发生时间(yyyy-MM-dd HH:mm:ss) |
三、示例(详情出参节选)
{
"id": "2100084841021145090",
"reimburseNo": "BZ-202609160003",
"status": "PENDING",
"lines": [
{
"category": "HOTEL",
"categoryName": "住宿",
"itemName": "呼伦贝尔香格里拉大酒店-大床房",
"reimburseAmount": 1200.00,
"paymentMethod": "CASH_PAID",
"voucherUrls": ["https://oss.example.com/voucher-hotel-day1.jpg"]
}
],
"reviewLogs": [
{
"logId": "55501",
"action": "APPROVE",
"operatorId": "7",
"operatorName": "腰苏图",
"opinion": "复核无误",
"fromStatus": "PENDING",
"toStatus": "APPROVED",
"createTime": "2026-09-16 12:50:44"
}
]
}
四、前端对接建议
- 详情页「支出行明细」表格每行可加凭证入口(voucherUrls 非空时显示,点击看影像);空数组/null 不显示入口。
- 详情页可加「审核记录」区块,渲染 reviewLogs 时间线(动作中文名映射:APPROVE=批准 / RETURN=退回 / UN_APPROVE=反审),显示操作人/时间/意见/状态流转。
- 两字段都是新增,老前端不升级不影响现有功能。
五、影响评估 / 回滚
- 纯出参新增,无存量字段/路径变更,向后兼容,无回滚负担。
- 已部署测试服并造数实证通过。