# 52-自习室预约系统 - 功能说明

# 项目概述

自习室预约系统是一个专为图书馆、教学楼等场所设计的智能座位管理平台,采用前后端分离架构,基于Vue 3和Spring Boot技术栈。系统为学生提供便捷的自习室座位预约服务,支持在线选座、签到签退、预约管理、违约处理等全流程功能。通过可视化座位布局、智能预约机制、黑名单管理等多重保障,提升自习室利用率,规范座位使用秩序。


# 项目概览

# ✨ 创新点

# 1. 可视化座位选择

  • 图形化座位布局:10行6列网格布局,直观展示座位分布情况。
  • 实时状态显示:座位状态实时更新(可用、已预约、使用中、维护中、禁用)。
  • 座位类型区分:普通座位、靠窗座位、靠墙座位,满足不同偏好。
  • 行列定位:每个座位有明确的行号和列号,方便快速定位。

# 2. 智能预约管理机制

  • 时间段预约:用户选择预约日期、开始时间、结束时间,系统自动计算时长。
  • 预约状态流转:待签到→使用中→已完成→已取消/已违约,状态清晰。
  • 防止冲突:同一座位同一时间段只能被一人预约,避免冲突。
  • 取消预约:用户可在签到前取消预约,需填写取消原因。

# 3. 签到签退管理体系

  • 签到机制:预约后需在开始时间前签到,否则视为违约。
  • 签退记录:离开时签退,系统记录实际使用时长。
  • 时长统计:自动计算实际使用时长(小时),与预约时长对比。
  • 状态追踪:未签到→已签到→已签退,全流程记录。

# 4. 违约处理与黑名单系统

  • 违约判定:预约后未签到、提前离开等行为视为违约。
  • 违约次数统计:系统自动累计用户违约次数。
  • 黑名单管理:违约达到一定次数后加入黑名单,限制预约权限。
  • 黑名单期限:设置黑名单开始时间和结束时间,到期自动解除。

# 5. 用户反馈与公告系统

  • 反馈类型:投诉、建议、咨询三种类型,满足不同需求。
  • 图片上传:支持上传多张图片(用逗号分隔),方便问题说明。
  • 反馈处理:管理员回复反馈,处理状态实时更新(待处理/处理中/已处理/已关闭)。
  • 公告发布:管理员发布系统公告,通知用户重要信息。

# ✨ 项目亮点

# 一、业务功能亮点

  1. 完整的预约流程:自习室浏览→座位选择→预约提交→签到签退→预约完成,流程完整。
  2. 可视化座位布局:图形化展示座位分布,实时状态更新,选座直观便捷。
  3. 智能时间管理:预约时间段选择、时长自动计算、签到超时提醒。
  4. 违约处理机制:违约次数统计+黑名单管理,规范座位使用秩序。
  5. 反馈处理系统:用户反馈+管理员回复,及时解决问题,提升服务质量。

# 二、技术实现亮点

  1. 现代化前端技术栈:Vue 3 + Element Plus + Vite,开发高效体验流畅。
  2. 稳定可靠的后端架构:Spring Boot + MyBatis,构建稳健后端服务。
  3. 完善的数据库设计:9张核心表,utf8mb4字符集,支持完整业务流程。
  4. 安全性设计:JWT Token认证、密码加密存储、黑名单限制。
  5. 前后端分离架构:清晰的职责划分,易于维护和扩展。

# 三、用户体验亮点

  1. 双端界面设计:
    • 前台:水平导航,自习室卡片展示,座位可视化选择,简洁美观。
    • 管理后台:侧边导航,功能集中,高效管理。
  2. 交互优化:
    • 座位状态实时刷新。
    • 预约成功即时反馈。
    • 签到签退一键操作。
    • 黑名单状态提醒。
  3. 数据可视化:
    • 自习室可用座位数实时显示。
    • 座位布局网格化展示。
    • 预约记录时间轴展示。
  4. 移动端适配:响应式设计,支持手机、平板等多端访问。

# 管理员

# 系统管理

管理员管理:管理全部管理员账号,支持新增、编辑、删除、启用/禁用操作。

普通用户管理:管理全部用户账号,可修改用户信息、状态,支持重置密码、启用/禁用账号。

