它解决的三件事
排课不冲突
时段按 30 分钟格记录占用,由数据库唯一约束兜底;按规则排课前先预检,有硬冲突整批不生成。调课、加课、一对一预约、补课走同一套检测。
签到消课准确
同一学员同一课节只能有一笔有效消课,扫码和点名同时提交也只扣一次;撤销点名、停课都写冲正流水,不改原记录。签到码 5 分钟有效,里面没有姓名手机号。
课时账目清楚
余额只能由流水累加得出,没有直接改余额的接口;调整要“教务申请、校长审核”。退费 = 剩余购买课时 × 成交单价,赠送课时不退。
三端分别能做什么
同一套服务端,三种使用者看到各自的界面;员工端和客户端是同一个小程序,用不同的账号登录。
管理后台
校长、教务,电脑浏览器
- 课表看板:教室 × 时段 / 老师 × 时段矩阵,日 / 周切换
- 班级排课、规则排课与冲突预检、插班(从第 N 节开始)
- 课节:调课(先预检)、停课(自动冲正并通知家长)、一对一预约、补课安排
- 课时账户:两本账、批次、只读流水、对账
- 课时调整与退费都要校长审核,申请人不能审核自己的
- 购买订单(协议版本与勾选记录)、前台收款、统计(确认收入与预收余额)


老师端
老师,手机浏览器或家长小程序里的员工入口
- 今日课节:时间窗写清楚,窗外“点名”按钮禁用并说明原因
- 点名:到 / 迟到 / 请假 / 缺勤四个大按钮,提交后逐个显示扣了几课时
- 扫家长出示的签到码,重复扫显示“已签到”
- 课堂点评:班级或个人,带照片 / 短视频
- 看不到家长手机号和具体课时余额

家长端
家长或成人学员本人,小程序 / H5 / App
- 首页:孩子切换、下一节课大卡(可直接请假 / 出示签到码)、本周课表、课时余额
- 请假先显示“现在请假扣不扣课时”,上课前可以撤销
- 签到码整页白底大二维码,到期前自动换码
- 课时账户:两本账、购买批次、按月分组的流水
- 购买课时包要先看协议全文并勾选;退费先显示可退金额和计算明细
适合谁
- 非学科类培训:艺术、体育、科技编程、语言表达、书法;成人职业培训
- 班课和一对一都支持;单校区或少量校区(校区 = 数据范围)
- 不适用:义务教育阶段学科类校外培训(“双减”政策严格限制)
要你自己准备的
- 服务器、域名、HTTPS 证书;小程序要用已备案的域名。
- 你自己的小程序 AppID、微信支付商户号 / 支付宝应用,以你自己的主体名义办理。
- 短信服务商(签名、模板):系统只带了演示通道,用短信验证码登录的产品不接短信就无法注册新客户。
- 上线前在真机上完整测试一遍,并用真实商户号做一笔小额支付和退款验收。
- 办学许可、类别认定、预收费资金监管由使用系统的机构按当地规定办理;系统不做资金存管、不对接监管平台。
- 内置的课程协议是通用模板,不是法律意见,上线前要按当地合同示范文本修改并发布新版本。
演示入口
演示数据每天自动重置;演示支付不会产生真实扣款。小程序需要在你自己的 AppID 下发布,演示请用 H5。
教培排课签到
后台账号
- 校长
et_principal全部数据,审核调整与退费 - 教务
et_academic_e东湖校区 - 老师
et_t_lin老师端
密码Demo#2026et以上账号通用
客户端
- 家长
13900000001验证码登录,两个孩子
- 家长端用手机号 + 短信验证码登录,演示站的验证码直接显示在页面上。
- 老师用手机打开后台地址登录,或在家长端“我的 › 员工入口”登录。
自动化测试
| 产品 | 接口冒烟 | 单元测试 | 端到端 |
|---|---|---|---|
| 教培排课签到 | 244 项 | 43 个 | 41 步 |
另外每款都带统一后台安全冒烟 80 项、公共支付模块单元测试 72 个。接口冒烟是业务接口的冒烟用例(含支付);单元测试只数本产品业务模块;端到端是管理后台、客户端、员工端三套脚本的步骤合计。测试都在本地开发环境运行,没有做过压力测试。

