draft v0.1.0 2026-07-05

EPA-015 Offline Class Zone

线下课专区用于把赵书华线下授课搬到 EAOS:每一次线下课都形成一个私密班级空间,承接 HTML 课件、手机号入班、现场跟做、答题提交、课前课后资料包、授课记录和老师端进度看板。

Positioning

服务对象是已经报名某一次线下课的学员和授课老师。它解决的不是公开获客,而是让线下课堂的学习过程被记录、被互动、被复访,并把学员留在网站后续继续登录学习。

Access Model

LayerMVP behaviorProduction requirement
班级入口/offline/?code=班级邀请码邀请码只作为入口参数,不能作为唯一权限
登录身份本地手机号演示手机号验证码、会话、设备风控
成员校验localStorage 报名记录服务端 OfflineEnrollment 校验
课件访问HTML 地址嵌入页面对象存储签名 URL 或服务端鉴权
老师看板后台运营面板 + 本地表格RBAC、审计日志、导出权限

生产版不得依赖前端隐藏实现私密。任何 HTML 课件、资料包、成果提交和手机号都必须走服务端权限校验。

Core Workflow

  1. 老师或运营在后台创建线下课专区,填写标题、授课时间、地点、HTML 课件地址和班级邀请码。
  2. 系统生成班级链接,例如 /offline/?code=ZSH-AI-0712
  3. 学员打开链接,用手机号进入本班。
  4. 平台校验入班状态后签发 HTML 课件、课前包和课后包的限时访问链接。
  5. 学员查看课前大礼包,现场打开 HTML 课件。
  6. 学员按步骤标记完成,并提交答题、提示词、截图链接、在线文档或课后迁移计划。
  7. 系统把完成步骤和提交成果写入进度与提交记录,并给学员发放积分。
  8. 老师在后台运营面板查看本班链接、入班人数、近 2 小时活跃、平均完成率、成果数量和最近提交,再进入明细表查看单人进度、提交内容和授课记录。
  9. 课后大礼包、论坛、社群和学习产品继续承接复访。

日常批量建班流程:赵书华只需要给出日期、讲座名称和班级名称,运营后台即可自动生成启用状态的私密班级、邀请码、班级链接、讲授版 HTML 资源位和跟做版 HTML 资源位。学员拿到链接后使用手机号和邀请码进入。

Data Objects

ObjectPurposeKey fields
OfflineClass一次线下课私密专区title, inviteCode, status, privacy, teacherName, startsAt, venue, htmlCoursewareUrl, followAlongCoursewareUrl, lectureSeriesId, lectureNo, package JSON, steps JSON, activities JSON
OfflineEnrollment某手机号或用户加入某班offlineClassId, userId, phoneHash, role, status, inviteCode, enrolledAt, lastSeenAt
OfflineProgress学员完成 HTML 课件步骤offlineClassId, userId, phoneHash, stepId, status, completedAt
OfflineSubmission答题、跟做和成果提交offlineClassId, userId, phoneHash, activityId, response, evidenceUrl, pointsAwarded, status, submittedAt

手机号在生产数据库中应优先存 phoneHash 和加密联系方式,不在普通后台表格中裸露。

Student Experience

学员端必须在手机和电脑都能完成:

Teacher Experience

老师端必须支持:

Package Rules

每个线下课专区都必须有课前和课后大礼包。

课前大礼包建议包含:

课后大礼包建议包含:

Class Setup Template

后台创建线下课专区时,运营老师必须同时配置四类结构化内容:

FieldFormatExample
课前大礼包`标题类型链接状态``课前准备清单checklist/docs/012-content-operations/ready`
课后大礼包`标题类型链接状态``课后复盘模板包template/docs/006-operations/ready`
现场课件步骤`标题分钟说明``现场跟做任务30完成老师布置的第一轮操作。`
答题与跟做任务`标题类型积分说明占位提示``现场跟做成果artifact25提交一份现场成果。粘贴成果链接。`

当前静态原型使用“已上传 HTML 课件地址”来模拟上传流程。生产版应把 HTML 课件、课前包、课后包上传到对象存储,生成带权限的资源记录,再写入 OfflineClass

默认任务模板包含四段:

Batch Lecture Setup

批量建讲座班级用于“多场线下讲座连续开课”的场景。后台支持每行一场讲座:

2026-08-01 09:00 | AI备课实战 | 一班
2026-08-02 09:00 | AI作业评价 | 二班

系统自动生成:

后续生产版上传流程应把 HTML 课件上传到对象存储后,把返回的资源地址写入对应班级;当前原型先用站内 HTML 路径模拟。

Resource Access

公开的 /api/offline/classes?inviteCode=... 只返回班级预览和资料存在状态,不返回原始课件 URL 或礼包 URL。学员完成手机号入班后,前端应调用 /api/offline/resource-access 领取限时访问链接。

资源访问签发规则:

Acceptance

当前原型完成标准:

API 原型完成标准: