帮助中心

模块帮助百科 · 共 19 篇

全校课表统一管理

系统通用 学院管理员超级管理员

功能简介

全校课表统一管理是校级共享数据的统一入口,把本科 / 研究生课表集中维护在中央库(而非按学院切片),全校只保留一份权威课表与一个「学期首周周一」,供各学院的监考人员推荐(按课表排除当天有课的老师)与科学城出勤统计(按周次 / 星期 / 节次自动生成出勤)共用。同一菜单下还提供「导入全校监考安排表」:上传一份覆盖全校的监考安排 Excel,系统按「监考学院」列自动分流到各学院库,生成各院的高亮临时预安排,免去逐院重复导入。两者都是校级运维动作,不依赖、也不切换当前学院上下文。

入口与权限

入口都在 监考安排管理 菜单内(菜单底部、与监考查询 / 维护用分隔线隔开),仅当账号满足校级条件时才显示:

  • 全校课表统一管理 监考安排管理 → 全校课表统一管理/admin/central_course_schedule)。
  • 导入全校监考安排表 监考安排管理 → 导入全校监考安排表/admin/school_invigilation_import)。

可用角色(两项一致,菜单显隐条件 central_course_schedule_menu_enabled 与后端校验一致):

  • 超级管理员:可见、可操作全部动作。
  • 教务处-运行科(角色 edu_office_ops,跨学院 scope 命中即可):可见、可操作。
  • 其余角色(含普通学院管理员、教师、学生)一律不可见;直接访问路由返回 403。
  • 预览 / 只读账号:可进入页面查看,但所有写动作(上传、改学期首周一、停用课表、确认分流导入)被只读拦截。
说明:这是校级功能,不随当前学院切换变化——无论选了哪个学院,看到的都是同一份全校课表与全校学期首周一。

操作步骤(分角色)

以下动作仅超管 / 教务处-运行科可执行。

维护全校课表(本科 / 研究生)

页面分三块:顶部「学期首周周一(全校默认)」、本科课表槽位、研究生课表槽位。每个类型只保留一份 active

  1. 设置学期首周周一:在顶部填日期(YYYY-MM-DD)点「保存」。该日期是全校唯一基准,监考推荐与科学城出勤都用它把「周次」换算成「真实日期」。至少已上传一份课表后才能单独保存该日期。
  2. 上传 / 替换课表:在对应槽位选 .xlsx / .xls 文件,可填「学期标签」(如 2025-2026-2,会拼进保存与展示文件名)、可顺带填「学期首周周一」(勾在这里则上传时一并更新全校默认)。点「上传并替换」。
  3. 系统按科学城出勤统计同一套列头识别逻辑解析文件(不按学院过滤,取全校所有行):
  • 解析出的课表类型会与你选的槽位比对,传错文件(如把研究生课表传到本科槽)会被拦截并提示;
  • 解析到 0 条有效记录会提示检查列头,不写库。
  1. 导入成功后,槽位显示当前文件名、有效行数、上传人、上传时间、学期标签,以及「按开课单位条数」前 12 项徽标,便于核对各学院命中量。
  2. 停用当前课表:点槽位右上「停用当前课表」,把该类型 active 置为 inactive(历史行保留、不物理删除,可重新上传覆盖)。

导入全校监考安排表(按学院分流)

复用「监考人员推荐」的预安排空表上传预览流程,当前入口仅支持预安排空表模式(生成高亮临时预安排 + 在考试备注写 slots=N,正式安排仍回「监考人员推荐」生成转正)。

  1. 进入「导入全校监考安排表」,选监考安排 Excel;可填「学期」(留空自动识别)、勾「按日期导入」(每天拆成 考试名-M月D日)。点「上传并预览」。
  2. 预览页确认要导入的列(默认预勾「监考学院 / 教学班名称 / 考试校区 / 授课教师 / 主讲老师 / 监考老师」)。文件必须含「监考学院」列(或可识别别名「部门一」),它是分流依据。
  3. 点「按监考学院分流导入」。系统会:
  • 先做一次全库备份(成功 / 未完全成功都会继续,但会提示);
  • 按「监考学院」值匹配到各学院库(支持「XX学院 / XX / XX工程」等别名归一),在每个命中学院的 bind 内导入;
  • 命中已锁定学期的学院会被跳过并标失败,不影响其他学院。
  1. 看「最近一次导入结果」表:逐学院列出源行数、导入场次、主讲监考数、跳过行、成功 / 失败原因;「监考学院」为空或匹配不到学院的行进「未匹配」清单(可展开查看 Excel 行号与原因)。

字段与状态口径

课表类型与 active

含义
本科课表 / 研究生课表两个独立槽位(undergraduate / graduate),各自只保留一份 active
有效行当前 active 课表解析出的课程行数(row_count
停用把 active 置 inactive,旧行保留作历史,可重新上传覆盖;不物理删除
学期首周周一全校唯一基准(中央库管理);学院级同名字段已停用,UI 不再可改
按开课单位条数按课表「开课单位 / 学院」维度统计的命中行数,用于核对各院数据量

课表解析所需列(与科学城出勤一致):本科要求「开课单位 / 开课课程 / 授课教师 / 开课时间 / 上课地点 / 上课周次 / 星期 / 教学楼 / 单双周」;研究生要求「课程名称 / 任课教师 / 时间 / 上课地址」(学院名称 / 学院 / 开课单位可选)。

全校监考导入结果

状态含义
成功该学院库已写入预安排场次 / 主讲监考
失败未配置可用 db_bind_key、学期已锁定、或写库异常(附原因)
未匹配行「监考学院」为空或匹配不到系统内学院的行,不会被导入

导入产生的预安排为高亮临时记录,备注写 slots=N(同场次取已有与新值的较大者);其中按「监考老师 / 主讲老师」列匹配到本院老师库的,写入高亮的「主讲」安排,正式转正仍在「监考人员推荐」完成。

常见问题

  • 菜单里看不到这两个入口:仅超管 / 教务处-运行科可见;普通学院管理员、教师、学生不可见。确认账号在跨学院 scope 内有 edu_office_ops 角色。
  • 提示「文件识别为 X 课表,但你选择的是 Y 课表」:传错槽位了,按识别结果重选类型或文件。
  • 解析到 0 条 / 列头报错:列名需符合科学城出勤同套识别逻辑(见上表),先核对表头再传。
  • 监考推荐 / 科学城没按课表排除有课老师:先确认全校课表已上传 active、且「学期首周周一」已设置且不晚于考试 / 出勤日期;学期跨度超 30 周的日期视为学期外不参与。
  • 全校监考导入某学院失败:多为该学院学期已锁定或未配置 db_bind_key;其余学院不受影响,按结果表逐院处理。
  • 某些行进了「未匹配」清单:「监考学院」列为空或写法匹配不到系统内学院;规范该列学院名后重传。
  • 改了课表 / 学期首周一,本学院页面没变化:这是全校共享数据,改动对所有学院一次性生效;若仍未生效,确认上传是否成功(看槽位文件名 / 上传时间)。

相关页面

  • 监考安排管理 监考人员推荐用本页课表「按整天 / 按时段排除当天有课的老师」;本页是该排除能力的课表数据来源
  • 科学城出勤统计 科学城出勤按本页课表的周次 / 星期 / 节次与「学期首周周一」自动生成出勤记录
页面内帮助
本页说明
正在加载帮助内容…
帮助项
当前路径
来源章节
来源文档
模板
说明摘录
摘录已截断,完整内容以源文档为准。
同文档相关页面