# 自习室管理

自习室管理:

  • 新增自习室(名称、位置、楼层、开放时间、总座位数、图片、简介)
  • 编辑自习室信息(调整座位数、修改开放时间、更新简介)
  • 设置自习室状态(开放/关闭/维护中)
  • 查看自习室可用座位数(实时更新)
  • 删除自习室

座位管理:

  • 批量创建座位(设置行列布局、座位编号、座位类型)
  • 编辑座位信息(座位编号、座位类型、行列位置)
  • 设置座位状态(可用/维护中/禁用)
  • 查看座位所属自习室
  • 删除座位

# 预约管理

预约管理:

  • 查看所有预约记录
  • 查看预约详情(用户、自习室、座位、预约时间、时长、状态)
  • 查看预约状态(待签到/使用中/已完成/已取消/已违约)
  • 处理违约预约(标记为已违约)
  • 取消异常预约
  • 查看取消原因

签到管理:

  • 查看所有签到记录
  • 查看签到详情(预约ID、用户、座位、签到时间、签退时间、实际时长)
  • 查看签到状态(未签到/已签到/已签退)
  • 统计用户签到签退情况

# 违约与黑名单管理

黑名单管理:

  • 查看黑名单用户列表
  • 添加黑名单(用户、原因、违约次数、开始时间、结束时间)
  • 编辑黑名单(调整结束时间、更新原因)
  • 查看用户违约次数
  • 解除黑名单(删除或设置结束时间)

# 反馈与公告管理

反馈管理:

  • 查看所有用户反馈
  • 查看反馈详情(用户、类型、标题、内容、图片)
  • 处理反馈(回复内容、更新状态:待处理/处理中/已处理/已关闭)
  • 记录回复时间
  • 关闭已处理反馈

公告管理:

  • 发布系统公告(标题、内容)
  • 编辑公告内容
  • 删除过期公告
  • 查看公告发布时间

# 普通用户

# 自习室浏览

自习室列表:

  • 浏览所有开放的自习室
  • 查看自习室信息(名称、位置、楼层、开放时间、总座位数、可用座位数、图片、简介)
  • 查看自习室状态(开放/关闭/维护中)
  • 按楼层筛选自习室
  • 搜索自习室

# 座位预约

选择自习室:

  • 进入自习室详情页
  • 查看座位布局(10行6列网格)
  • 查看座位状态(可用/已预约/使用中/维护中/禁用)
  • 查看座位类型(普通座位/靠窗座位/靠墙座位)

座位选择:

  • 点击可用座位进行选择
  • 选择预约日期(不能早于当天)
  • 选择开始时间和结束时间
  • 系统自动计算预约时长(小时)
  • 确认预约信息
  • 提交预约(状态:待签到)

我的预约:

  • 查看自己的所有预约记录
  • 按状态筛选(待签到/使用中/已完成/已取消/已违约)
  • 查看预约详情(自习室、座位、预约时间、时长、状态)
  • 取消预约(仅待签到状态可取消,需填写取消原因)
  • 签到操作(预约开始时间前签到,状态变为使用中)
  • 签退操作(离开时签退,系统记录实际时长,状态变为已完成)

# 个人中心

个人信息:

  • 查看个人信息(用户名、昵称、头像、手机号、邮箱)
  • 修改个人信息
  • 修改密码

使用统计:

  • 查看累计预约次数
  • 查看违约次数
  • 查看黑名单状态(是否在黑名单中、黑名单结束时间)

# 反馈与公告

反馈提交:

  • 选择反馈类型(投诉/建议/咨询)
  • 填写反馈标题和内容
  • 上传相关图片(多张)
  • 提交反馈(状态:待处理)
  • 查看反馈处理状态和回复

反馈列表:

  • 查看自己提交的所有反馈
  • 查看反馈状态(待处理/处理中/已处理/已关闭)
  • 查看管理员回复和回复时间

公告查看:

  • 查看系统公告列表
  • 查看公告详情(标题、内容、发布时间)

帮助指南:

  • 查看系统使用指南
  • 查看预约流程说明
  • 查看违约规则说明

# 功能权限对照表

