功能简介
登录与注册是进入系统的统一入口,覆盖选择学院入口页 → 分角色登录 → 学生自助注册 → 修改密码 → 跨学院切换 → 退出登录全链路,并包含两类特殊能力:教师非登录查询监考入口(不登录即可查本人监考)与管理员代登录(身份模拟)。未登录访问任何受限页面都会被统一引导到「选择学院」入口页,再按身份选择对应入口登录。本页面向所有人(访客、学生、教师、管理员、超管)。
入口与权限
- 选择学院入口页
/select_college:未登录默认落地页,任何人可访问。页面分两块——左侧「教师非登录查询监考入口」(按学院列出已开通监考模块且属于可选学院的「××监考查询」按钮),右侧「登录入口」四个按钮:教职工入口 / 学生入口 / 督导组入口 / 教务处入口。 - 登录页
/login:任何人可访问。带 mode 参数区分入口(teacher 教师 / student 学生 / supervisor 督导组 / edu_office 教务处),不带参数为通用「用户登录」。 - 学生注册
/student_register(POST):未登录可提交,仅供学生自助注册;入口在登录页「学生注册」链接(学生/通用入口可见,教师/督导/教务处入口隐藏)。 - 管理员建号
/register(POST):仅超级管理员可调用,用于后台创建教师/管理员账号,不是匿名注册入口。 - 修改密码
/change_password:所有已登录用户可用(预览/只读账号被拦截,仅展示不可提交)。 - 跨学院切换
/switch_college(POST):登录后由顶部导航栏的学院切换控件触发,仅对具备跨学院权限的账号显示;超管可切任意学院,其他账号只能切到被授权的学院集合。 - 代登录
/admin/users/<id>/impersonate(POST,发起)与 /impersonation/stop(POST,退出):发起仅限有权代登录目标用户的管理员/超管;退出按钮在代登录横幅上对当前会话可见。 - 退出登录
/logout:已登录用户可用,清空全部会话后回到登录页。
操作步骤(分角色)
访客:不登录查询监考
- 打开系统自动进入「选择学院」入口页。
- 在「教师非登录查询监考入口」点击对应学院的「××监考查询」按钮。
- 在查询页输入姓名或一卡通号查询本人监考安排(无需账号密码)。该入口只读,仅查监考,不进入其他功能。
教师 / 管理员 / 超管:登录
- 入口页点「教职工入口」,进入
mode=teacher 的登录页。 - 填写用户名、密码、学院三项(普通教师用户名通常为一卡通号;督导组等跨学院用户也可用姓名登录,系统会按真实姓名回退匹配账号)。
- 点「登录」。系统校验账号密码与入口模式是否匹配(如学生账号走教师入口会被拒绝),通过后写入当前学院上下文并跳转首页。
- 学院管理员若该学院尚未完成 QQ 机器人初始化,登录后会被引导到机器人设置页。
学生:登录
- 入口页点「学生入口」(
mode=student),用一卡通号 + 密码 + 学院登录。 - 非学生账号从学生入口登录会被拒绝(提示从正确入口登录)。
督导组 / 教务处:登录
- 督导组(
mode=supervisor):账号须具备督导组范围,否则提示「该账号不是督导组用户」。 - 教务处(
mode=edu_office):不需要选择学院(登录表单不显示学院项),但账号必须已分配到教务处管理单位,否则提示先由管理员初始化/分配。登录后进入按身份(非单一学院)划定范围的工作台。
学生:自助注册
- 在学生登录页点「学生注册」切换到注册表单。
- 依次填写:一卡通号(12 位数字,注册后不可修改)、姓名(≤20 字)、密码、电话(≥11 位数字)、QQ(可选,数字 ≤12 位)、班级(≤20 字)、系别(从所选学院的系别清单中选)、学院。
- 密码须不少于 8 位且至少包含 3 种字符类型(数字/小写/大写/特殊符号)。
- 提交后若一卡通号已注册或 QQ 被占用会报错;成功后返回学生入口登录。未填 QQ 时系统会用「0+一卡通号」生成占位 QQ。
所有人:修改密码
- 登录后进入「修改密码」页。
- 填当前密码、新密码、确认密码三项并提交。
- 当前密码错误、两次新密码不一致、或(首次登录强制改密场景下)新密码与初始密码相同,都会被拦回。
- 教务处等账号若被标记「首次登录强制改密」,必须设置一个不同于初始密码的新密码才能继续。
跨学院账号:切换学院
- 登录后在顶部导航栏右侧选择目标学院,点切换按钮。
- 切换成功后首页统计、课程归档、课程增免修、监考等业务数据范围全部按新学院重新加载;操作前务必确认顶部显示的当前学院正确。
- 非超管账号只能切到被授权学院,越权会提示「未授权该学院访问」。
管理员:代登录(身份模拟)与退出
- 在用户管理中对目标用户发起代登录,系统以目标用户身份建立会话并跳首页。
- 代登录期间页面顶部常驻代登录横幅,显示「正在代登录:××」「原管理员:××」与「退出代登录」按钮。
- 点「退出代登录」即恢复原管理员身份(支持多层代登录的逐层返回)。代登录的开始/结束均写操作日志留痕。
所有人:退出登录
点导航栏退出,系统清空登录态与学院绑定等全部会话信息,回到登录页。
字段与状态口径
| 入口模式(mode) | 中文名称 | 是否选学院 | 校验要点 |
|---|
| teacher | 教职工入口 | 是 | 学生账号被拒;管理员/超管放行 |
| student | 学生入口 | 是 | 必须为学生账号 |
| supervisor | 督导组入口 | 是 | 必须具备督导组范围 |
| edu_office | 教务处入口 | 否 | 必须已分配教务处管理单位 |
| (无 mode) | 用户登录 | 是 | 通用登录,按账号类型放行 |
- 用户名口径:普通教师/学生通常为一卡通号;督导组等跨学院用户可用姓名(按
real_name 回退匹配)。 - 学生注册字段约束:一卡通号=12 位数字且注册后不可改;密码≥8 位且≥3 种字符类型;电话≥11 位数字;QQ 选填、数字、≤12 位;姓名/班级≤20 字;系别须属于所选学院的系别清单。
- 预览/只读账号:修改密码页对只读账号显示「本账号仅供测试预览,不能编辑」并禁用提交,后端同步拦截 POST。
- 登录限频:登录、管理员建号、学生注册均限制每分钟 5 次,频繁失败会被临时限流。
常见问题
- 打开系统就跳到「选择学院」页:这是未登录的正常引导。按身份点对应入口登录即可;若只想查监考,用「教师非登录查询监考入口」。
- 提示「该账号不是××用户,请从正确入口登录」:账号类型与所选入口不匹配(如学生走了教师入口)。回到入口页选对应入口重登。
- 教务处入口看不到学院选择框:属正常设计,教务处按管理单位授权范围工作,不绑定单一学院。若提示未分配管理单位,请联系管理员初始化。
- 学生注册报「该学号(一卡通号)已注册」或「该QQ号已被占用」:该一卡通号已建过号,或 QQ(含未填时的占位 QQ)与他人冲突;换号或联系管理员核实。
- 密码改不了 / 提示首次必须设新密码:检查当前密码是否正确、两次新密码是否一致;强制改密账号必须把新密码设成与初始密码不同。
- 找不到学院切换控件:该控件仅对具备跨学院权限的账号显示;普通单学院账号不显示属正常。
- 页面顶部一直显示「正在代登录」横幅:当前处于管理员代登录会话中,点横幅上的「退出代登录」即可回到原身份。
- 登录后频繁要求重新登录或机器人按钮缺失:多为会话被轮换;重新登录可恢复学院绑定与机器人会话上下文。
相关页面