4.5 KiB
4.5 KiB
| 1 | ID | Title | Description | Acceptance | Test_Method | Tools | Dev_Status | Review1_Status | Regression_Status | Files | Dependencies | Notes |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2 | A1 | R103 跨页面设计一致性合同 | 以 R100 设计规则和 R102 剩余诊断结果为输入,收口路由标题、采购上传控件、票据中心 UUID 展示和跨页面视觉验证。 | 本 CSV 校验通过;本批仅改前端展示和测试,不改后端 API、权限、状态机和数据结构。 | python3 /home/shunli/.codex/skills/plan/scripts/validate_issues_csv.py issues/2026-05-06_23-07-02-r103-cross-page-ui-consistency.csv;业务流程影响:固定跨页面 UI 一致性收尾范围。 | python|manual | DONE | DONE | DONE | issues/2026-05-06_23-07-02-r103-cross-page-ui-consistency.csv | [] | 回滚路径:revert 本批提交即可;无 Prisma 迁移。 |
| 3 | A2 | 补齐导航中文标题 | 为采购、差旅、预算、付款、应付、票据、盘点、系统切换、ERP 集成和 dashboard 路径补齐 PAGE_TITLES,避免顶栏显示路由路径。 | node scripts/qa/check-ui-design-rules.mjs 不再报告 navigation.no_route_title_fallback;PC 顶栏显示中文业务标题。 | node scripts/qa/check-ui-design-rules.mjs;cd client && npx playwright test tests/e2e/r103-cross-page-ui-consistency.spec.ts --reporter=list;业务流程:员工从导航进入采购/票据/付款等页面,顶部标题为中文。 | node|playwright|typescript | DONE | DONE | DONE | client/src/features/navigation/schema.ts | ["A1"] | 只补展示映射,不重构导航 schema。 |
| 4 | A3 | 采购上传控件中文化 | 采购申请页附件上传使用自定义中文按钮和文件名回显,不直接暴露浏览器原生文件输入。 | 静态诊断不再报告 PurchaseRequestsPage 原生上传控件;采购草稿页附件区域显示 上传附件 和已选文件名。 | node scripts/qa/check-ui-design-rules.mjs;cd client && npm run typecheck;业务流程:采购申请草稿→选择附件→看到中文按钮和文件名回显。 | node|typescript|playwright | DONE | DONE | DONE | client/src/pages/PurchaseRequestsPage.tsx | ["A1"] | 不改上传 API;原 input 保留为 visually hidden 触发器。 |
| 5 | A4 | 票据中心报销卡展示兜底 | 票据中心绑定卡不再用报销 UUID 作为主展示;缺少业务编号时显示草稿单、报销单或日期摘要。 | 静态诊断不再报告 InvoiceBindCard 的 UUID 主展示;票据绑定列表主标题不展示 UUID。 | node scripts/qa/check-ui-design-rules.mjs;cd client && npx playwright test tests/e2e/r103-cross-page-ui-consistency.spec.ts --reporter=list;业务流程:票据中心查看可绑定报销单,主标题为业务编号或摘要。 | node|playwright|typescript | DONE | DONE | DONE | client/src/pages/invoice-pool/InvoiceBindCard.tsx|client/src/lib/reimbursementDisplay.ts | ["A1"] | 复用 R102 reimbursementDisplay,不新增重复兜底逻辑。 |
| 6 | A5 | 跨页面自动化视觉核验 | 新增 R103 Playwright 用例,用 mock API 覆盖关键页面中文标题、票据绑定卡兜底和采购上传控件;保留桌面与移动视口截图用于回归定位。 | R103 Playwright 通过;截图输出到 output/playwright/r103;页面不出现路由式标题、UUID 主展示或原生英文上传按钮。 | cd client && npx playwright test tests/e2e/r103-cross-page-ui-consistency.spec.ts --reporter=list;业务流程:PC 访问 dashboard/采购/票据;移动视口访问采购或票据页面,关键文案和控件可见。 | playwright | DONE | DONE | DONE | client/tests/e2e/r103-cross-page-ui-consistency.spec.ts|output/playwright/r103 | ["A2","A3","A4"] | 测试使用 mock API,不依赖生产数据;截图目录不纳入 git。 |
| 7 | A6 | 验证回填与中文提交 | 执行 CSV 校验、设计规则、前端 typecheck/build、R103 Playwright 和 git diff 检查,回填状态后中文提交。 | A1-A5 状态 DONE;node scripts/qa/check-ui-design-rules.mjs 输出 0 findings;提交信息中文且引用 R103/A1-A6。 | python3 /home/shunli/.codex/skills/plan/scripts/validate_issues_csv.py issues/2026-05-06_23-07-02-r103-cross-page-ui-consistency.csv;node scripts/qa/check-ui-design-rules.mjs;cd client && npm run build;cd client && npx playwright test tests/e2e/r103-cross-page-ui-consistency.spec.ts --reporter=list;git diff --check;业务流程:跨页面 UI 一致性可构建可回归。 | python|node|npm|playwright|git | DONE | DONE | DONE | issues/2026-05-06_23-07-02-r103-cross-page-ui-consistency.csv|client | ["A1","A2","A3","A4","A5"] | 若 build 仍有既有 Vite chunk warning,记录但不在本批处理。 |