Appearance
宿舍分配、调宿与日常管理
Campus
适用角色
宿舍管理员、班主任、学生管理员、教务/系统管理员。
功能说明
宿舍管理围绕「楼宇 → 房间 → 班级分配 → 学生落位」四层数据展开,配合宿管人员分配、宿舍全览与日志复核形成闭环。前置的楼宇、房间维护在「基础资料」下完成;班级到宿舍的绑定、学生床位分配、调宿在「学生管理」域下完成;宿舍全览用于跨校区统一查询学生床位并办理调宿,全览页展开行内嵌了操作日志(ASSIGN / TRANSFER / CLEAR / BATCH_ASSIGN / CLAZZ_ASSIGN / CLAZZ_REMOVE 六种类型),日志不是独立菜单。
操作入口
text
基础资料 > 楼宇管理 / 房间管理 / 宿管人员
学生管理 > 班级宿舍 / 学生宿舍 / 宿舍全览截图待补:楼宇管理、房间管理、宿管人员、班级宿舍、学生宿舍、宿舍全览与展开行日志。
一、维护楼宇(基础资料 > 楼宇管理)
楼宇是宿舍数据的最上层容器,同时兼顾办公楼登记。
- 点击工具栏「新增」,弹出「添加楼宇」窗口。
- 填写字段(均为必填项,标注
*除备注外):- 所属学校:从下拉列表选择。
- 楼宇名称、楼宇编号:文本输入。
- 分类:
办公楼/宿舍楼二选一。 - 宿舍分类:仅当「分类=宿舍楼」时出现,
男生宿舍/女生宿舍二选一。办公楼不出现此项,列表中显示为-。 - 状态:
正常/停用,默认「正常」。 - 备注:选填。
- 提交后系统提示「创建成功」。
列表页支持按 所属学校 / 楼宇名称 / 楼宇编号 / 分类 / 宿舍类别 / 状态 组合筛选,并展示 房间数量、床铺数量、入住数量、空闲数量 四项汇总(仅宿舍楼有数值,办公楼显示 -)。行操作提供「编辑」和「删除」。
保存校验文案:所属学校、楼宇名称、楼宇编号、分类、宿舍分类、状态任一为空都会拦截,例如「楼宇编号不能为空」「宿舍分类不能为空」。
二、维护房间(基础资料 > 房间管理)
房间管理采用「左侧楼宇列表 + 右侧房间表格」的联动布局。
- 筛选楼宇:左上角按学校下拉过滤,下方按钮组切换
所有楼宇 / 办公楼 / 男生宿舍 / 女生宿舍;顶部搜索框支持按楼宇名称或编号模糊匹配。 - 选中楼宇后,右侧头部展示统计块:
房间数(所有楼宇通用)以及仅宿舍楼展示的床位数 / 已入住 / 空闲数。 - 点击右上角「添加房间」,弹窗字段:
- 楼宇:只读,显示当前选中的楼宇名。
- 房间编号(必填)。
- 楼层:数字,取值 1–50。
- 床铺数量:仅当选中楼宇「分类=宿舍楼」时出现,取值 0–20。新建时系统默认给「宿舍楼」预填 4 个床位、办公楼预填 0;楼层默认 1。
- 备注:多行文本,选填。
- 房间列表支持按 房间编号搜索,字段包括房间编号、楼层、床铺数量、入住数量、空闲数量、备注、创建时间。行内提供「编辑」「删除」按钮组;删除会二次确认「确认删除房间 XXX 吗?」。
房间保存/删除后,左侧楼宇列表的汇总数据会自动刷新,无需手工刷新。
三、绑定班级宿舍(学生管理 > 班级宿舍)
班级宿舍页把「班级」与「宿舍房间」建立多对多关系,是学生落位前的必要一步。
- 左侧选班级:顶部级联下拉「学校 → 院系 → 专业」层层收窄,
院系需选学校后才能选、专业需选院系后才能选。搜索框按班级名称或班主任姓名过滤。班级卡片显示班级名、院系 / 专业、班主任、学生数。 - 右侧选宿舍:
- 系统会依据班级性别比例自动切换筛选:男生多 →
男生宿舍、女生多 →女生宿舍、相等 →全部。可手动改为全部 / 男生宿舍 / 女生宿舍。 - 楼宇以标签页展示,每个标签显示
男/女性别标签和已住/总床位计数。 - 楼宇下可按「楼层下拉 + 宿舍号搜索 + 状态(全部 / 有空余 / 已满)」组合筛选。
- 房间卡片显示:房间号、
已满 / 空余 N状态标签、床位 / 已住 / 班级三项统计,以及「班级分配情况」区域列出已分配班级名。
- 系统会依据班级性别比例自动切换筛选:男生多 →
- 勾选房间:点击卡片切换选中/取消。系统会做两条校验:
- 若「房间已满」且当前未选中,提示「该宿舍已无空床位」,无法勾选。
- 若班级 只有男生(
maleCount>0 && femaleCount==0)却勾女生宿舍,提示「班级只有男生,不能选择女生宿舍」;反向同理。
- 底部「已选宿舍」区显示所有已勾选房间的标签,可点
×移除。 - 点击顶部「保存分配」(只有当选择与原分配不一致时才可点击)。成功后弹提示「班级宿舍分配成功」,页面保留当前楼宇标签,仅刷新该楼宇的班级分配情况。
四、分配学生床位(学生管理 > 学生宿舍)
学生宿舍页把「宿舍房间」与「学生」建立一对一床位关系,支持拖放、单点分配、批量填充和批量移除。
4.1 页面结构
- 顶部筛选:学校 → 院系 → 专业 → 班级(同样是级联下拉,选到班级后右侧默认加载该班学生)。
- 楼宇标签页:按
全部 / 男生宿舍 / 女生宿舍过滤,每个楼宇标签下会显示男/女性别标签。选中楼宇后,下方蓝色信息条展示房间数 / 床铺数 / 入住数 / 空余数。 - 中间宿舍分配区:网格布局的房间卡片,每张卡片包含:
- 房间号 +
已满 / 空余 N 床状态标签; 总床位 / 已住 / 空余三项统计;- 「分配班级」标签列表(含班主任姓名与手机号);
- 「已住学生 X/Y」明细,含删除单个学生按钮,以及右上角「批量移除」按钮(有学生时才出现)。
- 房间号 +
- 右侧学生列表:显示当前选中房间下已分配班级的可分配学生,按
院系 + 专业 + 班级名去重分组,每组头部有「批量填充」按钮。
4.2 单人分配(点击或拖放)
- 点击方式:先点中间某间房卡片选中它 → 在右侧点某个学生 → 系统弹出「是否将该学生分配到当前宿舍?」二次确认 → 确认后成功提示「分配成功」。
- 拖放方式:从右侧把学生卡片拖到中间房间卡片。已分配学生的卡片会以灰色显示且不可拖动,重复拖入会提示「该学生已分配宿舍」;房间已满时提示「该宿舍已满,无法分配更多学生」。
4.3 批量填充(按班级)
在右侧班级分组头部点击「批量填充」→ 系统弹出确认:「将自动把 XXX 未分配的住宿生填入已分配的匹配宿舍(性别匹配 + 空床位优先),是否继续?」→ 确认后调用批量填充接口,返回统计:成功 N 人 / 剩余未分配 M 人 / 跳过 K 人,若有 warning 会以通知形式展开显示。填充完成后自动刷新楼宇统计与当前房间。
4.4 移除与批量移除
- 房间卡片内每个学生右侧的
×图标可单个移除,弹提示「是否取消分配该学生的宿舍?」。 - 房间头部「批量移除」按钮会一次性移除该房间内全部学生,弹提示「是否将宿舍 XXX 中的所有(共 N 名)学生全部移除?」,标题为「批量移除警告」,确认按钮为红色危险色。
4.5 学生搜索与宿舍搜索
- 「搜索宿舍号」按房间号模糊过滤当前楼宇下的房间。
- 「搜索学生姓名」以 500ms 防抖调用后端接口,命中后会自动切换到该学生所在的楼宇,并把命中的宿舍卡片顶部标记「找到 X 名学生」。未找到时提示「未找到该学生的宿舍信息」。
4.6 修复统计
页面右上角「修复统计」按钮仅对系统管理员显示。点击后弹「此操作将重新计算所有宿舍的入住数量和空闲数量,是否继续?」,确认后遮罩显示「正在修复统计数据…」,成功后按后端返回消息显示提示,并自动刷新楼宇和当前房间。此操作用于处理入住/空闲计数与实际学生数不一致的场景,日常不需要执行。
五、宿管人员分配(基础资料 > 宿管人员)
用于把系统用户挂到宿舍楼上作为宿管,一栋楼可挂多个宿管,一个用户也可负责多栋楼。
- 左侧宿舍楼列表:可按学校下拉过滤,按
全部 / 男生宿舍 / 女生宿舍切换。卡片显示房间数 / 床位数 / 已住三块统计,以及底部「宿舍管理员」列表(含头像、姓名、手机号)。 - 右侧用户列表:支持按姓名搜索(回车触发接口筛选),按
全部 / 已分配 / 未分配切换,卡片显示头像、姓名、学校 · 部门 · 岗位 · 职称、联系方式,以及「管理的宿舍楼」标签。 - 分配方式(两种择一):
- 点击:先在左侧选中某栋楼,然后在右侧点击某个用户,即完成分配,提示「分配管理员成功」。若未先选楼提示「请先选择宿舍楼」。
- 拖放:把右侧用户卡片拖到左侧某栋楼卡片的虚线区,松手完成分配。
- 解除:点击左侧管理员条目末尾的删除图标,弹提示「确定要解除 XXX 的宿舍楼管理权限吗?」,确认后成功提示「解除管理员成功」。
- 去重规则:如果拖入的用户已是该楼管理员,仅提示「XXX 已是该宿舍楼管理员」,不重复挂接。
六、宿舍全览与调宿(学生管理 > 宿舍全览)
宿舍全览是一张跨校区、跨楼宇的学生床位明细表,用来跨部门核对入住情况和办理调宿。
6.1 查询与导出
- 顶部筛选:模糊搜索(姓名/手机号/房间号)、学校、楼宇、楼层、性别(男/女/全部)、院系。
- 列表字段:
# / 学校 / 院系 / 专业 / 班级 / 班主任 / 学生姓名 / 手机号 / 性别 / 楼宇 / 楼层 / 房间 / 床位 / 入住时间 / 分配人 / 操作。 - 工具栏「导出全部」按当前筛选条件导出,最多导出 50 000 行,导出成功后弹通知「导出成功」。
6.2 学生调宿
在任一行末点击「调宿」按钮打开「学生调宿」弹窗:
- 展示学生姓名、性别标签、原宿舍(
楼宇 - 楼层层 - 房间号)作为参考信息,不可修改。 - 目标楼宇(必填):默认加载学生所在学校的宿舍楼(
type=2)。校验文案「请选择目标楼宇」。 - 目标房间(必填):切换楼宇后自动重新加载。下拉只展示 性别匹配且有空床位 的房间,标签格式
房间号 (空N/总M)。若加载出的房间全部不满足条件,会在下方以橙色提示:「该楼宇暂无匹配性别或有空床的房间」。校验文案「请选择目标房间」。 - 确认后系统还会拦截「目标房间不能与原房间相同」,通过则调用调宿接口,成功提示「调宿成功」并刷新全览列表。
6.3 操作日志(行展开)
点击每一行左侧的展开箭头,可查看该学生的宿舍操作日志,字段为:# / 操作类型 / 操作人 / 学生姓名 / 原宿舍 / 新宿舍 / 操作时间 / 备注。日志最多加载最近 50 条。操作类型用彩色标签区分:
| 编码 | 显示文本 | 说明 |
|---|---|---|
ASSIGN | 入住/分配 | 首次分配学生到床位 |
TRANSFER | 调宿 | 学生在房间之间转移 |
CLEAR | 清退 | 移除学生床位 |
BATCH_ASSIGN | 批量配置 | 学生宿舍页的批量填充 |
CLAZZ_ASSIGN | 分班自动配置 | 班级绑定宿舍时的联动写入 |
CLAZZ_REMOVE | 出班解除配置 | 班级解除宿舍时的联动清理 |
关键规则与注意事项
- 数据顺序:楼宇 → 房间 → 班级宿舍 → 学生床位。缺任何一层,下一层都无法操作,例如没有绑定班级的房间在右侧不会出现可分配学生。
- 性别一致性:宿舍楼在建楼时区分
男/女,班级绑定和学生落位都会做性别校验;跨性别选择会被拦截。 - 容量控制:房间的「床铺数量」决定容量上限,
空余数 = 床铺数 − 入住数。已满的房间在班级分配、单人分配、拖放、调宿四个入口均不可选。 - 调宿约束:目标房间必须与学生性别匹配、有空床,且不能与原房间相同。
- 数据范围:楼宇、班级、学生、用户下拉均按当前账号可见的学校/校区过滤;跨校区调整需要相应权限,权限点由角色控制,具体以实际下发的客户环境为准。
- 日志入口:宿舍日志内嵌在「宿舍全览」展开行,不是独立菜单;如果需要跨学生查看全量操作日志,请通过全览页依次展开。
- 修复统计:仅在页面提示的统计数字与实际学生数不符时使用,属于系统管理员级动作,日常操作不需要执行。
- 设施维修 / 门禁记录:宿舍设施报修请到「协同办公 > 维修报修」办理;出入或门禁记录请到门禁相关菜单查询,本模块只维护床位归属。
常见问题
分配学生时提示「该宿舍已无空床位」或「宿舍已满,无法分配更多学生」
房间当前 空余数=0。请到 房间管理 增加该房间「床铺数量」,或在 学生宿舍 页把该房间内不该住的学生先移除,或换一间有空余的房间。
分配学生时提示「班级只有男生(女生),不能选择男生(女生)宿舍」
班级宿舍页会校验班级性别构成与宿舍楼性别是否一致。若确需混合分配(例如班级里只有一名反性别学生),请让宿舍管理员另建一栋对应性别的楼宇并单独绑定,避免破坏性别校验。
学生调宿提示「目标房间不能与原房间相同」
学生调宿弹窗默认根据学生学校加载楼宇,如果误选回到原房间会被拦截。请确认下拉里的房间编号与当前原宿舍显示的编号不同。
修改了学生分配,「宿舍全览」的入住数或空闲数看起来不对
先确认已经在学生宿舍页保存或拖放完成(页面会有「分配成功 / 移除成功」提示)。如果确认无误但数字仍不同步,请让系统管理员在「学生宿舍」右上角点「修复统计」,会重算所有楼宇的入住与空闲数量。
找不到「宿舍日志」菜单
宿舍日志没有独立菜单入口,请到「学生管理 > 宿舍全览」,点击行左侧展开箭头,展开区就是该学生的操作日志(含分配、调宿、清退、批量配置、分班自动配置、出班解除配置六种类型)。
一栋楼想挂多个宿管,或一个宿管想管多栋楼
「宿管人员」页允许多对多关系。多个宿管:在同一栋楼上依次为每个用户点击或拖放一次即可;一个宿管管多栋:把同一个用户依次拖到多栋楼上。重复分配同一组合会提示「XXX 已是该宿舍楼管理员」,不会造成重复。
版本记录
| 版本 | 日期 | 修改说明 |
|---|---|---|
| v1.0 | 2026-07-27 | 首次建立 |
| v1.1 | 2026-07-27 | 依据前端源码完善内容 |
