校园智慧后勤管理系统的设计与实现(SpringBoot+Vue+JWT,RBAC 动态菜单前后端分离源码)
发布时间:2026/9/5 21:49:46 作者:尧图编辑部 阅读量:1,286
)
校园智慧后勤管理系统的设计与实现SpringBootVueJWTRBAC 动态菜单前后端分离源码前言一所校园的后勤部门日常要跟多少套台账打交道宿舍楼门禁的通行记录是一张表仓库里的灭火器和维修工具是一张表学生手里的 IC 卡余额是一张表再加上公告通知、维修动态基本全靠 Excel 和纸质单据在几个科室之间流转。人一多、楼一多账目对不上、责任理不清的问题就来了。这个项目把这套后勤台账搬到了线上门禁通行、物料库存、IC 卡账户、学生住宿信息、消息公告全部入库管理再配一套完整的用户-角色-菜单权限体系不同科室登录后只看得到自己的业务模块。项目采用前后端分离架构后端 Spring Boot MyBatis-Plus 提供纯 REST 接口前端 Vue2 Element UI 渲染JWT 令牌维持登录态——是学习 RBAC 权限设计和前后端分离工程组织的一个规整样本。技术栈后端Spring Boot 2.5 MyBatis-Plus 3.5RESTful 风格接口业务报表通过 Apache POI 支持 Excel 导入导出认证JWT 无状态令牌。登录成功后签发 Token前端存入 localStorage此后每个请求在请求头携带token字段拦截器统一校验解析权限经典 RBAC 三件套——用户表、角色表、菜单表外加角色-菜单关联表。登录接口不仅返回用户信息还一并下发该角色可见的菜单树前端据此动态注册路由、渲染侧边栏没有权限的页面连路由都不存在前端Vue2 Vue Router Vuex Element UIwebpack 打包管理端与面向学生的前台门户共用一个工程通过路由分区数据库MySQL 5.7utf8mb4 字符集12 张表。整个工程构建后是一个可执行 jar前端构建产物直接内嵌其中——部署时只需要一个 MySQL 和一条java -jar命令浏览器打开就是一个完整的后勤管理系统。功能设计系统按业务域划分为三大块后勤管理门禁、物料、消息、IC 卡、学生、系统管理用户、角色、菜单、文件和面向普通用户的前台门户。整体功能结构如下图。后勤管理门禁管理登记人员通行授权与通行记录含生效时间、结束时间、门禁数量与状态支持按姓名检索物料管理后勤物资台账记录物资名称、库存数量、所属区域与备注支撑库存盘点IC 卡余额管理维护每张卡的持卡人、当前余额与累计消费宿舍水电、食堂消费都能挂在这套账上学生基本信息学生的宿舍号、班级、年龄、证件信息与佐证材料支持 Excel 批量导入导出消息管理与消息分类公告、维修动态、政策文件按类型发布前台门户同步展示。系统管理RBAC用户管理账号的增删改查与角色分配角色管理角色定义与菜单授权勾选即生效菜单管理菜单树维护菜单项与前端页面组件一一对应文件管理上传到服务器的资料文件统一归档管理前台门户普通用户登录后可在前台查看消息公告、维护个人资料与修改密码。登录后进入后台主页左侧菜单完全由当前账号的角色权限动态生成——这正是 RBAC 动态菜单方案最直观的验证方式。数据库设计数据库db_intelligent_logistics共 12 张表整体 E-R 关系如下。核心表结构表名说明关键字段t_entrance_guard门禁通行姓名、状态、证件号、门禁数量、生效/结束时间t_goods物料台账物资名称、库存数量、所属区域及编号、备注t_ic_cardIC 卡账户卡号、持卡人、余额、累计金额、备注t_student学生信息姓名、性别、年龄、证件号、宿舍号、班级、佐证文件t_news / t_news_type消息与分类标题、正文、作者、类型sys_user / sys_role / sys_menu / sys_role_menuRBAC 权限四件套账号密码、角色标识、菜单树、角色-菜单关联sys_dict / sys_file数据字典与上传文件图标字典、上传文件登记权限四件套的关系值得细看菜单表以pid组织成树page_path字段直接对应前端页面组件名角色-菜单关联表决定每个角色能看到哪些节点登录接口把菜单树一次性下发给前端前端setRoutes拿它动态注册路由。新增一个业务页面时只需要在菜单表里插一行记录所有拥有该菜单的角色自动可见——扩展成本非常低。系统演示门禁管理页提供按姓名搜索、批量删除与分页表格列出每条通行授权的状态、证件号与生效区间编辑和删除操作就近放置。物料管理页维护各区域的物资库存搜索、重置、新增、批量删除一应俱全。学生基本信息页集中管理住宿学生的档案配合 POI 导入导出可以和线下 Excel 无缝衔接。消息管理按分类发布公告与动态前台门户同步展示形成后台运营、前台消费的闭环。小结这个项目的价值在于把前后端分离 RBAC 动态权限这套在企业管理系统里最常用的组合跑通了一遍JWT 无状态认证、菜单树驱动的前端动态路由、按角色收敛的数据可见性每一环都有可以直接参考的实现。后勤业务的建模门禁、物料、IC 卡、学生贴近真实校园场景拿来作为毕业设计、课程设计或者后勤信息化的起步模板都合适。工程内含数据库初始化脚本与部署说明导入 MySQL、java -jar启动后即可登录体验。对 RBAC 设计、JWT 认证或 MyBatis-Plus 用法有疑问的话欢迎评论区交流。完整工程已整理上传含前后端源码、数据库脚本与部署说明校园智慧后勤管理系统源码SpringBootVue 前后端分离如果在实现类似系统时遇到问题欢迎评论区交流。