# 基于SpringBoot+layuimini的多模块权限管理系统 **Repository Path**: JackyChiang/YuChen ## Basic Information - **Project Name**: 基于SpringBoot+layuimini的多模块权限管理系统 - **Description**: 本项目是基于SpringBoot+layuimini框架搭建一套前后端一体化、多模块的权限管理系统,包含的权限管理、系统监管、系统配置等功能能够满足大部分后台管理需求场景,开发人员使用该项目后只需要实现业务部分,减少非业务代码的开发工作。 - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 2 - **Created**: 2024-03-12 - **Last Updated**: 2024-03-12 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## 一、项目简介 本项目是基于SpringBoot+layuimini框架搭建一套前后端一体化、多模块的权限管理系统,包含的权限管理、系统监管、系统配置等功能能够满足大部分后台管 理需求场景,开发人员使用该项目后只需要实现业务部分,减少非业务代码的开发工作。 ## 二、软件框架 (一)、前端主要技术: | 序号 | 框架 | 版本 | | ---- | ---- | ---- | | UI组件 | [layui](https://layui.dev/docs/2.8/) | 2.6.3 | | UI模板 | [layuimini](http://layuimini.99php.cn/docs/index.html) | 2.6.3 | | 模板引擎 | [thymeleaf](https://zhuanlan.zhihu.com/p/163391278) | 2.6.3 | (二)、后端主要技术: | 序号 | 框架 | 版本 | | ---- | ---- | ---- | | 核心框架 | [Spring Boot](https://baijiahao.baidu.com/s?id=1736118238879426685) | 2.6.3 | | 安全框架 | [Spring Security](https://www.bilibili.com/video/BV14T4y1A7oz) | 2.6.3 | | API框架 | [Swagger2](https://www.bilibili.com/video/BV1yi4y1F7KP/) | 2.6.3 | | 数据持久层 | [MyBatisPlus](https://www.baomidou.com/pages/24112f/) | 2.6.3 | | 动态数据源 | [Dynamic-Datasource](https://gitee.com/xiaoquanidea/dynamic-datasource) | 2.6.3 | | 文件存储 | [Minio](https://www.bilibili.com/video/BV1ff4y1K7QA/) | 2.6.3 | | 缓存框架 | [Redis](https://www.bilibili.com/video/BV1CJ411m7Gc/) | 2.6.3 | | 其他 | [slf4](https://www.cnblogs.com/Forever-wind/p/14879822.html) [lombok](https://blog.csdn.net/zzhongcy/article/details/122948536) [hutool](https://doc.hutool.cn/pages/index/) [p6spy](https://blog.csdn.net/kisscatforever/article/details/78784254) [oshi-core](https://www.cnblogs.com/mindzone/p/17020412.html)| 2.6.3 | ## 三、目录结构 ![目录结构](doc/images/0.jpg) ## 四、项目启动: 1. 项目运行环境:IDEA2021 + JDK1.8 + Maven3.8.3 + MySQL8.0; 2. 安装好数据库后,执行doc目录下SQL语句; 3. 修改yuchen-admin模块下配置文件中数据库、redis、swagger、minio的连接信息、链接地址、用户名、密码等信息; 完成以上步骤,即可正常启动项目 ## 五、使用说明 1. 项目启动类在yuchen-admin模块中,启动时会调用该模块下RedisInitialize和QuartzInitialize类加载缓存和定时任务; 2. 使用注解记录操作日志时,需要引入yuchen-system模块并在相应的Controller类的方法上添加注解@Log(menuName = "XXX",menuBtnEnum = MenuBtnEnum.XXX); 3. 本项目实现了Minio文件的存储和读取逻辑,但实际并未使用,可根据情况进行删减; 4. 本项目【系统模块/系统配置/网站设置】功能,logo和登陆背景在线更换后无需重启系统,直接更新的时target中的文件; 5. 本项目的前端页面放在yuchen-admin模块中,后端逻辑放在yuchen-develop和yuchen-system模块中; 6. 本项目尚未完善的地方如下(自己时间问题,没有进行开发): (1). 本项目没有对前端按钮进行鉴权,若需要实现鉴权可以自行搜索资料,即可简单改造就能实现【推荐资料:(https://www.bilibili.com/video/BV1fA411A77t)】; (2).【系统模块/系统监控/在线用户】功能中的提出用户后,刷新仍可以登陆; (3).【系统模块/权限管理/公告管理、附件管理】功能暂未实现; (4).【开发模块/开发助手/代码生成】功能前端页面未实现,但可通过后端yuchen-develop模块中的GeneratorCode方法生成对应的代码(生成代码的.ftl文件定义在该模块的resources中,若需要生成本项目的格式的代码需要调整下); (5).【流程模块】功能暂未实现; ## 六、内置功能 (一)、系统模块: #### 权限管理 1. 用户管理:主要对系统用户进行增删改及授权; 2. 角色管理:主要对系统角色进行增删改及授权; 3. 菜单管理:主要对系统角色进行增删改、启用和禁止及授权; 4. 数据字典:主要对系统字典类型、字典进行增删改、启用和禁止; #### 系统监管 1. 服务监控:获取服务器端的CPU、内存、虚拟机、磁盘和操作系统信息; 2. 缓存监控:对系统字典、参数、网站信息进行缓存管理; 3. 登陆日志:通过SpringSecurity的登陆成功、失败、验证码过滤器记录登陆信息; 4. 操作日志:通过自定义注解记录用户的操作信息; 5. 在线用户:对登陆系统的在线用户进行管理,如强制踢出等 6. 定时任务:对维护的定时任务进行增删查改操作; #### 系统配置 1. 网站配置:动态设置项目的名称、logo、登陆背景图、网站标题等; 2. 参数配置:对系统的参数进行增删查改操作,参数包括登陆默认密码、主题配色等; #### 公告管理&附件管理 1. 暂未实现 (二)、开发模块: #### 组件管理 该部分主要是layui第三方扩展框架, 图标列表、消息通知(notice)、消息通知(notify)、Cron表达式(cron)、数字步进(countUp)、二维码(qrcode)、条形码(barcode)、省市县区三级联动(layarea)、富文本编辑器(tinymce)、分步表单(step)、下拉表格(tableSelect)、树形表格(treeTable)、下拉多选(xmSelect) 1. 使用的框架:若图标列表、消息通知(notice)、消息通知(notify)、Cron表达式(cron)、树形表格(treeTable)、下拉多选(xmSelect); 2. 未用的框架:数字步进(countUp)、二维码(qrcode)、条形码(barcode)、省市县区三级联动(layarea)、富文本编辑器(tinymce)、分步表单(step)、下拉表格(tableSelect); #### 开发助手 1. 代码生成:暂未实现,但可通过后端yuchen-develop模块中的GeneratorCode方法生成对应的代码; 2. 接口文档:swagger2文档管理; 3. 开发日志:记录本项目的开发过程; (三)、流程管理: 1. 暂未实现 ## 七、系统截图 |![登陆](doc/images/1.jpg) |![首页](doc/images/2.jpg) | | ---- | ---- | |![主题](doc/images/3.jpg) |![用户管理](doc/images/4.jpg) | |![角色管理](doc/images/5.jpg) |![菜单管理](doc/images/6-1.jpg) | |![菜单管理](doc/images/6-2.jpg) |![字典管理](doc/images/7.jpg) | |![服务监控](doc/images/8.jpg) |![缓存监控](doc/images/9.jpg) | |![操作日期](doc/images/10.jpg) |![登陆日志](doc/images/11.jpg) | |![在线用户](doc/images/12.jpg) |![定时任务](doc/images/13-1.jpg) | |![定时任务](doc/images/13-2.jpg) |![网站配置](doc/images/14.jpg) | |![参数配置](doc/images/15.jpg) |![组件管理](doc/images/16.jpg) | |![接口文档](doc/images/17.jpg) |![开发日志](doc/images/18.jpg) |