文件
hyb-oa/.trellis/tasks/05-30-reimbursement-detail-evidence-actions/prd.md
T

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 typecheck
  • cd client && npm run build
  • 聚焦报销详情、报销主流程和视觉壳层相关 Playwright。
  • node scripts/qa/check-trellis-governance.mjs
  • git diff --check

Implementation Notes

  • 先盘点当前详情页重复展示的付款、摘要和更多区,再收敛结构。
  • 优先复用 PageHeader、WorkspaceHeader、PrimaryTable、ops-* 和既有状态/附件组件。
  • 若需要新增共享详情分区组件,必须确认采购、合同、项目是否会复用;否则保持页面内小改。