kindergarten_java/docs/design/reading-task-prd.md

656 lines
34 KiB
Markdown
Raw Permalink Normal View History

# 阅读任务模块 PRD产品需求文档
> 版本v1.1
> 日期2026-03-20
> 状态:讨论稿
---
## 一、背景与目标
### 1.1 业务背景
幼儿园教师在完成绘本课后,需要给学生布置家庭阅读任务,建议孩子回家自主阅读相关绘本。目前缺乏一个系统化的工具来:
- 管理阅读任务的发布和追踪
- 让家长反馈孩子的完成情况
- 让教师对学生完成情况进行评价
- 让学校管理层了解全校阅读任务执行情况
### 1.2 产品目标
| 目标 | 指标 |
|------|------|
| 简化任务发布流程 | 教师发布任务时间 < 2分钟 |
| 提升家长参与度 | 任务完成率 > 80% |
| 增强家校互动 | 教师反馈率 > 90% |
| 数据可追溯 | 学校可查看所有历史记录 |
### 1.3 本期范围
| 包含 | 不包含(后续迭代) |
|------|-------------------|
| ✅ 教师端任务管理 | ❌ 家长端绘本阅读功能 |
| ✅ 家长端任务查看/提交 | ❌ 绘本付费订阅 |
| ✅ 教师端反馈评价 | ❌ 学生端独立 App |
| ✅ 学校端数据查看 | ❌ 绘本库/自动推荐 |
| ✅ 关联绘本(手动填写) | ❌ |
---
## 二、竞品分析
### 2.1 Seesaw核心参考
**定位**K-12 学生的数字学习档案平台
| 功能模块 | 说明 | 可借鉴点 |
|---------|------|---------|
| **作品提交** | 学生/家长上传照片、视频、绘画、语音 | 多种提交形式 |
| **教师反馈** | 文字、语音、手写批注 | 多维度反馈方式 |
| **数字档案** | 自动归档学生作品形成成长记录 | 生成成长档案 |
| **家校消息** | 单向公告 + 双向消息 | 灵活的沟通模式 |
| **进度报告** | 可生成并分享给家长 | 数据可视化 |
### 2.2 ClassDojo
**定位**:课堂行为管理 + 家校沟通
| 功能模块 | 说明 | 可借鉴点 |
|---------|------|---------|
| **积分系统** | 行为激励,学生获得积分/徽章 | 游戏化激励 |
| **班级故事** | 教师分享班级动态 | 内容分享 |
| **电子档案** | 家长帮助孩子上传作业 | 亲子协作 |
| **多语言支持** | 130+ 语言自动翻译 | 降低使用门槛 |
### 2.3 关键洞察
1. **提交形式多样化** - 不仅限于文字,支持照片/视频/语音
2. **反馈即时性** - 教师反馈能及时触达家长
3. **成长可追溯** - 形成学生阅读成长档案
4. **操作简便性** - 家长端必须极简,避免使用门槛
---
## 三、用户角色与场景
### 3.1 角色定义
| 角色 | 职责 | 使用端 |
|------|------|--------|
| **教师** | 创建任务、查看提交、评价反馈 | 教师端Web |
| **家长** | 接收任务、提交完成、查看反馈 | 家长端H5/小程序) |
| **学校管理员** | 查看全校数据、统计分析 | 学校端Web |
| **学生** | 实际完成任务的对象 | 通过家长端操作 |
### 3.2 核心场景
```
场景一:课后布置阅读任务
┌─────────────────────────────────────────────────────────┐
│ 教师 → 完成绘本课 → 创建阅读任务 → 填写关联绘本名称 │
│ → 设置截止日期 → 指定班级/学生 → 发布 │
└─────────────────────────────────────────────────────────┘
场景二:家长提交完成情况
┌─────────────────────────────────────────────────────────┐
│ 家长 → 收到任务通知 → 陪伴孩子阅读 → 拍照/录视频 │
│ → 上传完成证明 → 填写简单心得 → 提交 │
└─────────────────────────────────────────────────────────┘
场景三:教师评价反馈
┌─────────────────────────────────────────────────────────┐
│ 教师 → 查看待审核列表 → 查看提交内容 → 评分/写评语 │
│ → 发送反馈 → 家长收到通知 → 查看教师评价 │
└─────────────────────────────────────────────────────────┘
场景四:学校查看数据
┌─────────────────────────────────────────────────────────┐
│ 学校 → 多维度筛选 → 查看任务列表 → 查看完成情况 │
│ → 查看教师反馈 → 导出报表 │
└─────────────────────────────────────────────────────────┘
```
---
## 四、功能需求
### 4.1 教师端Web
#### 4.1.1 任务管理
| 功能 | 描述 | 优先级 |
|------|------|--------|
| **创建任务** | 填写标题、描述、关联绘本名称、截止日期 | P0 |
| **选择目标** | 按班级或按学生分配任务 | P0 |
| **任务模板** | 使用模板快速创建,支持保存为模板 | P1 |
| **编辑/删除** | 修改任务内容或撤回(未截止前) | P0 |
| **任务列表** | 按状态(进行中/已截止/草稿)筛选查看 | P0 |
#### 4.1.2 完成情况管理
| 功能 | 描述 | 优先级 |
|------|------|--------|
| **提交列表** | 按任务查看所有学生提交情况 | P0 |
| **状态筛选** | 按待审核/已通过/需改进筛选 | P0 |
| **查看详情** | 查看照片/视频/文字内容 | P0 |
| **快捷评价** | 一键标记"优秀"/"通过"/"需改进" | P0 |
| **详细评语** | 输入文字评价 | P1 |
| **评分打星** | 1-5 星评分(可选) | P2 |
| **批量操作** | 批量标记通过 | P1 |
#### 4.1.3 提醒通知
| 功能 | 描述 | 优先级 |
|------|------|--------|
| **一键提醒** | 向未完成家长发送提醒 | P0 |
| **自动提醒** | 截止前 1 天自动提醒 | P1 |
---
### 4.2 家长端H5/小程序)
> **现状分析**:已有基础框架,需完善以下功能
#### 4.2.1 任务查看
| 功能 | 描述 | 优先级 | 现状 |
|------|------|--------|------|
| **任务列表** | 显示孩子收到的所有阅读任务 | P0 | ✅ 已有基础 |
| **任务详情** | 标题、描述、关联绘本、截止日期 | P0 | ✅ 已有基础 |
| **状态显示** | 待完成/已提交/已评价 | P0 | ✅ 已有基础 |
| **倒计时** | 显示剩余时间,过期标红 | P1 | ❌ 需新增 |
#### 4.2.2 完成提交(重点完善)
| 功能 | 描述 | 优先级 | 现状 |
|------|------|--------|------|
| **拍照上传** | 拍摄孩子阅读照片(最多 9 张) | P0 | ❌ 需新增 |
| **视频上传** | 录制孩子阅读视频(限 60 秒) | P0 | ❌ 需新增 |
| **语音上传** | 录制孩子朗读语音(限 60 秒) | P1 | ❌ 需新增 |
| **文字心得** | 填写阅读心得(可选) | P1 | ⚠️ 需完善 |
| **重新提交** | 截止前可修改提交内容 | P0 | ❌ 需新增 |
#### 4.2.3 反馈查看
| 功能 | 描述 | 优先级 | 现状 |
|------|------|--------|------|
| **评价通知** | 收到教师评价的推送通知 | P0 | ❌ 需新增 |
| **评价详情** | 查看评分、评语 | P0 | ❌ 需新增 |
| **历史记录** | 查看所有任务的完成和评价记录 | P1 | ⚠️ 需完善 |
#### 4.2.4 消息通知
| 功能 | 描述 | 优先级 | 现状 |
|------|------|--------|------|
| **新任务通知** | 推送新任务提醒 | P0 | ❌ 需新增 |
| **截止提醒** | 推送截止前提醒 | P0 | ❌ 需新增 |
| **评价通知** | 推送教师评价提醒 | P0 | ❌ 需新增 |
---
### 4.3 学校端Web- 重点设计
> **核心原则**:学校端 **不创建任务**,仅查看数据和统计分析
> **核心挑战**:数据量大(多班级 × 多教师 × 每日任务),需高效筛选
#### 4.3.1 筛选系统设计(参考最佳实践)
基于竞品分析和教育管理系统的最佳实践,设计 **多维度组合筛选** 系统:
```
┌─────────────────────────────────────────────────────────────────┐
│ 🔍 筛选条件 │
├─────────────────────────────────────────────────────────────────┤
│ ┌──────────────────────────────────────────────────────────┐ │
│ │ 时间范围 │ │
│ │ [本周 ▼] [2026年3月 ▼] 或 [03-01] ~ [03-20] 自定义 │ │
│ └──────────────────────────────────────────────────────────┘ │
│ │
│ ┌────────────┐ ┌────────────┐ ┌────────────┐ │
│ │ 班级 │ │ 教师 │ │ 任务类型 │ │
│ │ [全部 ▼] │ │ [全部 ▼] │ │ [全部 ▼] │ │
│ └────────────┘ └────────────┘ └────────────┘ │
│ │
│ ┌────────────┐ ┌────────────┐ ┌─────────────────────────┐ │
│ │ 任务状态 │ │ 完成状态 │ │ 搜索任务标题... │ │
│ │ [全部 ▼] │ │ [全部 ▼] │ │ 🔍 │ │
│ └────────────┘ └────────────┘ └─────────────────────────┘ │
│ │
│ [重置筛选] [已选: 5 个条件] │
└─────────────────────────────────────────────────────────────────┘
```
##### 筛选维度详解
| 维度 | 选项 | 说明 |
|------|------|------|
| **时间范围** | 今日/本周/本月/本学期/自定义 | 快捷选择 + 日期选择器 |
| **班级** | 全部/大一班/大二班/... | 支持多选 |
| **教师** | 全部/李老师/王老师/... | 支持多选 |
| **任务类型** | 全部/阅读/活动/作业 | 单选 |
| **任务状态** | 全部/进行中/已截止/已归档 | 单选 |
| **完成状态** | 全部/高完成率(>80%)/中完成率(50-80%)/低完成率(<50%) | 单选 |
| **搜索** | 任务标题关键字 | 模糊搜索 |
##### 筛选交互设计
1. **实时筛选**:选择条件后立即刷新结果(无需点击搜索按钮)
2. **已选标签**:在筛选区下方显示已选条件的标签,可点击移除
3. **条件持久化**:筛选条件保存在 URL 参数中,刷新页面不丢失
4. **智能默认**:默认显示"本周"任务,避免数据量过大
#### 4.3.2 任务总览
```
┌─────────────────────────────────────────────────────────────────┐
│ 📊 阅读任务总览 2026年3月 第3周 │
├─────────────────────────────────────────────────────────────────┤
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ │ 12 │ │ 85% │ │ 92% │ │ 156 │ │
│ │ 发布任务 │ │ 平均完成率│ │ 教师反馈率│ │ 提交总数 │ │
│ └──────────┘ └──────────┘ └──────────┘ └──────────┘ │
├─────────────────────────────────────────────────────────────────┤
│ 📈 趋势图(按天/按班级) │
│ ┌──────────────────────────────────────────────────────────┐ │
│ │ ▓▓▓ │ │
│ │ ▓▓▓▓▓ ▓▓▓ │ │
│ │ ▓▓▓▓▓▓▓ ▓▓▓▓▓ ▓▓▓▓ ▓▓▓ │ │
│ │ ───────┬───────┬───────┬───────┬─────── │ │
│ │ 周一 周二 周三 周四 周五 │ │
│ └──────────────────────────────────────────────────────────┘ │
└─────────────────────────────────────────────────────────────────┘
```
#### 4.3.3 任务列表(表格视图)
| 列名 | 说明 | 排序 |
|------|------|------|
| 任务标题 | 点击可查看详情 | ✅ |
| 发布教师 | 教师姓名 | ✅ |
| 班级 | 目标班级 | ✅ |
| 类型 | 阅读/活动/作业 | - |
| 目标人数 | 学生总数 | - |
| 提交数 | 已提交/总人数 | ✅ |
| 完成率 | 进度条显示 | ✅ |
| 反馈率 | 教师已评价比例 | ✅ |
| 发布时间 | yyyy-MM-dd | ✅ |
| 截止时间 | yyyy-MM-dd | ✅ |
| 状态 | 进行中/已截止 | - |
| 操作 | 查看详情 | - |
#### 4.3.4 任务详情(只读)
```
┌─────────────────────────────────────────────────────────────────┐
│ 《好饿的毛毛虫》阅读任务 [返回列表] │
├─────────────────────────────────────────────────────────────────┤
│ 基本信息 │
│ 发布教师: 李老师 班级: 大一班 类型: 阅读 │
│ 发布时间: 2026-03-18 截止时间: 2026-03-20 │
│ 关联绘本: 《好饿的毛毛虫》 │
│ 任务描述: 和孩子一起阅读这本经典绘本,完成后拍照上传... │
├─────────────────────────────────────────────────────────────────┤
│ 完成情况 │
│ ┌──────────────────────────────────────────────────────────┐ │
│ │ 目标: 25人 已提交: 20人 完成率: 80% │ │
│ │ ████████████████░░░░ 80% │ │
│ └──────────────────────────────────────────────────────────┘ │
│ │
│ 学生列表 │
│ ┌──────────────────────────────────────────────────────────┐ │
│ │ 学生 │ 班级 │ 提交时间 │ 状态 │ 教师评价 │ │
│ ├──────────────────────────────────────────────────────────┤ │
│ │ 张小明 │ 大一班│ 03-19 18:30│ ✅优秀 │ 很棒!阅读认真... │ │
│ │ 李小红 │ 大一班│ 03-19 19:20│ ✅通过 │ 继续加油! │ │
│ │ 王小刚 │ 大一班│ 03-20 09:15│ ⏳待审 │ - │ │
│ │ 赵小丽 │ 大一班│ - │ ⭕未提交│ - │ │
│ │ ... │ ... │ ... │ ... │ ... │ │
│ └──────────────────────────────────────────────────────────┘ │
│ [导出明细] │
└─────────────────────────────────────────────────────────────────┘
```
#### 4.3.5 学生提交详情(只读)
学校端可查看具体学生的提交内容:
```
┌─────────────────────────────────────────────────────────────────┐
│ 张小明的提交 [返回] [导出] │
├─────────────────────────────────────────────────────────────────┤
│ 任务: 《好饿的毛毛虫》阅读任务 │
│ 提交时间: 2026-03-19 18:30 │
├─────────────────────────────────────────────────────────────────┤
│ 📷 照片 │
│ ┌─────┐ ┌─────┐ ┌─────┐ │
│ │ 📸 │ │ 📸 │ │ 📸 │ 点击查看大图 │
│ └─────┘ └─────┘ └─────┘ │
│ │
│ 📝 阅读心得 │
│ "孩子很喜欢这本书,读了好几遍,还给我讲了毛毛虫变蝴蝶的故事..." │
├─────────────────────────────────────────────────────────────────┤
│ 教师评价 │
│ 评价结果: ⭐⭐⭐⭐⭐ 优秀 │
│ 评价内容: "很棒!阅读很认真,能复述故事内容,继续保持!" │
│ 评价时间: 2026-03-19 20:15 │
└─────────────────────────────────────────────────────────────────┘
```
#### 4.3.6 统计报表
| 报表类型 | 内容 | 导出格式 |
|---------|------|---------|
| **任务统计** | 按时间/班级/教师的任务发布和完成情况 | Excel |
| **班级对比** | 各班级完成率、反馈率对比 | Excel + 图表 |
| **教师排行** | 发布数、反馈率、平均评分 | Excel |
| **学生明细** | 指定条件下的学生完成明细 | Excel |
---
## 五、数据模型设计
### 5.1 实体关系图
```
┌──────────────┐ ┌──────────────┐ ┌──────────────┐
│ Teacher │────>│ Task │<────│ Student │
└──────────────┘ └──────────────┘ └──────────────┘
│ │
▼ ▼
┌──────────────┐ ┌──────────────┐
│ TaskTarget │ │TaskCompletion│
└──────────────┘ └──────────────┘
┌──────────────┐
│TaskFeedback │
└──────────────┘
```
### 5.2 表结构设计
#### Task任务表- 新增字段
| 字段 | 类型 | 说明 | 变更 |
|------|------|------|------|
| id | BIGINT | 主键 | - |
| tenant_id | BIGINT | 租户ID学校 | - |
| title | VARCHAR(100) | 任务标题 | - |
| description | TEXT | 任务描述 | - |
| task_type | VARCHAR(20) | 类型READING/ACTIVITY/HOMEWORK | - |
| **related_book_name** | VARCHAR(200) | 关联绘本名称 | **新增** |
| course_id | BIGINT | 关联课程ID可选 | - |
| course_lesson_id | BIGINT | 关联课程环节ID可选 | - |
| creator_id | BIGINT | 创建人ID教师 | - |
| start_date | DATE | 开始日期 | - |
| due_date | DATE | 截止日期 | - |
| status | VARCHAR(20) | 状态DRAFT/PUBLISHED/ARCHIVED | - |
| created_at | DATETIME | 创建时间 | - |
| updated_at | DATETIME | 更新时间 | - |
#### TaskTarget任务目标表- 无变更
| 字段 | 类型 | 说明 |
|------|------|------|
| id | BIGINT | 主键 |
| task_id | BIGINT | 任务ID |
| target_type | VARCHAR(20) | 目标类型CLASS/STUDENT |
| target_id | BIGINT | 目标ID班级ID或学生ID |
#### TaskCompletion任务完成表- 扩展字段
| 字段 | 类型 | 说明 | 变更 |
|------|------|------|------|
| id | BIGINT | 主键 | - |
| task_id | BIGINT | 任务ID | - |
| student_id | BIGINT | 学生ID | - |
| status | VARCHAR(20) | 状态PENDING/SUBMITTED/REVIEWED | - |
| **photos** | JSON | 照片URL数组 | **扩展** |
| **video_url** | VARCHAR(500) | 视频URL | **新增** |
| **audio_url** | VARCHAR(500) | 语音URL | **新增** |
| content | TEXT | 文字心得 | - |
| submitted_at | DATETIME | 提交时间 | - |
| reviewed_at | DATETIME | 审核时间 | - |
| created_at | DATETIME | 创建时间 | - |
| updated_at | DATETIME | 更新时间 | - |
#### TaskFeedback任务反馈表- 新增
| 字段 | 类型 | 说明 |
|------|------|------|
| id | BIGINT | 主键 |
| completion_id | BIGINT | 完成记录ID |
| teacher_id | BIGINT | 教师ID |
| rating | INT | 评分 1-5可选 |
| result | VARCHAR(20) | 结果EXCELLENT/PASSED/NEEDS_WORK |
| comment | TEXT | 评语 |
| created_at | DATETIME | 创建时间 |
---
## 六、API 接口设计
### 6.1 教师端 API
| 方法 | 路径 | 说明 |
|------|------|------|
| GET | `/api/v1/teacher/tasks` | 任务列表(支持筛选) |
| POST | `/api/v1/teacher/tasks` | 创建任务 |
| GET | `/api/v1/teacher/tasks/{id}` | 任务详情 |
| PUT | `/api/v1/teacher/tasks/{id}` | 更新任务 |
| DELETE | `/api/v1/teacher/tasks/{id}` | 删除任务 |
| GET | `/api/v1/teacher/tasks/{id}/completions` | 完成情况列表 |
| POST | `/api/v1/teacher/completions/{id}/feedback` | 提交评价 |
| POST | `/api/v1/teacher/tasks/{id}/remind` | 发送提醒 |
### 6.2 家长端 API完善
| 方法 | 路径 | 说明 |
|------|------|------|
| GET | `/api/v1/parent/tasks` | 孩子的任务列表 |
| GET | `/api/v1/parent/tasks/{id}` | 任务详情 |
| POST | `/api/v1/parent/tasks/{id}/submit` | 提交完成(含上传) |
| PUT | `/api/v1/parent/tasks/{id}/submit` | 修改提交 |
| GET | `/api/v1/parent/tasks/{id}/feedback` | 查看教师评价 |
### 6.3 学校端 API新增/完善)
| 方法 | 路径 | 说明 |
|------|------|------|
| GET | `/api/v1/school/tasks` | 全校任务列表(支持多维度筛选) |
| GET | `/api/v1/school/tasks/{id}` | 任务详情 |
| GET | `/api/v1/school/tasks/{id}/completions` | 完成情况列表 |
| GET | `/api/v1/school/completions/{id}` | 学生提交详情 |
| GET | `/api/v1/school/tasks/statistics` | 统计数据 |
| GET | `/api/v1/school/tasks/statistics/trend` | 趋势数据 |
| GET | `/api/v1/school/tasks/export` | 导出报表 |
#### 学校端筛选参数
```typescript
// GET /api/v1/school/tasks
interface SchoolTaskQuery {
// 分页
pageNum?: number;
pageSize?: number;
// 时间筛选
dateType?: 'today' | 'week' | 'month' | 'semester' | 'custom';
startDate?: string; // 自定义开始日期
endDate?: string; // 自定义结束日期
// 组织筛选
classIds?: number[]; // 班级ID数组
teacherIds?: number[]; // 教师ID数组
// 状态筛选
taskType?: 'READING' | 'ACTIVITY' | 'HOMEWORK';
taskStatus?: 'PUBLISHED' | 'ARCHIVED';
completionRate?: 'high' | 'medium' | 'low'; // >80% / 50-80% / <50%
// 搜索
keyword?: string;
// 排序
sortBy?: 'createTime' | 'completionRate' | 'feedbackRate';
sortOrder?: 'asc' | 'desc';
}
```
---
## 七、UI 设计要点
### 7.1 学校端筛选区交互规范
#### 快捷时间选择器
```
┌─────────────────────────────────────────────────────┐
│ [今日] [本周 ✓] [本月] [本学期] [自定义] │
└─────────────────────────────────────────────────────┘
```
#### 已选条件标签
```
┌─────────────────────────────────────────────────────┐
│ 已选条件: │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ │ 本周 ✕ │ │ 大一班 ✕ │ │ 李老师 ✕ │ │
│ └──────────┘ └──────────┘ └──────────┘ [清空全部] │
└─────────────────────────────────────────────────────┘
```
#### 班级/教师多选下拉
```
┌─────────────────────────────────────────────────────┐
│ 班级 ▼ │
│ ┌───────────────────────────────────────────────┐ │
│ │ ☑ 全选 │ │
│ │ ☑ 大一班 │ │
│ │ ☑ 大二班 │ │
│ │ ☐ 中一班 │ │
│ │ ☐ 中二班 │ │
│ │ │ │
│ │ [确定] [取消] │ │
│ └───────────────────────────────────────────────┘ │
└─────────────────────────────────────────────────────┘
```
### 7.2 家长端提交页面
```
┌───────────────────────────────────────┐
│ 《好饿的毛毛虫》阅读任务 │
│ 截止时间: 明天 18:00 │
├───────────────────────────────────────┤
│ 📷 上传阅读照片 │
│ ┌─────┐ ┌─────┐ ┌─────┐ ┌───┐ │
│ │ 📸 │ │ 📸 │ │ 📸 │ │ + │ │
│ └─────┘ └─────┘ └─────┘ └───┘ │
│ 最多上传 9 张照片 │
├───────────────────────────────────────┤
│ 🎬 上传阅读视频(选填) │
│ ┌───────────────────────────────┐ │
│ │ 📹 │ │
│ │ 点击上传视频 │ │
│ │ 限 60 秒以内 │ │
│ └───────────────────────────────┘ │
├───────────────────────────────────────┤
│ 📝 阅读心得(选填) │
│ ┌───────────────────────────────┐ │
│ │ 孩子很喜欢这本书... │ │
│ │ │ │
│ └───────────────────────────────┘ │
│ 0/500 │
├───────────────────────────────────────┤
│ │
│ [ 提交完成 ] │
│ │
└───────────────────────────────────────┘
```
---
## 八、开发计划
### Phase 1核心功能2周
| 模块 | 功能 | 优先级 |
|------|------|--------|
| **后端** | Task 表新增 related_book_name 字段 | P0 |
| | TaskCompletion 表扩展 photos/video_url/audio_url | P0 |
| | 新增 TaskFeedback 表 | P0 |
| | 完善教师端 API评价、提醒 | P0 |
| | 完善家长端 API提交、查看评价 | P0 |
| | 新增学校端 API多维度筛选 | P0 |
| **前端-教师端** | 完善任务创建(添加绘本名称字段) | P0 |
| | 完善完成情况管理(评价功能) | P0 |
| **前端-家长端** | 新增任务提交页面(照片/视频上传) | P0 |
| | 新增评价查看功能 | P0 |
| **前端-学校端** | 新增多维度筛选组件 | P0 |
| | 新增任务列表(只读) | P0 |
| | 新增任务详情和学生提交详情 | P0 |
### Phase 2完善功能1周
| 模块 | 功能 | 优先级 |
|------|------|--------|
| **前端-教师端** | 任务模板功能 | P1 |
| | 批量评价 | P1 |
| **前端-家长端** | 视频录制和上传 | P1 |
| | 语音录制和上传 | P1 |
| | 历史记录完善 | P1 |
| **前端-学校端** | 统计图表 | P1 |
| | 导出报表 | P1 |
### Phase 3通知系统1周
| 模块 | 功能 | 优先级 |
|------|------|--------|
| **通知** | 新任务通知(推送至家长端) | P0 |
| | 截止提醒(推送至家长端) | P0 |
| | 评价通知(推送至家长端) | P0 |
| | 自动提醒截止前1天 | P1 |
---
## 九、现有代码改造点
### 9.1 家长端后端
**文件**: `ParentTaskController.java`
**现状**: `getMyTasks` 方法返回空数据TODO
**改造**:
1. 实现根据家长ID获取关联学生的任务
2. 新增 `POST /api/v1/parent/tasks/{id}/submit` 接口处理提交
3. 新增 `GET /api/v1/parent/tasks/{id}/feedback` 接口获取评价
### 9.2 家长端前端
**文件**: `TaskListView.vue`
**现状**: 有基础框架,仅支持文字反馈
**改造**:
1. 新增提交页面组件(支持照片/视频上传)
2. 新增评价查看组件
3. 完善任务状态显示和倒计时
---
## 十、风险与依赖
| 风险 | 影响 | 缓解措施 |
|------|------|---------|
| 文件上传量增加 | OSS 存储成本 | 限制单个任务上传数量和大小 |
| 推送通知依赖 | 消息触达率 | 确保家长端已集成推送 SDK |
| 数据量增长 | 查询性能 | 添加索引,学校端分页查询 |
---
*文档版本历史:*
- v1.0 (2026-03-20): 初稿
- v1.1 (2026-03-20): 完善学校端筛选设计、家长端功能、开发计划