Files
K12C/3-task-K12C.md

362 lines
12 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 开发任务文档 | K12C
**项目**:教师岗位胜任力管理 Demo 原型
**版本**v1.0
**状态**:待开发
---
## 1. 整体规划
### 1.1 技术选型
| 技术 | 选择 | 理由 |
|------|------|------|
| 前端框架 | React + Vite | 快速开发、热更新、组件化 |
| UI 组件库 | Tailwind CSS | 现代化样式、响应式 |
| 图表库 | Recharts | 雷达图、柱状图 |
| 路由 | React Router | 页面跳转 |
| 状态管理 | Zustand | 轻量级、全局状态 |
### 1.2 项目结构
```
k12c-demo/
├── public/
│ └── index.html
├── src/
│ ├── components/ # 通用组件
│ │ ├── Layout/
│ │ ├── Navbar/
│ │ ├── RadarChart/
│ │ ├── ScoreCard/
│ │ └── Button/
│ ├── pages/ # 页面
│ │ ├── Login/
│ │ ├── RoleSelect/
│ │ ├── Teacher/ # 教师端
│ │ │ ├── Profile/ # 能力画像
│ │ │ ├── Suggestions/# AI建议
│ │ │ └── PDP/ # 发展计划
│ │ ├── Manager/ # 管理者端
│ │ │ └── Dashboard/ # 管理驾驶舱
│ │ └── Shared/ # 共享页面
│ ├── data/ # 模拟数据
│ │ ├── teachers.ts
│ │ ├── competencies.ts
│ │ └── evaluations.ts
│ ├── hooks/ # 自定义Hooks
│ ├── styles/ # 全局样式
│ ├── App.tsx
│ └── main.tsx
├── package.json
└── vite.config.ts
```
---
## 2. 页面清单(25页)
### 2.1 入口与导航(3页)
| 序号 | 页面 | 路由 | 功能描述 |
|------|------|------|----------|
| 1 | 登录页 | `/login` | 账号密码输入、记住登录 |
| 2 | 角色选择页 | `/select-role` | 选择进入:学科教师/班主任/管理者 |
| 3 | 首页/仪表盘 | `/` | 欢迎页、快捷入口、待办事项 |
### 2.2 教师端(10页)
#### 能力画像模块(4页)
| 序号 | 页面 | 路由 | 功能描述 |
|------|------|------|----------|
| 4 | 能力画像-概览 | `/teacher/profile` | 五维雷达图 + 综合得分 |
| 5 | 能力画像-专业知识 | `/teacher/profile/knowledge` | 专业知识维度详情 |
| 6 | 能力画像-教学能力 | `/teacher/profile/teaching` | 教学设计与实施详情 |
| 7 | 能力画像-协作沟通 | `/teacher/profile/collaboration` | 协作沟通维度详情 |
| 8 | 能力画像-数字技术 | `/teacher/profile/digital` | 数字技术维度详情 |
| 9 | 能力画像-持续发展 | `/teacher/profile/growth` | 持续发展维度详情 |
#### AI 发展建议模块(2页)
| 序号 | 页面 | 路由 | 功能描述 |
|------|------|------|----------|
| 10 | AI 建议-概览 | `/teacher/suggestions` | AI 生成的个性化建议卡片 |
| 11 | AI 建议-详情 | `/teacher/suggestions/:id` | 单条建议的详细内容与资源 |
#### 个人发展计划(PDP)模块(3页)
| 序号 | 页面 | 路由 | 功能描述 |
|------|------|------|----------|
| 12 | PDP-列表 | `/teacher/pdp` | 个人发展计划列表 |
| 13 | PDP-创建 | `/teacher/pdp/create` | 创建新的发展计划 |
| 14 | PDP-详情 | `/teacher/pdp/:id` | 查看/编辑计划详情与进度 |
#### 自评模块(1页)
| 序号 | 页面 | 路由 | 功能描述 |
|------|------|------|----------|
| 15 | 自评问卷 | `/teacher/evaluate` | 在线填写自评问卷 |
### 2.3 管理者端(10页)
#### 管理驾驶舱模块(5页)
| 序号 | 页面 | 路由 | 功能描述 |
|------|------|------|----------|
| 16 | 驾驶舱-概览 | `/manager/dashboard` | 全校胜任力热力图、关键指标 |
| 17 | 驾驶舱-学科对比 | `/manager/dashboard/subject` | 各学科教师胜任力对比 |
| 18 | 驾驶舱-年级分析 | `/manager/dashboard/grade` | 各年级胜任力分布 |
| 19 | 驾驶舱-能力排名 | `/manager/dashboard/ranking` | 教师能力排行榜 |
| 20 | 驾驶舱-四象限 | `/manager/dashboard/quadrant` | 能力-成果关联分析 |
#### 人才管理模块(4页)
| 序号 | 页面 | 路由 | 功能描述 |
|------|------|------|----------|
| 21 | 人才-高潜教师 | `/manager/talent/potential` | 高潜教师识别与详情 |
| 22 | 人才-待提升 | `/manager/talent/pending` | 待提升教师列表 |
| 23 | 人才-标杆教师 | `/manager/talent/best` | 标杆案例展示 |
| 24 | 人才-配置建议 | `/manager/talent/assign` | 岗位配置智能推荐 |
#### 评估管理(1页)
| 序号 | 页面 | 路由 | 功能描述 |
|------|------|------|----------|
| 25 | 评估管理 | `/manager/evaluation` | 发起评估、查看回收进度 |
### 2.4 共享页面(2页)
| 序号 | 页面 | 路由 | 功能描述 |
|------|------|------|----------|
| 26 | 胜任力模型说明 | `/model` | 展示五维胜任力定义与岗位配置 |
| 27 | 设置 | `/settings` | 个人信息、通知设置 |
---
## 3. 组件清单
### 3.1 通用组件
| 组件名 | 说明 | 状态 |
|--------|------|------|
| `Button` | 按钮(primary/secondary/ghost | ⬜ |
| `Card` | 卡片容器 | ⬜ |
| `Badge` | 徽章标签 | ⬜ |
| `Avatar` | 头像 | ⬜ |
| `Input` | 输入框 | ⬜ |
| `Select` | 下拉选择 | ⬜ |
| `Modal` | 模态框 | ⬜ |
| `Toast` | 消息提示 | ⬜ |
| `Loading` | 加载状态 | ⬜ |
| `Empty` | 空状态 | ⬜ |
### 3.2 业务组件
| 组件名 | 说明 | 状态 |
|--------|------|------|
| `Navbar` | 顶部导航栏 | ⬜ |
| `Sidebar` | 侧边栏菜单 | ⬜ |
| `RadarChart` | 五维雷达图 | ⬜ |
| `BarChart` | 柱状图 | ⬜ |
| `Heatmap` | 热力图 | ⬜ |
| `QuadrantChart` | 四象限图 | ⬜ |
| `ScoreCard` | 得分卡片 | ⬜ |
| `ProgressRing` | 环形进度 | ⬜ |
| `SuggestionCard` | AI建议卡片 | ⬜ |
| `PDPItem` | 发展计划项 | ⬜ |
| `CompetencyBar` | 能力条形图 | ⬜ |
| `TeacherCard` | 教师信息卡片 | ⬜ |
| `Questionnaire` | 问卷组件 | ⬜ |
---
## 4. 模拟数据
### 4.1 教师数据
| 字段 | 类型 | 示例 |
|------|------|------|
| id | string | T001 |
| name | string | 张明 |
| role | enum | teacher/head_teacher/grade_leader/director |
| subject | string | 数学 |
| grade | string | 高一 |
| avatar | string | /avatars/t001.png |
| scores | object | { knowledge: 4.2, teaching: 4.5, ... } |
| results | object | { progress_rate: 0.85, satisfaction: 4.3, ... } |
### 4.2 示例教师(6人)
| ID | 姓名 | 岗位 | 画像特征 |
|----|------|------|----------|
| T001 | 张明 | 学科教师 | 能力强 + 成果好(高潜) |
| T002 | 李华 | 学科教师 | 能力强 + 成果差(待挖掘) |
| T003 | 王芳 | 班主任 | 能力弱 + 成果好(经验型) |
| T004 | 刘强 | 学科教师 | 能力弱 + 成果差(待提升) |
| T005 | 陈静 | 年级组长 | 五维均衡(管理者) |
| T006 | 赵伟 | 教务主任 | 战略眼光(领导者) |
---
## 5. 开发里程碑
### 5.1 里程碑划分
| 阶段 | 周期 | 交付内容 | 页面数 |
|------|------|----------|--------|
| **M1 基础搭建** | Day 1 | 项目初始化、路由配置、通用组件 | - |
| **M2 登录流程** | Day 2 | 登录页、角色选择、首页 | 3页 |
| **M3 教师画像** | Day 3-4 | 能力画像6页面、雷达图 | 7页 |
| **M4 AI建议+PDP** | Day 5-6 | AI建议、PDP管理 | 5页 |
| **M5 管理者端** | Day 7-9 | 驾驶舱5页面、人才管理4页面 | 9页 |
| **M6 自评问卷** | Day 10 | 自评问卷页 | 1页 |
| **M7 完善优化** | Day 11-12 | 动效、响应式、细节打磨 | - |
| **M8 测试验收** | Day 13 | 全链路测试、问题修复 | - |
### 5.2 每日任务
**Day 1 - 基础搭建**
- [ ] 初始化 Vite + React + TypeScript 项目
- [ ] 安装依赖(Tailwind、Recharts、React Router、Zustand
- [ ] 配置 Tailwind CSS
- [ ] 创建目录结构
- [ ] 配置路由
- [ ] 实现通用组件(Button、Card、Badge、Avatar
**Day 2 - 登录流程**
- [ ] 实现登录页
- [ ] 实现角色选择页
- [ ] 实现首页框架
- [ ] 添加导航组件
**Day 3 - 能力画像(概览+详情)**
- [ ] 创建模拟数据(teachers.ts、competencies.ts
- [ ] 实现雷达图组件
- [ ] 实现能力画像概览页
- [ ] 实现5个维度详情页
**Day 4 - 能力画像(数据绑定)**
- [ ] 绑定6位示例教师数据
- [ ] 实现四象限分析图
- [ ] 实现能力对比功能
- [ ] 完善数据展示
**Day 5 - AI发展建议**
- [ ] 实现AI建议卡片组件
- [ ] 实现AI建议列表页
- [ ] 实现建议详情页
- [ ] 添加推荐资源展示
**Day 6 - 个人发展计划**
- [ ] 实现PDP列表页
- [ ] 实现PDP创建页
- [ ] 实现PDP详情页
- [ ] 添加进度追踪
**Day 7 - 管理驾驶舱(概览)**
- [ ] 实现全校胜任力热力图
- [ ] 实现关键指标卡片
- [ ] 实现数据筛选功能
**Day 8 - 管理驾驶舱(分析)**
- [ ] 实现学科对比图
- [ ] 实现年级分析图
- [ ] 实现能力排行榜
- [ ] 实现四象限分析
**Day 9 - 人才管理**
- [ ] 实现高潜教师页面
- [ ] 实现待提升教师页面
- [ ] 实现标杆案例页面
- [ ] 实现岗位配置建议
**Day 10 - 自评问卷**
- [ ] 实现问卷组件
- [ ] 实现自评问卷页面
- [ ] 添加表单验证
- [ ] 添加提交反馈
**Day 11-12 - 完善优化**
- [ ] 添加页面过渡动画
- [ ] 优化图表动效
- [ ] 适配 iPad 横屏
- [ ] 修复已知问题
**Day 13 - 测试验收**
- [ ] 全链路功能测试
- [ ] 响应式测试
- [ ] 浏览器兼容性测试
- [ ] 问题修复与验收
---
## 6. 验收标准
### 6.1 功能验收
| 功能 | 验收标准 |
|------|----------|
| 登录 | 输入账号密码可登录,默认演示账号 |
| 角色选择 | 可选择不同角色进入对应视图 |
| 能力画像 | 雷达图正确显示,数据切换流畅 |
| AI建议 | 建议卡片展示,点击展开详情 |
| PDP | 可创建、查看、编辑发展计划 |
| 驾驶舱 | 热力图、图表正确展示,数据可筛选 |
| 人才管理 | 四象限分析正确,人才分类准确 |
| 自评问卷 | 问卷可填写,提交后显示成功 |
### 6.2 视觉验收
| 项目 | 验收标准 |
|------|----------|
| 配色 | 蓝色系主色调,柔和、专业 |
| 字体 | 思源黑体/苹方,清晰易读 |
| 间距 | 留白充足,层级分明 |
| 动效 | 页面切换流畅,图表有入场动画 |
| 响应式 | iPad 横屏正常显示 |
---
## 7. 风险与应对
| 风险 | 影响 | 应对措施 |
|------|------|----------|
| Recharts雷达图定制困难 | 中 | 使用 SVG 自定义绘制,或选择 ECharts |
| 动效实现耗时 | 中 | 使用预设动画库(Framer Motion |
| 数据绑定复杂度高 | 中 | 先完成静态页面,再绑定数据 |
| 时间紧张 | 高 | 砍掉次要页面(M2优先级),保证核心路径 |
---
## 8. 附录:路由配置
```typescript
// 路由表结构
const routes = [
{ path: '/login', component: LoginPage },
{ path: '/select-role', component: RoleSelectPage },
{ path: '/', component: HomePage, auth: true },
// 教师端
{ path: '/teacher/profile', component: ProfilePage },
{ path: '/teacher/profile/:dimension', component: DimensionDetailPage },
{ path: '/teacher/suggestions', component: SuggestionsPage },
{ path: '/teacher/suggestions/:id', component: SuggestionDetailPage },
{ path: '/teacher/pdp', component: PDPListPage },
{ path: '/teacher/pdp/create', component: PDPCreatePage },
{ path: '/teacher/pdp/:id', component: PDPDetailPage },
{ path: '/teacher/evaluate', component: EvaluatePage },
// 管理者端
{ path: '/manager/dashboard', component: DashboardPage },
{ path: '/manager/dashboard/:tab', component: DashboardTabPage },
{ path: '/manager/talent/:type', component: TalentPage },
{ path: '/manager/evaluation', component: EvaluationPage },
// 共享
{ path: '/model', component: ModelPage },
{ path: '/settings', component: SettingsPage },
]
```