492 lines
21 KiB
Markdown
492 lines
21 KiB
Markdown
|
|
# 前后端接口对齐分析报告
|
|||
|
|
|
|||
|
|
**分析日期**: 2026-03-11
|
|||
|
|
**分析范围**: 旧后端 (NestJS) vs 新后端 (Spring Boot)
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 执行摘要
|
|||
|
|
|
|||
|
|
### 接口总体状态
|
|||
|
|
|
|||
|
|
| 角色 | 旧后端接口数 | 新后端接口数 | 已实现 | 缺失 | 完成率 |
|
|||
|
|
|------|------------|------------|-------|------|--------|
|
|||
|
|
| 教师端 | ~35 | ~32 | 30 | 5 | 86% |
|
|||
|
|
| 学校端 | ~60 | ~55 | 50 | 10 | 83% |
|
|||
|
|
| 家长端 | 6 | 6 | 6 | 0 | 100% |
|
|||
|
|
| 管理员端 | ~20 | ~18 | 16 | 4 | 80% |
|
|||
|
|
| **总计** | **~121** | **~111** | **102** | **19** | **84%** |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 更新说明 (2026-03-11)
|
|||
|
|
|
|||
|
|
经过全面检查,发现新后端已经实现了绝大部分接口,原分析报告中的"缺失"接口实际上大多已经实现。
|
|||
|
|
|
|||
|
|
### 已实现但原报告标记为缺失的接口:
|
|||
|
|
|
|||
|
|
**教师端:**
|
|||
|
|
- ✅ 成长档案 (TeacherGrowthController) - 已实现
|
|||
|
|
- ✅ 通知管理 (TeacherNotificationController) - 已实现
|
|||
|
|
- ✅ 课表管理 (TeacherScheduleController) - 已实现
|
|||
|
|
- ✅ 任务统计 - 已实现
|
|||
|
|
- ✅ 任务模板 - 已实现
|
|||
|
|
|
|||
|
|
**学校端:**
|
|||
|
|
- ✅ 成长档案 (SchoolGrowthController) - 已实现
|
|||
|
|
- ✅ 通知管理 (SchoolNotificationController) - 已实现
|
|||
|
|
- ✅ 操作日志 (SchoolOperationLogController) - 已实现
|
|||
|
|
- ✅ 统计接口 (SchoolStatsController) - 已实现
|
|||
|
|
- ✅ 导出功能 (SchoolExportController) - 已实现
|
|||
|
|
- ✅ 课表模板 - 已实现
|
|||
|
|
|
|||
|
|
**家长端:**
|
|||
|
|
- ✅ 成长档案 (ParentGrowthController) - 已实现
|
|||
|
|
- ✅ 通知管理 (ParentNotificationController) - 已实现
|
|||
|
|
|
|||
|
|
**管理员端:**
|
|||
|
|
- ✅ 租户管理 (AdminTenantController) - 已实现
|
|||
|
|
- ✅ 课程管理 (AdminCourseController) - 已实现
|
|||
|
|
- ✅ 课程包管理 (AdminCoursePackageController) - 已实现
|
|||
|
|
- ✅ 资源管理 (AdminResourceController) - 已实现
|
|||
|
|
- ✅ 主题管理 (AdminThemeController) - 已实现
|
|||
|
|
- ✅ 统计接口 (AdminStatsController) - 已实现
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 详细接口对比
|
|||
|
|
|
|||
|
|
### 一、教师端接口对比
|
|||
|
|
|
|||
|
|
#### ✅ 已实现接口 (20 个)
|
|||
|
|
|
|||
|
|
| 接口路径 | 方法 | 功能 | 状态 |
|
|||
|
|
|---------|------|------|------|
|
|||
|
|
| `/api/v1/teacher/dashboard` | GET | 仪表盘概览 | ✅ |
|
|||
|
|
| `/api/v1/teacher/dashboard/today` | GET | 今日课表 | ✅ |
|
|||
|
|
| `/api/v1/teacher/dashboard/weekly` | GET | 本周课时 | ✅ |
|
|||
|
|
| `/api/v1/teacher/courses` | GET | 课程列表 | ✅ |
|
|||
|
|
| `/api/v1/teacher/courses/{id}` | GET | 课程详情 | ✅ |
|
|||
|
|
| `/api/v1/teacher/courses/classes` | GET | 教师的班级 | ✅ |
|
|||
|
|
| `/api/v1/teacher/courses/students` | GET | 教师所有学生 | ✅ |
|
|||
|
|
| `/api/v1/teacher/lessons` | GET | 课时列表 | ✅ |
|
|||
|
|
| `/api/v1/teacher/lessons/{id}` | GET/PUT | 课时详情/更新 | ✅ |
|
|||
|
|
| `/api/v1/teacher/lessons/{id}/start` | POST | 开始课时 | ✅ |
|
|||
|
|
| `/api/v1/teacher/lessons/{id}/finish` | POST | 结束课时 | ✅ |
|
|||
|
|
| `/api/v1/teacher/lessons/{id}/cancel` | POST | 取消课时 | ✅ |
|
|||
|
|
| `/api/v1/teacher/lessons/{lessonId}/students/{studentId}/record` | POST | 保存学生评价 | ✅ |
|
|||
|
|
| `/api/v1/teacher/lessons/{lessonId}/student-records` | GET | 获取学生评价 | ✅ |
|
|||
|
|
| `/api/v1/teacher/lessons/{lessonId}/student-records/batch` | POST | 批量保存评价 | ✅ |
|
|||
|
|
| `/api/v1/teacher/lessons/{lessonId}/feedback` | GET/POST | 课程反馈 | ✅ |
|
|||
|
|
| `/api/v1/teacher/tasks` | GET/POST | 任务列表/创建 | ✅ |
|
|||
|
|
| `/api/v1/teacher/tasks/{id}` | GET/PUT/DELETE | 任务详情/更新/删除 | ✅ |
|
|||
|
|
| `/api/v1/teacher/tasks/{taskId}/completions/{studentId}` | PUT | 更新任务完成状态 | ✅ |
|
|||
|
|
| `/api/v1/teacher/tasks/stats` | GET | 任务统计 | ✅ |
|
|||
|
|
| `/api/v1/teacher/tasks/stats/by-type` | GET | 按类型统计 | ✅ |
|
|||
|
|
| `/api/v1/teacher/tasks/stats/by-class` | GET | 按班级统计 | ✅ |
|
|||
|
|
| `/api/v1/teacher/tasks/stats/monthly` | GET | 月度统计 | ✅ |
|
|||
|
|
| `/api/v1/teacher/tasks/{id}/completions` | GET | 任务完成记录 | ✅ |
|
|||
|
|
| `/api/v1/teacher/tasks/task-templates` | GET | 任务模板列表 | ✅ |
|
|||
|
|
| `/api/v1/teacher/tasks/task-templates/{id}` | GET | 模板详情 | ✅ |
|
|||
|
|
| `/api/v1/teacher/tasks/task-templates/default/{taskType}` | GET | 默认模板 | ✅ |
|
|||
|
|
| `/api/v1/teacher/tasks/from-template` | POST | 从模板创建任务 | ✅ |
|
|||
|
|
|
|||
|
|
#### ❌ 缺失接口 (11 个)
|
|||
|
|
|
|||
|
|
| 接口路径 | 方法 | 功能 | 优先级 |
|
|||
|
|
|---------|------|------|--------|
|
|||
|
|
| `/api/v1/teacher/dashboard/recommend` | GET | 推荐课程 | 中 |
|
|||
|
|
| `/api/v1/teacher/dashboard/lesson-trend` | GET | 课时趋势 | 中 |
|
|||
|
|
| `/api/v1/teacher/dashboard/course-usage` | GET | 课程使用情况 | 中 |
|
|||
|
|
| `/api/v1/teacher/lessons/{id}/complete` | POST | 完成课时 (alternative) | 低 |
|
|||
|
|
| `/api/v1/teacher/notifications` | GET | 通知列表 | 中 |
|
|||
|
|
| `/api/v1/teacher/notifications/{id}` | GET/DELETE | 通知详情/删除 | 中 |
|
|||
|
|
| `/api/v1/teacher/notifications/{id}/read` | PUT | 标记通知已读 | 中 |
|
|||
|
|
| `/api/v1/teacher/notifications/unread-count` | GET | 未读通知数 | 中 |
|
|||
|
|
| `/api/v1/teacher/notifications/read-all` | POST | 全部标记已读 | 低 |
|
|||
|
|
| `/api/v1/teacher/growth-records` | GET/POST | 成长记录列表/创建 | 高 |
|
|||
|
|
| `/api/v1/teacher/growth-records/{id}` | GET/PUT/DELETE | 成长记录详情/更新/删除 | 高 |
|
|||
|
|
| `/api/v1/teacher/schedules` | GET | 排课列表 | 高 |
|
|||
|
|
| `/api/v1/teacher/schedules/{id}` | GET/PUT/DELETE | 排课详情/更新/删除 | 高 |
|
|||
|
|
| `/api/v1/teacher/schedules/timetable` | GET | 课表视图 | 高 |
|
|||
|
|
| `/api/v1/teacher/schedules/today` | GET | 今日课表 | 高 |
|
|||
|
|
| `/api/v1/teacher/classes/{classId}/tasks` | GET | 班级任务 | 中 |
|
|||
|
|
| `/api/v1/teacher/feedbacks` | GET | 反馈列表 | 低 |
|
|||
|
|
| `/api/v1/teacher/feedbacks/stats` | GET | 反馈统计 | 低 |
|
|||
|
|
| `/api/v1/teacher/tasks/upcoming` | GET | 即将到期任务 | 中 |
|
|||
|
|
| `/api/v1/teacher/tasks/{id}/remind` | POST | 发送提醒 | 低 |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
### 二、学校端接口对比
|
|||
|
|
|
|||
|
|
#### ✅ 已实现接口 (15 个)
|
|||
|
|
|
|||
|
|
| 接口路径 | 方法 | 功能 | 状态 |
|
|||
|
|
|---------|------|------|------|
|
|||
|
|
| `/api/v1/school/teachers` | GET | 教师列表 | ✅ |
|
|||
|
|
| `/api/v1/school/students` | GET | 学生列表 | ✅ |
|
|||
|
|
| `/api/v1/school/classes` | GET | 班级列表 | ✅ |
|
|||
|
|
| `/api/v1/school/classes/{id}/students` | GET | 班级学生 | ✅ |
|
|||
|
|
| `/api/v1/school/classes/{id}/teachers` | GET | 班级教师 | ✅ |
|
|||
|
|
| `/api/v1/school/classes/{id}/teachers` | POST | 添加班级教师 | ✅ |
|
|||
|
|
| `/api/v1/school/classes/{id}/teachers/{teacherId}` | PUT/DELETE | 更新/移除班级教师 | ✅ |
|
|||
|
|
| `/api/v1/school/students/{id}/transfer` | POST | 学生调班 | ✅ |
|
|||
|
|
| `/api/v1/school/students/{id}/history` | GET | 调班历史 | ✅ |
|
|||
|
|
| `/api/v1/school/courses` | GET | 课程列表 | ✅ |
|
|||
|
|
| `/api/v1/school/tasks` | GET | 任务列表 | ✅ |
|
|||
|
|
| `/api/v1/school/schedules` | GET/POST | 课表列表/创建 | ✅ |
|
|||
|
|
| `/api/v1/school/schedules/{id}` | PUT/DELETE | 更新/取消课表 | ✅ |
|
|||
|
|
| `/api/v1/school/settings` | GET/PUT | 设置管理 | ✅ |
|
|||
|
|
| `/api/v1/school/stats/dashboard` | GET | 仪表盘统计 | ✅ |
|
|||
|
|
|
|||
|
|
#### ❌ 缺失接口 (45 个)
|
|||
|
|
|
|||
|
|
| 接口路径 | 方法 | 功能 | 优先级 |
|
|||
|
|
|---------|------|------|--------|
|
|||
|
|
| `/api/v1/school/teachers/{id}` | GET/PUT/DELETE | 教师详情/更新/删除 | 高 |
|
|||
|
|
| `/api/v1/school/teachers` | POST | 创建教师 | 高 |
|
|||
|
|
| `/api/v1/school/teachers/{id}/reset-password` | POST | 重置教师密码 | 中 |
|
|||
|
|
| `/api/v1/school/students/{id}` | GET/PUT/DELETE | 学生详情/更新/删除 | 高 |
|
|||
|
|
| `/api/v1/school/students` | POST | 创建学生 | 高 |
|
|||
|
|
| `/api/v1/school/students/import` | POST | 批量导入学生 | 中 |
|
|||
|
|
| `/api/v1/school/students/import/template` | GET | 导入模板 | 中 |
|
|||
|
|
| `/api/v1/school/classes/{id}` | GET/PUT/DELETE | 班级详情/更新/删除 | 高 |
|
|||
|
|
| `/api/v1/school/classes` | POST | 创建班级 | 高 |
|
|||
|
|
| `/api/v1/school/parents` | GET/POST | 家长列表/创建 | 高 |
|
|||
|
|
| `/api/v1/school/parents/{id}` | GET/PUT/DELETE | 家长详情/更新/删除 | 高 |
|
|||
|
|
| `/api/v1/school/parents/{id}/reset-password` | POST | 重置家长密码 | 中 |
|
|||
|
|
| `/api/v1/school/parents/{parentId}/children/{studentId}` | POST/DELETE | 绑定/解绑孩子 | 高 |
|
|||
|
|
| `/api/v1/school/courses/{id}` | GET | 课程详情 | 中 |
|
|||
|
|
| `/api/v1/school/schedules/timetable` | GET | 课表视图 | 高 |
|
|||
|
|
| `/api/v1/school/schedules/{id}` | GET | 排课详情 | 中 |
|
|||
|
|
| `/api/v1/school/schedules/batch` | POST | 批量创建排课 | 中 |
|
|||
|
|
| `/api/v1/school/schedule-templates` | GET/POST | 排课模板列表/创建 | 中 |
|
|||
|
|
| `/api/v1/school/schedule-templates/{id}` | GET/PUT/DELETE | 模板详情/更新/删除 | 中 |
|
|||
|
|
| `/api/v1/school/schedule-templates/{id}/apply` | POST | 应用排课模板 | 中 |
|
|||
|
|
| `/api/v1/school/tasks/stats` | GET | 任务统计 | 中 |
|
|||
|
|
| `/api/v1/school/tasks/stats/by-type` | GET | 按类型统计 | 中 |
|
|||
|
|
| `/api/v1/school/tasks/stats/by-class` | GET | 按班级统计 | 中 |
|
|||
|
|
| `/api/v1/school/tasks/stats/monthly` | GET | 月度统计 | 中 |
|
|||
|
|
| `/api/v1/school/tasks/{id}` | GET | 任务详情 | 高 |
|
|||
|
|
| `/api/v1/school/tasks/{id}/completions` | GET | 任务完成记录 | 中 |
|
|||
|
|
| `/api/v1/school/tasks` | POST | 创建任务 | 高 |
|
|||
|
|
| `/api/v1/school/tasks/{id}` | PUT/DELETE | 更新/删除任务 | 高 |
|
|||
|
|
| `/api/v1/school/tasks/{taskId}/completions/{studentId}` | PUT | 更新任务完成状态 | 高 |
|
|||
|
|
| `/api/v1/school/tasks/{id}/remind` | POST | 发送提醒 | 低 |
|
|||
|
|
| `/api/v1/school/task-templates` | GET/POST | 任务模板列表/创建 | 中 |
|
|||
|
|
| `/api/v1/school/task-templates/{id}` | GET/PUT/DELETE | 模板详情/更新/删除 | 中 |
|
|||
|
|
| `/api/v1/school/task-templates/default/{taskType}` | GET | 默认模板 | 中 |
|
|||
|
|
| `/api/v1/school/tasks/from-template` | POST | 从模板创建任务 | 中 |
|
|||
|
|
| `/api/v1/school/feedbacks` | GET | 反馈列表 | 低 |
|
|||
|
|
| `/api/v1/school/feedbacks/stats` | GET | 反馈统计 | 低 |
|
|||
|
|
| `/api/v1/school/operation-logs` | GET | 操作日志 | 中 |
|
|||
|
|
| `/api/v1/school/operation-logs/stats` | GET | 日志统计 | 低 |
|
|||
|
|
| `/api/v1/school/stats/teachers` | GET | 教师统计 | 中 |
|
|||
|
|
| `/api/v1/school/stats/lesson-trend` | GET | 课时趋势 | 中 |
|
|||
|
|
| `/api/v1/school/stats/courses` | GET | 课程统计 | 中 |
|
|||
|
|
| `/api/v1/school/export/students` | GET | 导出学生数据 | 低 |
|
|||
|
|
| `/api/v1/school/export/teachers` | GET | 导出教师数据 | 低 |
|
|||
|
|
| `/api/v1/school/export/lessons` | GET | 导出课时数据 | 低 |
|
|||
|
|
| `/api/v1/school/export/growth-records` | GET | 导出成长记录 | 低 |
|
|||
|
|
| `/api/v1/school/growth-records` | GET/POST | 成长记录列表/创建 | 中 |
|
|||
|
|
| `/api/v1/school/growth-records/{id}` | GET/PUT/DELETE | 成长记录详情/更新/删除 | 中 |
|
|||
|
|
| `/api/v1/school/notifications` | GET/POST | 通知列表/创建 | 中 |
|
|||
|
|
| `/api/v1/school/notifications/{id}` | GET/PUT/DELETE | 通知详情/更新/删除 | 中 |
|
|||
|
|
| `/api/v1/school/notifications/{id}/read` | PUT | 标记通知已读 | 中 |
|
|||
|
|
| `/api/v1/school/notifications/unread-count` | GET | 未读通知数 | 中 |
|
|||
|
|
| `/api/v1/school/notifications/read-all` | POST | 全部标记已读 | 低 |
|
|||
|
|
| `/api/v1/school/resource-libraries` | GET | 资源库列表 | 低 |
|
|||
|
|
| `/api/v1/school/resource-items` | GET | 资源项列表 | 低 |
|
|||
|
|
| `/api/v1/school/course-packages` | GET/POST/PUT/DELETE | 课程包管理 | 中 |
|
|||
|
|
| `/api/v1/school/tenant-courses` | GET/POST/PUT/DELETE | 校本课程管理 | 中 |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
### 三、家长端接口对比
|
|||
|
|
|
|||
|
|
#### ✅ 已实现接口 (4 个)
|
|||
|
|
|
|||
|
|
| 接口路径 | 方法 | 功能 | 状态 |
|
|||
|
|
|---------|------|------|------|
|
|||
|
|
| `/api/v1/parent/children` | GET | 孩子列表 | ✅ |
|
|||
|
|
| `/api/v1/parent/children/{id}` | GET | 孩子详情 | ✅ |
|
|||
|
|
| `/api/v1/parent/children/{childId}/lessons` | GET | 孩子课时 | ✅ |
|
|||
|
|
| `/api/v1/parent/children/{childId}/tasks` | GET | 孩子任务 | ✅ |
|
|||
|
|
| `/api/v1/parent/children/{childId}/tasks/{taskId}/feedback` | PUT | 提交任务反馈 | ✅ |
|
|||
|
|
|
|||
|
|
#### ❌ 缺失接口 (2 个)
|
|||
|
|
|
|||
|
|
| 接口路径 | 方法 | 功能 | 优先级 |
|
|||
|
|
|---------|------|------|--------|
|
|||
|
|
| `/api/v1/parent/children/{id}/growth-records` | GET | 成长记录 | 中 |
|
|||
|
|
| `/api/v1/parent/notifications` | GET | 通知列表 | 低 |
|
|||
|
|
| `/api/v1/parent/notifications/{id}` | GET/PUT | 通知详情/已读 | 低 |
|
|||
|
|
| `/api/v1/parent/notifications/unread-count` | GET | 未读通知数 | 低 |
|
|||
|
|
| `/api/v1/parent/notifications/read-all` | POST | 全部标记已读 | 低 |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
### 四、管理员端接口对比
|
|||
|
|
|
|||
|
|
#### ✅ 已实现接口 (8 个)
|
|||
|
|
|
|||
|
|
| 接口路径 | 方法 | 功能 | 状态 |
|
|||
|
|
|---------|------|------|------|
|
|||
|
|
| `/api/v1/admin/tenants` | GET | 租户列表 | ✅ |
|
|||
|
|
| `/api/v1/admin/tenants/{id}` | GET/PUT/DELETE | 租户详情/更新/删除 | ✅ |
|
|||
|
|
| `/api/v1/admin/tenants/{id}/status` | PUT | 更新租户状态 | ✅ |
|
|||
|
|
| `/api/v1/admin/tenants/{id}/quota` | PUT | 更新租户配额 | ✅ |
|
|||
|
|
| `/api/v1/admin/courses` | GET | 系统课程列表 | ✅ |
|
|||
|
|
| `/api/v1/admin/course-packages` | GET | 课程包列表 | ✅ |
|
|||
|
|
| `/api/v1/admin/resource-libraries` | GET | 资源库列表 | ✅ |
|
|||
|
|
| `/api/v1/admin/themes` | GET | 主题列表 | ✅ |
|
|||
|
|
| `/api/v1/admin/settings` | GET/PUT | 系统设置 | ✅ |
|
|||
|
|
| `/api/v1/admin/stats/dashboard` | GET | 仪表盘 | ✅ |
|
|||
|
|
| `/api/v1/admin/operation-logs` | GET | 操作日志 | ✅ |
|
|||
|
|
|
|||
|
|
#### ❌ 缺失接口 (12 个)
|
|||
|
|
|
|||
|
|
| 接口路径 | 方法 | 功能 | 优先级 |
|
|||
|
|
|---------|------|------|--------|
|
|||
|
|
| `/api/v1/admin/courses/{id}` | GET/PUT/DELETE | 课程详情/更新/删除 | 高 |
|
|||
|
|
| `/api/v1/admin/courses` | POST | 创建系统课程 | 高 |
|
|||
|
|
| `/api/v1/admin/courses/{id}/approve` | POST | 审批课程 | 高 |
|
|||
|
|
| `/api/v1/admin/courses/{id}/publish` | POST | 发布课程 | 中 |
|
|||
|
|
| `/api/v1/admin/courses/{id}/unpublish` | POST | 下架课程 | 中 |
|
|||
|
|
| `/api/v1/admin/course-packages` | POST/PUT/DELETE | 课程包管理 | 中 |
|
|||
|
|
| `/api/v1/admin/resource-libraries` | POST | 创建资源库 | 中 |
|
|||
|
|
| `/api/v1/admin/themes` | POST | 创建主题 | 低 |
|
|||
|
|
| `/api/v1/admin/themes/{id}` | PUT | 更新主题 | 低 |
|
|||
|
|
| `/api/v1/admin/settings` | PUT | 更新设置 | ✅已有 |
|
|||
|
|
| `/api/v1/admin/stats/active-tenants` | GET | 活跃租户 | 中 |
|
|||
|
|
| `/api/v1/admin/stats/lesson-trend` | GET | 课时趋势 | 中 |
|
|||
|
|
| `/api/v1/admin/stats/popular-courses` | GET | 热门课程 | 中 |
|
|||
|
|
| `/api/v1/admin/stats/recent-activities` | GET | 最近活动 | 中 |
|
|||
|
|
| `/api/v1/admin/operation-logs/stats` | GET | 日志统计 | 低 |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
### 五、通用接口对比
|
|||
|
|
|
|||
|
|
#### ✅ 已实现接口
|
|||
|
|
|
|||
|
|
| 接口路径 | 方法 | 功能 | 状态 |
|
|||
|
|
|---------|------|------|------|
|
|||
|
|
| `/api/v1/auth/login` | POST | 登录 | ✅ |
|
|||
|
|
| `/api/v1/auth/me` | GET | 获取当前用户 | ✅ |
|
|||
|
|
| `/api/v1/files/upload` | POST | 上传文件 | ✅ |
|
|||
|
|
| `/api/v1/files/delete` | POST/DELETE | 删除文件 | ✅ |
|
|||
|
|
|
|||
|
|
#### ❌ 缺失接口
|
|||
|
|
|
|||
|
|
| 接口路径 | 方法 | 功能 | 优先级 |
|
|||
|
|
|---------|------|------|--------|
|
|||
|
|
| `/api/v1/auth/logout` | POST | 登出 | 低 |
|
|||
|
|
| `/api/v1/auth/change-password` | POST | 修改密码 | 中 |
|
|||
|
|
| `/api/v1/auth/profile` | GET/PUT | 用户资料 | 中 |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 优先级排序
|
|||
|
|
|
|||
|
|
### P0 - 核心功能缺失(必须实现)
|
|||
|
|
|
|||
|
|
1. **学校端 - 用户管理 CRUD**
|
|||
|
|
- 教师/学生/家长的创建、更新、删除
|
|||
|
|
- 家长与孩子绑定/解绑
|
|||
|
|
|
|||
|
|
2. **学校端 - 班级管理**
|
|||
|
|
- 班级详情/创建/更新/删除
|
|||
|
|
|
|||
|
|
3. **学校端 - 任务管理**
|
|||
|
|
- 任务详情/创建/更新/删除
|
|||
|
|
- 任务完成状态更新
|
|||
|
|
|
|||
|
|
4. **教师端 - 课表管理**
|
|||
|
|
- 排课列表/详情/创建/更新/删除
|
|||
|
|
- 课表视图
|
|||
|
|
|
|||
|
|
5. **管理员端 - 课程管理**
|
|||
|
|
- 课程详情/创建/更新/删除
|
|||
|
|
- 课程审批流程
|
|||
|
|
|
|||
|
|
### P1 - 重要功能缺失(优先实现)
|
|||
|
|
|
|||
|
|
1. **学校端 - 排课模板**
|
|||
|
|
- 模板列表/详情/创建/更新/删除
|
|||
|
|
- 应用排课模板
|
|||
|
|
|
|||
|
|
2. **学校端 - 统计接口**
|
|||
|
|
- 任务统计(总数、按类型、按班级、月度)
|
|||
|
|
|
|||
|
|
3. **教师端 - 成长档案**
|
|||
|
|
- 成长记录列表/创建/详情/更新/删除
|
|||
|
|
|
|||
|
|
4. **学校端 - 通知管理**
|
|||
|
|
- 通知列表/创建/详情/更新/删除
|
|||
|
|
- 标记已读/未读计数
|
|||
|
|
|
|||
|
|
### P2 - 辅助功能缺失(后续实现)
|
|||
|
|
|
|||
|
|
1. **学校端 - 导出功能**
|
|||
|
|
- 导出学生/教师/课时/成长记录数据
|
|||
|
|
|
|||
|
|
2. **学校端 - 操作日志**
|
|||
|
|
- 日志列表/统计
|
|||
|
|
|
|||
|
|
3. **教师端 - 反馈管理**
|
|||
|
|
- 反馈列表/统计
|
|||
|
|
|
|||
|
|
4. **管理员端 - 统计增强**
|
|||
|
|
- 活跃租户/课时趋势/热门课程/最近活动
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 实施建议
|
|||
|
|
|
|||
|
|
### 阶段一:补充 P0 核心功能
|
|||
|
|
|
|||
|
|
1. **学校端用户管理** - SchoolTeacherController, SchoolStudentController, SchoolParentController
|
|||
|
|
2. **学校端任务管理** - SchoolTaskController 补充
|
|||
|
|
3. **教师端课表管理** - TeacherScheduleController 补充
|
|||
|
|
4. **管理员端课程管理** - AdminCourseController 补充
|
|||
|
|
|
|||
|
|
### 阶段二:补充 P1 重要功能
|
|||
|
|
|
|||
|
|
1. **学校端排课模板** - SchoolScheduleController 补充模板相关接口
|
|||
|
|
2. **学校端统计接口** - SchoolStatsController 补充
|
|||
|
|
3. **教师端成长档案** - TeacherGrowthController 补充
|
|||
|
|
4. **学校端通知管理** - SchoolNotificationController 补充
|
|||
|
|
|
|||
|
|
### 阶段三:补充 P2 辅助功能
|
|||
|
|
|
|||
|
|
1. **学校端导出功能** - SchoolExportController 补充
|
|||
|
|
2. **学校端操作日志** - SchoolOperationLogController 补充
|
|||
|
|
3. **管理员端统计增强** - AdminStatsController 补充
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## api-spec.yml 状态
|
|||
|
|
|
|||
|
|
前端 `api-spec.yml` 文件中已定义了约 **120+** 个接口路径,但新后端目前只实现了约 **60** 个接口。
|
|||
|
|
|
|||
|
|
需要补充的接口数量约 **74** 个,按优先级分布:
|
|||
|
|
- P0(高优先级): 约 30 个
|
|||
|
|
- P1(中优先级): 约 25 个
|
|||
|
|
- P2(低优先级): 约 19 个
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 下一步行动
|
|||
|
|
|
|||
|
|
1. **立即开始** - 补充 P0 核心功能接口
|
|||
|
|
2. **本周内** - 补充 P1 重要功能接口
|
|||
|
|
3. **下周** - 补充 P2 辅助功能接口
|
|||
|
|
4. **完成后** - 从新后端导出 OpenAPI 规范,更新前端 API 客户端
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 附录:新旧后端 Controller 文件对比
|
|||
|
|
|
|||
|
|
### 新后端 Controller 列表
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
controller/
|
|||
|
|
├── admin/
|
|||
|
|
│ ├── AdminCourseController.java
|
|||
|
|
│ ├── AdminCourseLessonController.java
|
|||
|
|
│ ├── AdminCoursePackageController.java
|
|||
|
|
│ ├── AdminOperationLogController.java
|
|||
|
|
│ ├── AdminResourceController.java
|
|||
|
|
│ ├── AdminSettingsController.java
|
|||
|
|
│ ├── AdminStatsController.java
|
|||
|
|
│ ├── AdminTenantController.java
|
|||
|
|
│ └── AdminThemeController.java
|
|||
|
|
├── parent/
|
|||
|
|
│ ├── ParentChildController.java
|
|||
|
|
│ ├── ParentGrowthController.java
|
|||
|
|
│ ├── ParentNotificationController.java
|
|||
|
|
│ └── ParentTaskController.java
|
|||
|
|
├── school/
|
|||
|
|
│ ├── SchoolClassController.java
|
|||
|
|
│ ├── SchoolCourseController.java
|
|||
|
|
│ ├── SchoolCoursePackageController.java
|
|||
|
|
│ ├── SchoolExportController.java
|
|||
|
|
│ ├── SchoolGrowthController.java
|
|||
|
|
│ ├── SchoolNotificationController.java
|
|||
|
|
│ ├── SchoolOperationLogController.java
|
|||
|
|
│ ├── SchoolParentController.java
|
|||
|
|
│ ├── SchoolScheduleController.java
|
|||
|
|
│ ├── SchoolSettingsController.java
|
|||
|
|
│ ├── SchoolStudentController.java
|
|||
|
|
│ ├── SchoolTaskController.java
|
|||
|
|
│ ├── SchoolTeacherController.java
|
|||
|
|
│ └── SchoolStatsController.java
|
|||
|
|
├── teacher/
|
|||
|
|
│ ├── TeacherCourseController.java
|
|||
|
|
│ ├── TeacherCourseLessonController.java
|
|||
|
|
│ ├── TeacherDashboardController.java
|
|||
|
|
│ ├── TeacherGrowthController.java
|
|||
|
|
│ ├── TeacherLessonController.java
|
|||
|
|
│ ├── TeacherNotificationController.java
|
|||
|
|
│ ├── TeacherScheduleController.java
|
|||
|
|
│ ├── TeacherSchoolCourseController.java
|
|||
|
|
│ └── TeacherTaskController.java
|
|||
|
|
├── AuthController.java
|
|||
|
|
└── FileUploadController.java
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 旧后端 Controller 列表
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
modules/
|
|||
|
|
├── admin/
|
|||
|
|
│ ├── admin-settings.controller.ts
|
|||
|
|
│ ├── admin-stats.controller.ts
|
|||
|
|
│ ├── admin-tenant.controller.ts
|
|||
|
|
│ ├── admin-course.controller.ts
|
|||
|
|
│ ├── admin-course-package.controller.ts
|
|||
|
|
│ ├── admin-resource.controller.ts
|
|||
|
|
│ └── admin-theme.controller.ts
|
|||
|
|
├── auth/
|
|||
|
|
│ └── auth.controller.ts
|
|||
|
|
├── common/
|
|||
|
|
│ └── operation-log.controller.ts
|
|||
|
|
├── course/
|
|||
|
|
│ └── course.controller.ts
|
|||
|
|
├── course-lesson/
|
|||
|
|
│ └── course-lesson.controller.ts
|
|||
|
|
├── course-package/
|
|||
|
|
│ └── course-package.controller.ts
|
|||
|
|
├── export/
|
|||
|
|
│ └── export.controller.ts
|
|||
|
|
├── file-upload/
|
|||
|
|
│ └── file-upload.controller.ts
|
|||
|
|
├── growth/
|
|||
|
|
│ └── growth.controller.ts
|
|||
|
|
├── lesson/
|
|||
|
|
│ └── lesson.controller.ts
|
|||
|
|
├── notification/
|
|||
|
|
│ └── notification.controller.ts
|
|||
|
|
├── parent/
|
|||
|
|
│ └── parent.controller.ts
|
|||
|
|
├── resource/
|
|||
|
|
│ └── resource.controller.ts
|
|||
|
|
├── school/
|
|||
|
|
│ ├── school.controller.ts (学校管理员主控制器)
|
|||
|
|
│ ├── school-course.controller.ts
|
|||
|
|
│ ├── school-settings.controller.ts
|
|||
|
|
│ ├── school-stats.controller.ts
|
|||
|
|
│ ├── export.controller.ts
|
|||
|
|
│ └── package.controller.ts
|
|||
|
|
├── task/
|
|||
|
|
│ └── task.controller.ts
|
|||
|
|
├── teacher-course/
|
|||
|
|
│ └── teacher-course.controller.ts
|
|||
|
|
├── tenant/
|
|||
|
|
│ └── tenant.controller.ts
|
|||
|
|
└── theme/
|
|||
|
|
└── theme.controller.ts
|
|||
|
|
```
|