4.7 KiB
4.7 KiB
统一菜单命名并移除剩余台账工具
Goal
把 wave1 未覆盖的业务页面继续收敛到成熟后台惯例:全系统不再使用泛化的 台账工具 按钮,菜单栏统一使用短模块名,避免同一层级混用 报销、采购申请、合同台账 这类不同粒度名称。
What I Already Know
- 产品面向国内小于 10 人的科技初创公司,首屏要低复杂度、少解释文案、动作位置稳定。
- wave1 已完成
报销和资产页面去台账工具,并新增列表/详情/编辑薄模板规则。 - 当前仍有
台账工具残留在采购、合同、项目、付款、应付账款、票据。 - 当前菜单命名残留不一致:
报销、采购申请、合同台账、资产台账等混用。 - 用户已确认 wave2 规则:菜单统一为短模块名,页面内按具体上下文显示详情或单据名。
Scope
- 移除剩余业务页面中的用户可见
台账工具文案和按钮。 - 将原有能力迁移到明确动作:
筛选、导出、统计、新增、上传、绑定、创建批次、更多或详情页操作区。 - 统一 PC 导航、服务端导航配置和页面路由标题里的模块命名。
- 更新
docs/产品设计规则.md和前端 spec,禁止后续再新增泛化台账工具。 - 更新相关 Playwright 断言,新增或调整防回归检查。
Requirements
- 菜单栏统一短模块名:
报销采购合同项目资产付款应付账款票据
- 页面标题也优先使用短模块名;详情页、审批对象、单据正文可以继续使用具体名称如
采购申请、合同详情、采购详情。 - 不删除原功能,只把入口迁移到具体、可理解的位置。
- 不改变后端业务逻辑、权限模型、审批规则、付款状态机、OCR 规则或数据结构。
- 不做公网部署,除非用户后续另行批准。
Acceptance Criteria
client/src/pages/**中普通用户页面不再出现可点击的台账工具。- PC 菜单和服务端导航返回的业务模块名统一为短模块名。
- 采购、合同、项目、付款、应付账款、票据的原工具能力仍可通过明确动作访问。
docs/产品设计规则.md与 frontend spec 均记录禁用台账工具和菜单命名规则。cd client && npm run typecheck通过。cd client && npm run build通过。- 相关聚焦 Playwright 或静态检查通过。
Out Of Scope
- 不部署公网。
- 不重做页面视觉大布局和详情页信息架构。
- 不改审批、付款、OCR、资产流转、合同归档等业务状态机。
- 不一次性处理非业务菜单,如后台管理子页面、审计、配置页面的深层命名。
Test Plan
rg -n "台账工具" client/src/pages client/src/components server/src/services/workspaceSettings.js docs/产品设计规则.md .trellis/spec/hyb-oa/frontend-react-vite-design.mdcd client && npm run typecheckcd client && npm run build- 聚焦运行受影响的菜单/视觉/确认类 Playwright 测试。
git diff --checkpython3 ./.trellis/scripts/task.py validate 05-31-unified-menu-remove-ledger-tools-wave2node scripts/qa/check-trellis-governance.mjs
Validation Results
rg -n "台账工具|showLedgerTools|showBatchTools|ledger-tools|合同台账|资产台账|票据中心|AP 运营|ERP 集成" client/src server/src/services/workspaceSettings.js client/src/features/navigation/schema.ts:无匹配。cd client && npm run typecheck:通过。cd client && npm run build:通过。E2E_BASE_URL=http://127.0.0.1:5173 npx playwright test tests/e2e/r103-cross-page-ui-consistency.spec.ts tests/e2e/pc-finance-admin-visual-wave4.spec.ts tests/e2e/visual-shell.spec.ts --workers=1 --reporter=list:12 passed。git diff --check:通过。python3 ./.trellis/scripts/task.py validate 05-31-unified-menu-remove-ledger-tools-wave2:通过。node scripts/qa/check-trellis-governance.mjs:通过,有implement_non_spec_context提醒,原因为implement.jsonl引用了业务事实源docs/产品设计规则.md。
Technical Notes
- 设计裁决:
frontend-designskill;成熟后台参考 Ant Design / Ant Design Pro 的命名和动作位置。 - 重点页面:
client/src/pages/PurchaseRequestsPage.tsxclient/src/pages/ContractsRegistryPage.tsxclient/src/pages/ProjectsPage.tsxclient/src/pages/PaymentBatchesPage.tsxclient/src/pages/ApOperationsPage.tsxclient/src/pages/InvoicePoolPage.tsx
- 菜单配置:
client/src/components/navigation/NavLinks.tsxclient/src/features/navigation/schema.tsserver/src/services/workspaceSettings.js