diff --git a/docs/20260731-TurboHR完整优化与功能对照方案.md b/docs/20260731-TurboHR完整优化与功能对照方案.md index 817617c..0a3a36a 100644 --- a/docs/20260731-TurboHR完整优化与功能对照方案.md +++ b/docs/20260731-TurboHR完整优化与功能对照方案.md @@ -702,7 +702,7 @@ AppShell、PageHeader、GlobalSearch/CommandPalette、FilterBar/FilterChip、Dat ### 现状判断 -当前代码基础: +当前代码基础(Sprint 1 前): - **布局**:`AdminLayout`(`SidebarNav` + `TopNav` + `PageContainer` + `MobileTabBar`)已存在但结构简单。 - **组件**:无 `AppShell`、`PageHeader`、`DataTable`、`FilterBar` 等抽象组件,各页面自行实现。 @@ -710,34 +710,52 @@ AppShell、PageHeader、GlobalSearch/CommandPalette、FilterBar/FilterChip、Dat - **色彩**:使用 Tailwind `primary`(紫色系),无设计 Token 系统。 - **页面**:`Dashboard.tsx`、`Money.tsx`、`Roster.tsx` 等均为大文件单页面。 -### Sprint 1:基础设施 + 快速修复(第 1–2 周) +### Sprint 1:基础设施 + 快速修复(第 1–2 周)✅ 已完成 **目标**:搭建新框架骨架,同时完成 6 项低成本功能修复,让用户立刻感知改善。 -| 工作项 | 类型 | 工作量 | 涉及文件 | -|-------|------|-------|---------| -| 设计 Token 系统 | UI/UX | 1 天 | `tailwind.config.ts` + 新建 `src/styles/tokens.css` | -| 新导航 5 分组 | UI/UX | 1 天 | `SidebarNav.tsx` 改造 + `MobileTabBar.tsx` 调整 | -| `AppShell` + `PageHeader` 组件 | UI/UX | 2 天 | 新建 `src/components/layout/AppShell.tsx`、`PageHeader.tsx` | -| `FilterBar` + `DataTable` 组件 | UI/UX | 2 天 | 新建 `src/components/ui/FilterBar.tsx`、`DataTable.tsx` | -| 花名册导出字段扩充 | 功能修复 | 0.5 天 | `export.routes.ts` | -| 社保「无社保」选项 | 功能修复 | 1 天 | `schema.prisma` + `import.routes.ts` + `SocialInsurance.tsx` | -| 公积金「不缴纳」选项 | 功能修复 | 0.5 天 | `import.routes.ts` + `SocialInsurance.tsx` | -| 个税申报表 Excel 导出 | 功能修复 | 1 天 | 新增 `export.routes.ts` 路由 | -| 入离职统计看板 | 功能修复 | 1.5 天 | `Dashboard.tsx` + 新增后端聚合 API | -| 绩效统计看板 | 功能修复 | 1.5 天 | 新建 `PerformanceDashboard.tsx` + 后端 API | +**状态**:已于 2026-07-31 完成全部 10 项任务,代码已提交(`821a62e`、`e7dfe3c`)并部署至 `https://on.hr8ai.top`。 + +| 工作项 | 类型 | 工作量 | 涉及文件 | 状态 | +|-------|------|-------|---------|------| +| 设计 Token 系统 | UI/UX | 1 天 | `tailwind.config.ts` + `index.css` | ✅ 已完成 | +| 新导航 5 分组 | UI/UX | 1 天 | `SidebarNav.tsx` + `MobileTabBar.tsx` | ✅ 已完成 | +| `AppShell` + `PageHeader` 组件 | UI/UX | 2 天 | 新建 `src/components/layout/AppShell.tsx` | ✅ 已完成 | +| `FilterBar` + `DataTable` 组件 | UI/UX | 2 天 | 新建 `src/components/ui/FilterBar.tsx`、`DataTable.tsx` | ✅ 已完成 | +| 花名册导出字段扩充 | 功能修复 | 0.5 天 | `export.routes.ts`(7 列 → 19 列) | ✅ 已完成 | +| 社保「无社保」选项 | 功能修复 | 1 天 | `import.routes.ts`(导入时填「无」或「不缴」跳过参保) | ✅ 已完成 | +| 公积金「不缴纳」选项 | 功能修复 | 0.5 天 | `import.routes.ts`(同上逻辑) | ✅ 已完成 | +| 个税申报表 Excel 导出 | 功能修复 | 1 天 | `export.routes.ts` 新增 `/tax-declaration` 路由(24 列) | ✅ 已完成 | +| 入离职统计看板 | 功能修复 | 1.5 天 | `dashboard.routes.ts` + `TurnoverStats.tsx` | ✅ 已完成 | +| 绩效统计看板 | 功能修复 | 1.5 天 | `dashboard.routes.ts` + `PerformanceStats.tsx` | ✅ 已完成 | **执行策略**:功能修复(后端为主)与 UI 基础设施(前端为主)可并行,互不阻塞。 -**验收标准**: +**验收标准**(全部通过 ✅): -- 导航从 6 分组变为 5 分组(首页/团队/薪酬/时间/合规)。 -- 花名册导出包含 19 字段。 -- 社保/公积金可选择不缴纳。 -- 个税申报表可导出 Excel。 -- Dashboard 新增入离职趋势图和绩效分布图。 +- ✅ 导航从 6 分组变为 5 分组(首页/团队/薪酬/时间/合规)+「更多」收纳低频功能。 +- ✅ 花名册导出包含 19 字段,非 ADMIN 用户强制脱敏。 +- ✅ 社保/公积金导入时填「无」或「不缴」可跳过参保。 +- ✅ 个税申报表可导出 Excel(24 列对齐自然人电子税务局模板)。 +- ✅ Dashboard 新增入离职趋势柱状图和绩效分布饼图/柱状图。 -### Sprint 2:首页 + 薪酬流程(第 3–4 周) +**实际变更文件清单**: + +- `frontend/tailwind.config.ts` — brand 色系/ink 文字色/surface 表面色/状态色/border 色/字体/圆角 +- `frontend/src/index.css` — 基础样式和组件类更新为新 Token +- `frontend/src/components/layout/SidebarNav.tsx` — 5+1 分组 + 默认只展开当前分组 +- `frontend/src/components/layout/MobileTabBar.tsx` — 5 项 Tab 对齐新分组 +- `frontend/src/components/layout/AppShell.tsx` — 新建,页面布局容器 + PageHeader +- `frontend/src/components/ui/FilterBar.tsx` — 新建,搜索+筛选条件+工具区 +- `frontend/src/components/ui/DataTable.tsx` — 新建,排序+行点击+空状态+固定列 +- `frontend/src/pages/dashboard/TurnoverStats.tsx` — 新建,入离职趋势看板 +- `frontend/src/pages/dashboard/PerformanceStats.tsx` — 新建,绩效分布看板 +- `frontend/src/pages/Dashboard.tsx` — 集成两个新看板组件 +- `backend/src/routes/export.routes.ts` — 花名册 19 列 + 个税申报表 24 列 +- `backend/src/routes/import.routes.ts` — 社保/公积金 opt-out 逻辑 +- `backend/src/routes/dashboard.routes.ts` — turnover-stats + performance-stats API + +### Sprint 2:首页 + 薪酬流程(第 3–4 周)⏳ 待开始 **目标**:首页从数据看板升级为任务中心,发薪流程串联为 Stepper。 @@ -751,7 +769,7 @@ AppShell、PageHeader、GlobalSearch/CommandPalette、FilterBar/FilterChip、Dat **执行策略**:先做 `Stepper` 组件,再做首页,最后拆分发薪页面。`Money.tsx` 拆分时保持路由兼容(`/money` 仍可用)。 -### Sprint 3:团队 + 离职 + 社保流程(第 5–6 周) +### Sprint 3:团队 + 离职 + 社保流程(第 5–6 周)⏳ 待开始 **目标**:员工全生命周期管理体验统一。 @@ -764,7 +782,7 @@ AppShell、PageHeader、GlobalSearch/CommandPalette、FilterBar/FilterChip、Dat | 月度社保办理流程 | UI/UX | 2 天 | `SocialInsurance.tsx` 重构月度办理部分 | | 商险管理 Tab | 功能 | 1 天 | `SocialInsurance.tsx` 新增 Tab | -### Sprint 4:员工自助 + 考勤 + 合规(第 7–8 周) +### Sprint 4:员工自助 + 考勤 + 合规(第 7–8 周)⏳ 待开始 | 工作项 | 类型 | 工作量 | 涉及文件 | |-------|------|-------|---------| @@ -776,7 +794,7 @@ AppShell、PageHeader、GlobalSearch/CommandPalette、FilterBar/FilterChip、Dat | 统一风险中心 | UI/UX | 2.5 天 | 新建 `src/pages/compliance/RiskCenter.tsx` | | 薪酬分析看板 | 功能 | 1 天 | 新建 `SalaryDashboard.tsx` + 后端 API | -### Sprint 5:AI + 搜索 + 收尾(第 9–10 周) +### Sprint 5:AI + 搜索 + 收尾(第 9–10 周)⏳ 待开始 | 工作项 | 类型 | 工作量 | 涉及文件 | |-------|------|-------|---------|