基于 RuoYi-Vue 前后端分离框架的图书管理系(课程设计版)
本项目是采用 SpringBoot + Vue3 + MySQL 技术栈,在若依框架基础上二次开发,覆盖 读者管理、图书管理、借还续、罚款、权限隔离 等完整图书馆业务流程,可直接作为毕业设计/课程设计模板或小型图书馆生产系统使用。
| 模块 | 核心功能 |
|---|---|
| 🔑 系统管理 | 用户/角色/菜单管理、RBAC 权限、密码加密、登录验证码 |
| 👤 读者管理 | 办证、挂失、补办、注销、批量导入、证号自动迁移 |
| 📖 图书管理 | 新书入库、信息维护、变卖/销毁、库存状态实时同步 |
| 📤 借阅管理 | 借书、还书、续借、超期/遗失罚款、操作员痕迹 |
| 👀 个人中心 | 当前借阅、历史记录、自助续借、超期提醒 |
| 🛡️ 数据权限 | 普通读者仅看本人记录;多级管理员分范围查看 |
| 📊 异常拦截 | 全局统一返回、事务回滚、接口级权限注解 |
| 层级 | 技术选型 |
|---|---|
| 后端 | SpringBoot 2.7 + MyBatis + Spring Security + Druid |
| 前端 | Vue3 + Element-Plus + Axios + RuoYi-Vue 代码生成器 |
| 数据库 | MySQL 8.0(兼容 5.7) |
| 工具 | JDK 1.8、Maven 3.6、Node 16+、Navicat |
git clone https://github.com/lvyums/ruoyi_BooksManagementSystem.git- 创建数据库
ry_library。 - 执行
sql/ry_library.sql建表并插入基础数据(菜单、角色、字典)。
cd ruoyi-admin
# 修改 resources/application-druid.yml 数据源
mvn clean package -DskipTests
java -jar target/ruoyi-admin.jar默认端口 8080,接口文档:http://localhost:8080/swagger-ui/
cd ruoyi-ui
npm install
npm run dev默认端口 80,浏览器访问 http://localhost
| 规则 | 说明 |
|---|---|
| 可借数量 | 按读者类别动态控制(本科 10 本、教师 20 本…) |
| 借期 | 本科 30 天、教师 60 天,可续借 1 次 |
| 超期罚款 | 0.05 元/天,遗失罚款 = 书价 × 3(优先遗失) |
| 证件有效期 | 学生按学制(4/3/3 年),教师永久 |
| 权限位运算 | rd_admin_roles 1-8 分别对应 4 类管理员,可叠加 |
- 代码生成
修改ruoyi-generator数据源 → 新建表 → 一键生成前后端代码 → 复制到对应模块即可。 - 新增角色
在 系统管理-角色管理 添加角色 → 分配菜单 → 读者信息里把rd_admin_roles置为对应位值。 - 前端自定义
页面路径ruoyi-ui/src/views/library/...,已封装通用CRUD.vue,参照现有页面修改。