功能模块 管理员 普通用户
首页 - ✓
管理员管理 ✓ -
用户管理 ✓ -
自习室管理 ✓ -
自习室浏览 - ✓
座位管理 ✓ -
座位选择预约 - ✓
预约管理(全部) ✓ -
我的预约 - ✓
签到管理(全部) ✓ -
签到签退(个人) - ✓
黑名单管理 ✓ -
反馈管理(全部) ✓ -
反馈提交(个人) - ✓
公告管理 ✓ -
公告查看 - ✓
帮助指南 - ✓

# 状态说明

# 预约状态

  • 待签到:预约成功后的初始状态,等待用户签到
  • 使用中:用户已签到,正在使用座位
  • 已完成:用户已签退,预约正常结束
  • 已取消:用户主动取消预约
  • 已违约:预约后未按时签到,系统标记为违约

# 签到状态

  • 未签到:创建签到记录后的初始状态
  • 已签到:用户已签到,开始使用座位
  • 已签退:用户已签退,结束使用

# 自习室状态

  • 开放:自习室正常开放,可以预约
  • 关闭:自习室暂时关闭,不可预约
  • 维护中:自习室正在维护,不可预约

# 座位状态

  • 可用:座位正常,可以预约
  • 维护中:座位正在维护,不可预约
  • 禁用:座位已禁用,不可预约

# 反馈状态

  • 待处理:反馈提交后的初始状态,等待管理员处理
  • 处理中:管理员正在处理反馈
  • 已处理:管理员已处理反馈,已回复用户
  • 已关闭:反馈已关闭,不再处理

# 默认账号

# 管理员

用户名: admin
密码: 123456
1
2

# 测试用户

用户名: user
密码: 123456
昵称: 普通用户
1
2
3

# 核心业务流程

# 用户注册流程

1. 填写注册信息(用户名、密码、昵称、手机号、邮箱)
2. 系统创建用户账号(状态:启用)
3. 跳转到登录页
1
2
3

# 座位预约流程

1. 进入"自习室列表"页面
2. 选择自习室,查看座位布局
3. 点击可用座位
4. 选择预约日期(不能早于当天)
5. 选择开始时间和结束时间
6. 系统自动计算预约时长
7. 检查座位是否被预约(防止冲突)
8. 检查用户是否在黑名单中
9. 提交预约(状态:待签到)
10. 创建签到记录(状态:未签到)
11. 自习室可用座位数-1
1
2
3
4
5
6
7
8
9
10
11

# 签到签退流程

【签到】
1. 用户进入"我的预约"页面
2. 选择待签到的预约记录
3. 点击"签到"按钮
4. 系统检查是否在预约时间内
5. 更新签到记录(签到时间、状态:已签到)
6. 更新预约记录(状态:使用中)

【签退】
1. 用户点击"签退"按钮
2. 系统记录签退时间
3. 计算实际使用时长(签退时间-签到时间)
4. 更新签到记录(签退时间、实际时长、状态:已签退)
5. 更新预约记录(状态:已完成)
6. 自习室可用座位数+1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

# 违约处理流程

1. 系统定时检查预约记录
2. 发现预约开始时间已过,但未签到
3. 更新预约记录(状态:已违约)
4. 更新用户违约次数+1
5. 检查违约次数是否达到黑名单标准(如3次)
6. 达到标准:自动添加到黑名单(设置黑名单开始时间、结束时间、原因)
7. 黑名单期间,用户无法预约座位
8. 黑名单到期自动解除
1
2
3
4
5
6
7
8

# 取消预约流程

1. 用户进入"我的预约"页面
2. 选择待签到的预约记录
3. 点击"取消预约"按钮
4. 填写取消原因
5. 确认取消
6. 更新预约记录(状态:已取消,取消原因)
7. 自习室可用座位数+1
1
2
3
4
5
6
7

# 反馈处理流程

【用户提交反馈】
1. 进入"反馈"页面
2. 选择反馈类型(投诉/建议/咨询)
3. 填写反馈标题和内容
4. 上传相关图片(多张,用逗号分隔)
5. 提交反馈(状态:待处理)

