README.md 4.7 KB

基础框架

框架基于ruoyi-vue版本,做了部分优化改造,并命名为miaxis。

原ruoyi-vue提供了以下功能:

  1. 用户管理:用户是系统操作者,该功能主要完成系统用户配置。
  2. 部门管理:配置系统组织机构(公司、部门、小组),树结构展现支持数据权限。
  3. 岗位管理:配置系统用户所属担任职务。
  4. 菜单管理:配置系统菜单,操作权限,按钮权限标识等。
  5. 角色管理:角色菜单权限分配、设置角色按机构进行数据范围权限划分。
  6. 字典管理:对系统中经常使用的一些较为固定的数据进行维护。
  7. 参数管理:对系统动态配置常用参数。
  8. 通知公告:系统通知公告信息发布维护。
  9. 操作日志:系统正常操作日志记录和查询;系统异常信息日志记录和查询。
  10. 登录日志:系统登录日志记录查询包含登录异常。
  11. 在线用户:当前系统中活跃用户状态监控。
  12. 定时任务:在线(添加、修改、删除)任务调度包含执行结果日志。
  13. 代码生成:前后端代码的生成(java、html、xml、sql)支持CRUD下载 。
  14. 系统接口:根据业务代码自动生成相关的api接口文档。
  15. 服务监控:监视当前系统CPU、内存、磁盘、堆栈等相关信息。
  16. 在线构建器:拖动表单元素生成相应的HTML代码。
  17. 连接池监视:监视当前系统数据库连接池状态,可进行分析SQL找出系统性能瓶颈。

改造内容:

  • ORM框架 使用 Mybatis-Plus 简化CRUD
  • Bean简化 使用 Lombok 简化 get set toString 等等
  • 代码生成模板 改为适配 Mybatis-Plus 的代码,以及自带swagger标签
  • 集成swagger-bootstrap-ui 打开地址:http://localhost:8080/doc.html
  • 改造所有返回值AjaxResult为Response让Swagger的@ApiModel识别(因为swagger不支持返回的hashMap和Json形式
  • 项目修改为 maven多环境配置,打包时候自动配置
  • 新增登录方法(不含验证码) /login/noCode ,方便生成token用swagger登录Authorize授权测试
  • 新增非系统用户的登录方式,包含密码登录和手机验证码登录

    技术选型

  • 前端:Vue、Element UI

  • 后端:Spring Boot、Spring Security、Redis、Jwt、Swagger2 & Swagger-Bootstrap-UI、 Lombok、mybatis、mybatis-plus。

项目结构

com.miaxis 
├──ruoyi-admin              //web服务入口Controller管理模块(业务表生成的Controller层代码可以放在这里的project包下面)
│    │    └──project                //这里写你的项目业务代码Controller
│    │    └──system                 //系统自带Controller
│    │    └──启动类          //springboot项目启动类(默认启动地址http://localhost:8080)
│    ├──install.sh               //linux环境下部署运行的脚本,运行后会把项目注册成系统级服务(当kill掉会自动重启,保证服务高可用存活),
│    │                           //如果执行生成的start.sh和stop.sh在服务器上面存在两个“??”的符号。需要自己文件手动重命名去掉。注册好后可以service junior-server start 启动项目!!!
│    ├──remove.sh                //linux环境下移除部署运行的脚本,会删掉注册好的系统级服务,即service junior-server start ,service junior-server stop...(status,restart)等命令失效
│    ├──start.bat                //windows 下的项目部署启动脚本
├──ruoyi-common             //通用模块(通用工具类等)
├──ruoyi-framework          //框架核心模块(包含redis,druid,Log等)
├──ruoyi-generator          //代码生成器模块
├──ruoyi-quartz             //定时任务模块
├──ruoyi-system             //系统模块(javaBean,mapper,service等逻辑的模块,业务表生成的代码(除了controller)都可以放在这里的project包下面)
│         └──project                //这里写你的项目业务相关代码(除了Controller之外)
│         └──system                 //系统自带功能
├──ruoyi-ui                 //前端项目Vue工程(默认启动地址http://localhost:81)
├──doc                      //说明文档文件夹
├──sql                      //sql脚本文件夹 
│   └──create_db.sql                //生成数据库和用户
│   └──create_business.sql          //用于存放你们自己业务表的sql
│   └──quartz.sql                   //用于存放定时任务sql
│   └──ry_20201021.sql              //系统基本表自带的sql
├──pom.xml                  //项目整体依赖