2.8 KiB
2.8 KiB
报销详情证据与动作区重构
Goal
按全页面设计规则重构报销详情页,让用户先看清状态、下一步、业务摘要和证据,再处理补材料、查看进度、导出或付款相关入口。目标是降低报销详情首屏信息噪音,避免普通报销详情复制财务付款动作。
Scope
- In scope:报销详情 PC 页面、相关详情分区组件、报销详情断言和必要视觉截图。
- Out of scope:报销列表、报销后端状态机、OCR 服务、付款后端和公网部署。
Pages
client/src/pages/ReimbursementDetailPage.tsx- 相关共享组件和 E2E:仅在确有复用价值或断言需要时调整。
Requirements
- 顶部固定展示报销单状态、下一步、报销人、金额、项目/事由和当前节点。
- 主区按统一顺序组织:业务摘要、明细、PDF 发票、普通附件、风险/校验提示、审批/处理历史。
- 右侧命令区只放当前对象可执行动作和原因说明,不重复付款状态、摘要或历史。
- 付款相关动作只显示付款状态、回单状态、
查看付款、补回单或进入付款记录入口;不直接放标记已付款、取消付款、批量付款、执行付款。 - 发票、附件、合同材料、资产候选和付款记录按“摘要 + 跳转”展示,不复制对方模块流程。
- 普通用户不展示 UUID、taskId、内部状态码、OCR provider、原始 payload 或完整本地路径。
Out of Scope
- 不改报销状态机、审批规则、付款后端逻辑或 OCR 识别逻辑。
- 不新增银行直连、ERP/总账、自动对账或真实付款能力。
- 不改变附件存储、下载权限和审计策略,除非发现现有 UI 与既有接口不一致。
Acceptance Criteria
- 报销详情第一屏能回答“现在是什么状态、谁要处理、下一步是什么、证据是否完整”。
- 已通过/待付款/已付款状态下,报销详情不出现可直接执行的付款动作。
- 发票、附件、付款和跨模块关联都按摘要、缺失提示和跳转组织。
- PC 详情右侧动作区和移动/窄屏布局不遮挡内容。
- 现有报销主链路 Playwright 断言更新并通过。
Test Plan
cd client && npm run typecheckcd client && npm run build- 聚焦报销详情、报销主流程和视觉壳层相关 Playwright。
node scripts/qa/check-trellis-governance.mjsgit diff --check
Implementation Notes
- 先盘点当前详情页重复展示的付款、摘要和更多区,再收敛结构。
- 优先复用
PageHeader、WorkspaceHeader、PrimaryTable、ops-*和既有状态/附件组件。 - 若需要新增共享详情分区组件,必须确认采购、合同、项目是否会复用;否则保持页面内小改。