【管理员处理反馈】
1. 管理员进入"反馈管理"页面
2. 查看待处理反馈列表
3. 点击查看反馈详情
4. 填写回复内容
5. 更新反馈状态(处理中/已处理)
6. 记录回复时间
7. 用户可在"反馈列表"中查看回复
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

# 技术说明

# 系统架构

  • 前端:Vue 3 + Element Plus + Vite
  • 后端:Spring Boot + MyBatis
  • 数据库:MySQL 5.7+
  • 认证:JWT Token

# 访问地址

  • 后端API:http://localhost:1000
  • 前端页面:http://localhost:5173(开发环境)

# 数据库

  • 数据库名:a_52_room_system
  • 字符集:utf8mb4
  • 总表数:9张表

# 核心表说明

  • admin:管理员表
  • user:普通用户表
  • study_room:自习室表(名称、位置、楼层、开放时间、总座位数、可用座位数、图片、简介、状态)
  • seat:座位表(所属自习室、座位编号、座位类型、行号、列号、状态)
  • reservation:预约表(用户、自习室、座位、预约日期、开始时间、结束时间、时长、状态、取消原因)
  • checkin:签到表(预约ID、用户、座位、签到时间、签退时间、实际时长、状态)
  • notice:公告表(标题、内容)
  • feedback:反馈表(用户、类型、标题、内容、图片、状态、回复、回复时间)
  • blacklist:黑名单表(用户、原因、违约次数、开始时间、结束时间)

# 系统特色

# 预约管理特色

  • 可视化座位布局:10行6列网格布局,座位状态实时显示,选座直观便捷。
  • 智能时间管理:预约时间段选择、时长自动计算、签到超时提醒。
  • 防止冲突:同一座位同一时间段只能被一人预约,避免资源冲突。
  • 灵活取消:签到前可取消预约,需填写取消原因。

# 签到签退特色

  • 签到机制:预约后需按时签到,否则视为违约。
  • 签退记录:离开时签退,系统记录实际使用时长。
  • 时长统计:对比预约时长和实际时长,分析座位使用情况。
  • 状态追踪:未签到→已签到→已签退,全流程记录。

# 违约与黑名单特色

  • 违约判定:预约后未按时签到自动标记为违约。
  • 违约次数统计:累计用户违约次数,达到标准自动加入黑名单。
  • 黑名单管理:设置黑名单期限,限制预约权限,规范使用秩序。
  • 自动解除:黑名单到期自动解除,用户可继续预约。

# 反馈处理特色

  • 多类型反馈:投诉、建议、咨询三种类型,满足不同需求。
  • 图片上传:支持上传多张图片,方便问题说明。
  • 状态追踪:待处理→处理中→已处理→已关闭,流程清晰。
  • 及时回复:管理员回复反馈,用户及时获知处理结果。

# 座位类型特色

  • 普通座位:常规座位,满足基本需求。
  • 靠窗座位:靠窗位置,采光良好,视野开阔。
  • 靠墙座位:靠墙位置,环境安静,适合长时间学习。

# 项目优势

# 1. 解决自习室管理痛点

  • 座位抢占问题:线上预约,公平公正,避免现场抢座。
  • 座位浪费问题:预约+签到机制,提高座位利用率。
  • 违约行为:黑名单管理,规范使用秩序。
  • 反馈渠道:用户反馈+管理员回复,及时解决问题。

# 2. 商业模式清晰

  • 提升管理效率:自动化预约、签到、违约处理,减少人工成本。
  • 数据分析:预约数据、签到数据、违约数据,支持决策优化。
  • 扩展性强:可扩展会员服务、付费预约、广告投放等商业化功能。

# 3. 技术实现完善

  • 前后端分离:开发效率高,维护方便。
  • 响应式设计:适配手机、平板、电脑多端。
  • 安全认证:JWT Token认证,保障账户安全。
  • 数据库设计规范:9张表,关系清晰,数据完整。

# 4. 用户体验优秀

  • 操作简单:界面清晰,预约流程顺畅。
  • 实时反馈:座位状态实时更新,预约成功即时提醒。
  • 可视化布局:座位网格化展示,选座直观便捷。
  • 数据透明:预约记录、违约次数、黑名单状态清晰可查。

Java导航网   |