文件
hyb-oa/.trellis/tasks/05-31-business-edit-template-remove-ledger-tools-wave1/prd.md
T

5.0 KiB
原始文件 Blame 文件历史

建立业务编辑模板并移除台账工具首批

Goal

按已确认的 frontend-design 规则建立业务编辑页模板,并先在报销、资产两个高频页面取消 台账工具 入口,把原有能力迁移到具体、可理解的动作位置,降低国内小团队日常使用复杂度。

What I Already Know

  • 面向对象是国内小于 10 人的科技初创公司,系统应优先低复杂度、高频动作和成熟后台惯例。
  • 当前已有列表模板 BusinessListTemplate.tsx 和详情模板 BusinessDetailTemplate.tsx。
  • 当前还没有统一编辑模板。
  • 用户明确不想要 台账工具 这个泛化入口。
  • 本轮采用成熟 Ant Design / Ant Design Pro 式后台结构:页头主动作、状态/范围切换、筛选、表格、选中后批量条、详情右侧操作区、编辑页分区表单。

Scope

  • 新增 BusinessEditTemplate 及配套编辑页布局组件。
  • 首批只迁移报销列表和资产列表中的 台账工具 入口。
  • 更新 frontend 设计规范,固化三类模板和 台账工具 禁用规则。
  • 补充或调整必要的前端测试断言。

Requirements

  • 列表、详情、编辑模板必须只统一布局和交互槽位,不做 JSON 配置式页面生成器。
  • 台账工具 按钮名不得继续出现在报销、资产首批页面。
  • 报销列表:
    • 新建报销 保持页头主按钮。
    • 更多创建方式归入 新建报销 的下拉或明确命名入口。
    • 导出使用明确的 导出 入口。
    • 全范围/仅自己/审批中台账使用范围或筛选动作,不藏在 台账工具。
  • 资产列表:
    • 常用列表筛选和状态切换保持在列表上方。
    • 导出、盘点、导入等能力使用具体动作名或详情/管理入口,不使用 台账工具。
  • 编辑模板应支持:
    • 标题、返回、状态;
    • 右上角操作;
    • 底部固定操作条;
    • 分区表单;
    • 校验摘要;
    • 未保存提醒接入点。

Acceptance Criteria

  • 新增业务编辑模板组件并可被后续页面复用。
  • 报销页不再出现 台账工具 文案,原功能仍可通过具体按钮/下拉访问。
  • 资产页不再出现 台账工具 文案,原功能仍可通过具体按钮/下拉访问或合理迁移。
  • 前端规范记录三类模板和 台账工具 禁用规则。
  • cd client && npm run typecheck 通过。
  • cd client && npm run build 通过。
  • 相关 Playwright/静态检查按需通过。

Out Of Scope

  • 不一次性迁移合同、采购、付款、应付账款、票据和项目。
  • 不重做业务状态机、审批规则或后端接口。
  • 不把所有业务字段改成配置生成。
  • 不做公网部署,除非用户后续明确批准。

Test Plan

  • cd client && npm run typecheck
  • cd client && npm run build
  • rg -n "台账工具" client/src/pages/ReimbursementsPage.tsx client/src/pages/AssetRegistryPage.tsx
  • 运行受影响页面相关的聚焦 Playwright 测试,或新增静态/组件断言覆盖入口文案。

Technical Notes

  • 设计裁决:frontend-design skill。
  • 现有列表模板:client/src/components/patterns/BusinessListTemplate.tsx
  • 现有详情模板:client/src/components/patterns/BusinessDetailTemplate.tsx
  • 首批页面:client/src/pages/ReimbursementsPage.tsx、client/src/pages/AssetRegistryPage.tsx

Validation Result

  • cd client && npm run typecheck:通过。
  • cd client && npm run build:通过。
  • rg -n "台账工具|showLedgerTools|asset-ledger-tools|更多创建方式" client/src/pages/ReimbursementsPage.tsx client/src/pages/AssetRegistryPage.tsx:无结果。
  • git diff --check:通过。
  • python3 ./.trellis/scripts/task.py validate 05-31-business-edit-template-remove-ledger-tools-wave1:通过。
  • node scripts/qa/check-trellis-governance.mjs:通过。
  • cd client && npx playwright test tests/e2e/system-action-confirmation.spec.ts --workers=1 --reporter=list:2 passed。
  • cd client && npx playwright test tests/e2e/visual-shell.spec.ts --workers=1 --reporter=list:5 passed。

Deployment Result

  • 部署提交:1428cc4。
  • 部署命令:SYNC_ENV=0 bash deploy/trialrun/deploy.sh。
  • 部署时间:2026-05-31。
  • 部署结果:通过,未同步或覆盖远端 .env。
  • 远端部署自动检查:部署环境契约、远端 /ready、external deps smoke、runtime smoke、公网前端资源文案扫描均通过。
  • 公网匿名检查:https://oa.hyinda.com/ready 返回 ok=true,首页 HTTP 200。
  • 公网 readiness:加载本机 live smoke 凭据后,check-live-smoke-env --strict 通过,run-live-smoke-readiness.sh 通过;live smoke 3 passed,真实 OCR 样本复核 1 passed,pending OCR 因本地未注入 DATABASE_URL 记录为 SKIP。
  • 公网定向复检:报销页和资产页均不再出现 台账工具,截图保存在 output/playwright/live-post-deploy-ledger-tools/。
  • 结论:用户可以访问公网验证本轮改造效果。