5.7 KiB
5.7 KiB
| 1 | ID | Title | Description | Acceptance | Test_Method | Tools | Dev_Status | Review1_Status | Regression_Status | Files | Dependencies | Notes |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2 | A1 | 废弃飞书方案与清理工作区 | 废弃飞书转向基线,删除未跟踪飞书文件并回退本轮飞书相关 tracked 改动,不使用 git reset --hard。 | 1) git status 不再包含 feishu/lark 相关新增文件;2) 不保留 FEISHU_* 配置、飞书路由、飞书 Prisma 表、飞书前端入口和飞书测试;3) 企业微信现有入口、绑定、通知能力不被删除。 | 命令:git status --short && rg -n "FEISHU_|feishu|Feishu|飞书|lark|Lark" server/src client/src server/prisma server/tests client/tests;业务流程:管理员确认飞书不再作为主平台或接入路线,系统仍保留企业微信工作台入口。 | git|ripgrep | DONE | DONE | DONE | server|client|server/prisma|issues | [] | 回滚路径:如后续重新启用飞书,重新创建独立 Issue CSV 和迁移,不复用本轮废弃实现。 |
| 3 | A2 | OA 唯一审批中心事实源 | 固定 hyb-oa 是唯一业务主系统和唯一审批中心,企业微信原生审批不作为正式审批入口。 | 1) 产品/管理员/员工文档明确所有审批在 OA 内提交、审批、留痕、归档;2) 报销、采购、费用、合同、请假、补卡、外出、加班、出差均以 OA 审批为准;3) 企业微信只做入口、身份、通知和打卡原始采集。 | 业务流程:老板/管理员阅读事实源后能确认正式审批只认 OA;步骤:人工检查 docs/product-decisions.md、docs/admin-handbook.md、docs/employee-quickstart.md。 | manual | DONE | DONE | DONE | docs/product-decisions.md|docs/admin-handbook.md|docs/employee-quickstart.md | ["A1"] | 不引入企业微信审批 API;不开发复杂 BPM。 |
| 4 | A3 | 企业微信入口免登通知边界固化 | 保留一个企业微信自建应用作为海音达工作台入口,继续使用企业微信免登和消息通知,但审批动作必须回到 OA。 | 1) 管理员文档明确只建一个企业微信自建应用;2) 工作台入口默认 /mobile,PC 直接访问 OA;3) 企业微信消息只发送脱敏提醒和 deeplink;4) 不新增企业微信审批模板或审批回调依赖。 | 命令:cd client && npx playwright test tests/e2e/wecom-entry.spec.ts --workers=1 --reporter=list;业务流程:员工从企业微信工作台进入 OA 手机端,审批人从企微提醒点击进入 OA 审批页。 | playwright|manual | DONE | DONE | DONE | docs/admin-handbook.md|docs/employee-quickstart.md|client/src/lib/runtimeContext.ts|client/src/pages/LoginPage.tsx | ["A2"] | 真实企业微信后台配置需人工复核;本轮不修改生产后台。 |
| 5 | A4 | 审批待办导航与移动入口收口 | 把审批待办定位为 OA 核心入口而非边缘备用能力,PC 和移动端均应清晰可达。 | 1) PC 导航或工作台中审批待办入口清晰可达;2) 移动底部导航保留审批入口;3) 企业微信 UA 不误入 PC 页面;4) 不改变既有审批 API 契约。 | 命令:cd client && npm run typecheck && npm run build;cd client && npx playwright test tests/e2e/wecom-entry.spec.ts tests/e2e/workflow-quick-approve.spec.ts --workers=1 --reporter=list;业务流程:审批人从 PC 或手机进入待办并完成 OA 审批。 | typescript|playwright | DONE | DONE | DONE | client/src/components/navigation|client/src/features/navigation.ts|client/src/features/mobile|client/tests/e2e | ["A2","A3"] | 若现有入口已满足,仅更新文案/事实源并用测试证明。 |
| 6 | A5 | 打卡与考勤边界文档化 | 明确企业微信负责打卡原始采集,OA 后续同步并结合 OA 审批形成正式考勤口径。 | 1) 文档明确企业微信打卡不是审批中心;2) OA 请假、补卡、外出、加班审批是考勤修正依据;3) 本轮不新增打卡 API 同步实现;4) 形成后续 backlog 边界。 | 业务流程:管理员能据文档理解员工在企业微信打卡、在 OA 提交请假/补卡/外出/加班审批,最终考勤口径由 OA 汇总;步骤:人工检查 docs/admin-handbook.md 和 docs/product-decisions.md。 | manual | DONE | DONE | DONE | docs/product-decisions.md|docs/admin-handbook.md | ["A2"] | 后续如接入企业微信打卡 API,另立 Issue CSV 和只读同步/补偿策略。 |
| 7 | A6 | 审批主流程回归 | 验证报销、采购、请假等现有 OA 审批主流程不因飞书清理和入口收口被破坏。 | 1) workflow 语法检查通过;2) workflow actions 回归通过;3) 报销提交/审批/状态更新仍通过;4) 采购和请假审批相关单测或回归通过。 | 命令:cd server && npm run prisma:validate && node --check src/routes/workflow.js && node --check src/routes/reimbursements.js && ./scripts/regression-workflow-actions.sh;业务流程:报销提交->OA 审批->状态更新;采购提交->OA 审批;请假提交->OA 审批。 | node|prisma|bash | DONE | DONE | DONE | server/src/routes/workflow.js|server/src/routes/reimbursements.js|server/scripts/regression-workflow-actions.sh | ["A1","A4"] | 涉及 workflow 状态机,完成后需 reviewer/回归重点关注状态跳转和权限。 |
| 8 | A7 | 部署公网与企业微信真机复核说明 | 收口本轮验证结果并明确是否已部署、是否可在公网/企业微信真机测试。 | 1) 本地 server/client 检查通过或明确阻塞;2) git diff --check 通过;3) 最终回复明确未部署或已部署;4) 若未部署,不提示用户去企业微信真机测试。 | 命令:git diff --check;如部署则 curl /ready 和企业微信入口 smoke;业务流程:管理员根据最终报告判断是否可进入公网或企业微信工作台验收。 | git|curl|manual | DONE | DONE | DONE | server|client|docs|issues|deploy | ["A1","A2","A3","A4","A5","A6"] | 本轮默认不主动改生产配置;部署需单独确认。 |