文件
hyb-oa/issues/2026-03-21_10-50-00-p28-portal-search-workbench-refresh.csv
2026-03-21 18:02:53 +08:00

4.0 KiB

1IDTitleDescriptionAcceptanceTest_MethodToolsDev_StatusReview1_StatusRegression_StatusFilesDependenciesNotes
2P28-0P28执行合同刷新建档与范围收缩创建并校验门户搜索与工作台 refresh 合同 CSV 并冻结本轮只做替代旧 OA 首页所需最小能力的边界refresh CSV 通过校验且明确本期只做搜索 工作台 常用入口 最近访问和轻量公告 不做完整 CMS 或知识库python3 /home/shunli/.codex/skills/plan/scripts/validate_issues_csv.py issues/2026-03-21_10-50-00-p28-portal-search-workbench-refresh.csvmanualTODOTODOTODOissues/2026-03-21_10-50-00-p28-portal-search-workbench-refresh.csv|issues/2026-03-21_09-40-00-p28-portal-search-workbench.csv|client/src/pages/PortalHomePage.tsx|server/src/routes/dashboard.js[]supersede 2026-03-21_09-40-00-p28-portal-search-workbench.csv 并把个性化和公告能力收敛到最小可用版本
3P28-1全局搜索最小实现为报销 请假 采购 差旅 资产和已落地经营对象提供统一搜索入口与权限过滤搜索可命中编号 标题 主数据对象并按权限过滤返回统一 hit 结构 优先使用 PostgreSQL 内建能力cd server && npm run prisma:validate && npm test -- tests/unit/routes/assets.search.test.js tests/unit/routes/workflow.permissions.test.js && cd ../client && npm run typecheck && npm run buildmanualTODOTODOTODOserver/src/routes/search.js|server/src/services/search.js|server/prisma/schema.prisma|client/src/api/search.ts|client/src/components/GlobalSearch.tsx|client/src/layouts/AppShellLayout.tsx["P28-0"]不引入独立搜索集群或额外基础设施
4P28-2工作台卡片与权限化首页按权限展示审批 财务 采购 资产 运营卡片并形成统一工作台首页不同角色进入门户可看到差异化卡片且工作台首页可替代旧 OA 常用入口cd server && npm test -- tests/unit/routes/ai.test.js && cd ../client && npm run typecheck && npm run buildmanualTODOTODOTODOserver/src/routes/portal.js|server/src/routes/configRead.js|client/src/pages/PortalHomePage.tsx|client/src/components/portal|client/src/auth/permissions.ts["P28-1"]个性化仅做权限显隐与固定卡片 不做复杂拖拽布局
5P28-3快捷操作与最近访问补齐常用入口 最近访问和待办优先级排序以提升内部使用效率用户可查看最近访问 常用入口和高优先级待办排序且 PC 与移动端体验一致cd server && npm test -- tests/unit/routes/workflow.permissions.test.js && cd ../client && npm run typecheck && npm run buildmanualTODOTODOTODOserver/src/routes/portal.js|client/src/pages/PortalHomePage.tsx|client/src/layouts/AppShellLayout.tsx|client/src/router/index.tsx|client/src/lib/utils.ts["P28-2"]最近访问默认使用本地记录 不做跨端画像和推荐系统
6P28-4轻量公告与 FAQ 聚合入口为门户首页补齐公告卡片 制度链接 常见问题入口与基础上下线能力可展示公告卡片 制度入口 FAQ 链接和上下线状态 但不引入完整内容管理系统cd server && npm test -- tests/unit/routes/notifications.test.js && cd ../client && npm run typecheck && npm run buildmanualTODOTODOTODOserver/src/routes/announcements.js|server/prisma/schema.prisma|client/src/pages/PortalHomePage.tsx|client/src/api/announcements.ts|client/src/components/portal/AnnouncementCard.tsx["P28-3"]公告采用最小发布模型 仅支持文本 摘要 链接与上下线时间
7P28-5P28回归与验收收口完成搜索 工作台 快捷入口与轻量公告后的整体验收收口搜索权限过滤 工作台首页 最近访问 快捷入口与门户性能通过验收且零回归cd server && npm test && ./scripts/regression-dashboard.sh && ./scripts/regression-all.sh && cd ../client && npm run typecheck && npm run buildmanualTODOTODOTODOissues/2026-03-21_10-50-00-p28-portal-search-workbench-refresh.csv|server/scripts/regression-dashboard.sh|server/scripts/regression-all.sh|client/src/pages/PortalHomePage.tsx["P28-4"]P28-lite 以替代旧 OA 首页的最小可用能力为完成标准