平台研发 · 工作稿返回首页

教学平台首期纵向闭环开发设计 V0.1

内容源:Markdown材料状态:工作稿

状态:开发工作稿
目标:先跑通一条真实课堂链路,不并行建设完整平台
日期:2026-08-02

后续说明:本文件记录已经完成的 P0 固定任务模板闭环,不再作为后续课程中心与智能课件编辑器的排除依据。2026-08-07 确认的下一阶段需求见《教学平台课程中心与智能课件产品需求 V0.1》。


一、首期只验证什么

首期只验证以下闭环:

总部教研配置固定任务模板
→ 教师向班级发布任务
→ 学生通过课堂码登录
→ 学生查看 HTML/资源并完成客观题或提交成果
→ 教师查看学生提交
→ 教师或学生将成果归入学生个人作品空间

首期不验证自由节点编辑、多校区批量运营、实时课堂监控、外部 AI 工具打通、Android 客户端或 Electron 客户端。

二、P0 角色与页面

角色 P0 页面 只做什么
总部管理员 校区、教师、班级、学生管理 建立两家校区和试点班级的基础数据
总部教研 任务模板列表、新建/编辑模板 配置固定任务与节点
教师 我的班级、发布任务、提交查看 发布、补发、撤回、查看提交
学生 课堂登录、任务列表、任务页、作品空间 完成、提交、查看个人作品

校区负责人首期复用管理员的“本校区范围”页面,不单独设计复杂后台。

三、固定任务模板

首期不开发任意流程编辑器。教研创建任务时按固定表单配置:

任务名称
适用课次(可选)
教师说明
学生说明
是否可形成作品
节点列表

节点首期只支持以下类型:

节点 学生端行为
图文/图片 阅读或观看
外部网页 在新窗口打开
HTML 在隔离区域打开单个 HTML 或 ZIP 包
单选题 选择一个答案,自动判分
多选题 选择多个答案,自动判分
文字提交 输入简短文字
图片/文件提交 上传课堂成果

P0 中 HTML 先作为可运行内容节点;客观题和提交节点由平台记录结果。HTML 内部自动回传复杂结果的 SDK 协议保留接口,但不作为首期闭环的前置开发项。

四、登录与权限

学生课堂登录

打开课堂链接 / 输入课堂码
→ 选择本人头像(小学学生同时显示姓名)
→ 输入图片密码或简单密码
→ 进入自己的任务列表

课堂码只定位班级,不能直接进入某个学生的私人数据。学生完成验证后才可访问其任务提交和作品空间。

权限边界

  • 总部管理员:全部校区数据;
  • 总部教研:课程和任务模板,不读取无关学生作品;
  • 教师:仅自己班级、已发布任务和本班学生提交;
  • 学生:仅自己账号、任务和作品空间;
  • 校区负责人:仅本校区数据。

五、关键页面流程

1. 教研配置

任务模板列表
→ 新建模板
→ 添加节点
→ 保存为可发布模板

首期节点按顺序排列,支持新增、删除、上下移动,不支持画布式拖拽、分支和协作编辑。

2. 教师发布

我的班级
→ 选择班级
→ 选择任务模板
→ 发布

发布后可:补发给单个学生、撤回任务、查看完成名单与提交内容。

3. 学生完成

课堂登录
→ 任务列表
→ 打开任务
→ 按顺序浏览节点
→ 回答客观题或上传成果
→ 提交

任务页不做课堂实时同步。学生可在一次任务内随时保存草稿,正式提交后允许按任务设置重做。

4. 作品归档

学生提交图片/文件/HTML
→ 教师查看
→ 标记为“归入作品空间”
→ 学生账号中的作品空间显示该作品

若教研将任务配置为“可形成作品”,学生完成后也可自行保存为草稿作品;教师确认后显示为已完成作品。

六、P0 数据模型

Campus(校区)
User(教师、管理人员账号)
StudentProfile(学生档案与头像/密码)
Classroom(班级)
Enrollment(学生—班级关系)

TaskTemplate(固定任务模板)
TaskNode(模板节点)
TaskRelease(教师发布记录)
TaskRecipient(任务接收学生)
Submission(一次学生提交)
Answer(客观题答案与得分)
Asset(图片、文件、HTML 包)
PortfolioItem(学生作品)

必须建立的关系:

TaskTemplate 不能被发布记录直接覆盖
TaskRelease 必须保存发布时的任务快照
Submission 必须归属到学生、任务发布和任务接收记录
PortfolioItem 必须归属学生,不归属班级
Asset 必须通过业务记录鉴权,不能只依赖公开文件地址

七、P0 API 清单

范围 接口示例
学生登录 POST /api/v1/student-sessions
班级与学生 GET/POST /api/v1/classes/students
任务模板 GET/POST /api/v1/task-templates
任务发布 POST /api/v1/task-releasesPOST /reissuePOST /withdraw
学生任务 GET /api/v1/my/tasksGET /api/v1/my/tasks/:id
提交与答题 POST /api/v1/submissions
文件上传 POST /api/v1/assets/upload-url
作品空间 GET /api/v1/my/portfolioPOST /api/v1/portfolio-items

具体 URL 可在实现时调整,但接口边界不应混淆:教师发布、学生完成、文件上传和作品归档各自独立。

八、开发顺序

阶段 A:项目骨架

  • 创建独立 AI教学平台 代码仓库;
  • 初始化 Next.js、TypeScript、PostgreSQL、Prisma 和基础界面组件;
  • 建立开发、测试、正式环境变量结构;
  • 建立基础数据模型和种子数据。

阶段 B:组织与登录

  • 校区、班级、学生、教师基础管理;
  • 管理人员与教师登录;
  • 课堂码、学生头像选择和简单密码登录;
  • 最小权限校验。

阶段 C:教研与教师任务

  • 固定任务模板编辑表单;
  • 节点编辑、保存和模板列表;
  • 教师选班级、选模板、发布、补发、撤回;
  • 发布任务快照。

阶段 D:学生完成与提交

  • 学生任务列表和任务页;
  • 单选、多选自动判分;
  • 文字、图片、文件上传;
  • 教师提交查看页。

阶段 E:作品空间

  • 学生个人作品列表;
  • 教师将提交归档为作品;
  • HTML/文件/图片作品访问;
  • 基础作品标题、说明和状态。

九、P0 验收用例

用一名教研、一名教师、一个 6—8 人班级完成以下实测:

  1. 管理员建立校区、班级、教师与学生;
  2. 教研创建一个含图片、HTML、单选题、多选题和图片提交的固定任务;
  3. 教师将任务发布给班级,并向一名学生补发;
  4. 学生通过课堂码、头像和简单密码进入任务;
  5. 学生完成两类客观题并上传一张图片;
  6. 教师在班级任务中找到该学生提交;
  7. 教师将图片归档到该学生作品空间;
  8. 学生再次登录后,在个人作品空间看到该作品;
  9. 教师撤回任务,学生端不再显示任务,但教师端历史提交仍可查。

上述用例全部通过后,才开始扩展课件类型、校区运营能力和多端客户端。

本页由 Markdown 自动生成。更新内容时请先修改源 Markdown,再重新生成网站 HTML。