4 Star 48 Fork 11

庞明军 / RuYiAdmin

加入 Gitee
与超过 600 万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README.md

RuYiAdmin

介绍

RuYiAdmin是一个前后端可分离的、基于.Net5的低代码RBAC Web后台管理系统模板。前端采用最受欢迎的开源框架vue element admin,后端采用.Net5 WebApi。

软件架构

输入图片说明

技术栈

输入图片说明

项目结构说明

输入图片说明 输入图片说明

软件优势

  1. RuYiAdmin前端使用vue框架与elementui搭建,框架使用vue element admin。
  2. RuYiAdmin对于前端通用API做了统一性的封装。
  3. RuYiAdmin对于前端Base Page界面与通用方法做了较为全面的封装。
  4. RuYiAdmin后端采用.Net5 WebApi,支持跨平台。
  5. RuYiAdmin后端既可用于构建独立服务,也可以用于支撑前端业务。
  6. RuYiAdmin集成了Redis,支持哨兵模式。
  7. RuYiAdmin集成了Apache ActiveMQ,支持Master Slave和Broker Cluster结合的MQ集群。
  8. RuYiAdmin支持实时消息、支持禁用用户实时踢出系统。
  9. RuYiAdmin使用Swagger作为WebApi的管理工具,同时为接口与Model做了精细的注释。
  10. RuYiAdmin使用JWT验证,防止WebApi滥调。
  11. RuYiAdmin使用AutoFac,实现依赖自动注入。
  12. RuYiAdmin支持log4net,同时支持控制台输出。
  13. RuYiAdmin支持Quartz作业调度。
  14. RuYiAdmin支持Api路由白名单。
  15. RuYiAdmin支持Request Headers验证配置化。
  16. RuYiAdmin封装了统一的基类模型。
  17. RuYiAdmin支持个性化导出Excel。
  18. RuYiAdmin支持Excel导入常规校验。
  19. RuYiAdmin支持相对路径或绝对路径、NAS存储。
  20. RuYiAdmin统一封装了UI、控制层、服务层与仓储层通用逻辑,后端业务层代码量极少,开启极简代码风格。 输入图片说明
  21. RuYiAdmin使用地表最强ORM SqlSugar,支持多种数据库。 输入图片说明
  22. RuYiAdmin做到了按钮、视图的可见性控制。
  23. RuYiAdmin做到了按钮级别的操作鉴权。
  24. RuYiAdmin做到了按钮与视图的精细授权。
  25. RuYiAdmin做到了用户行为的自动监控。
  26. RuYiAdmin支持多语。
  27. RuYiAdmin使用了AutoMapper,实现了POCO与DTO自动转化。
  28. RuYiAdmin支持配置信息热加载、热更新。
  29. RuYiAdmin封装、使用了灵活高效的SQL访问底层。
  30. RuYiAdmin实现了SQL与代码的分离。
  31. RuYiAdmin支持SQL热加载、热更新。
  32. RuYiAdmin支持一主两从的读写分离。
  33. RuYiAdmin封装了统一的数据返回格式。
  34. RuYiAdmin封装了强大的查询条件,支持前端的自定义查询。
  35. RuYiAdmin支持数据的逻辑与物理删除。
  36. RuYiAdmin支持线程池、多任务。
  37. RuYiAdmin支持任务调度。
  38. RuYiAdmin支持服务熔断与降级。
  39. RuYiAdmin支持熔断告警。
  40. RuYiAdmin支持Consul服务治理与健康检查。
  41. RuYiAdmin支持并发限制。
  42. RuYiAdmin是一个完整的RBAC系统管理模板。 输入图片说明
  43. RuYiAdmin构建了可视化的ER关系模型。
  44. RuYiAdmin提供一键执行的数据库初始化脚本。
  45. RuYiAdmin已经支持Linux Docker。

安装教程

  1. 安装Redis。
  2. 安装ActiveMQ。
  3. 安装Mysql数据库。作者使用的是mysql8,如果搭建基于mycat的读写分离集群,建议使用mysql5.7。
  4. 安装NodeJs。
  5. 克隆代码。
  6. 数据库初始化,结构与数据位于webapi/DataModel、DataStructrue下。如果使用低版本mysql,可能需要修改数据库初始化脚本。
  7. 修改Redis、ActiveMQ、Mysql数据库连接串。
  8. 前端管理目录位于webapi/wwwroot。推荐使用Visual Studio Code开源软件编辑,作者使用的是idea。前端的使用可以参看vue element admin官网。
  9. 后端采用Visual Studio 2019开发工具,请使用最新版本。

系统截图

  1. 系统登录(默认密码:123456) 输入图片说明
  2. 系统首页 输入图片说明
  3. 机构管理 输入图片说明
  4. 用户管理 输入图片说明
  5. 菜单管理 输入图片说明
  6. 角色管理 输入图片说明
  7. 码表管理 输入图片说明
  8. 日志管理 输入图片说明
  9. swagger 输入图片说明 输入图片说明
  10. 其他
  • 数据导入合法性校验

输入图片说明 输入图片说明

  • 极简代码风格示例
    /// <summary>
    /// 日志业务层接口
    /// </summary>
    public interface ILogService : IBaseService<SysLog>
    {
    }

部署架构

  1. 传统部署架构

输入图片说明

  1. 云平台冗余部署架构

输入图片说明

后话

  1. 我看过了很多.net的开源框架,无论是前端还是后端或者框架业务完备性,均没有一个令我满意的框架。在使用了Java版本的若依vue之后,我发现她很全面、很强大,但是也存在一些问题,那就是前端与后端均没有做统一的抽象与封装。 架构如果没有层次、没有封装,那就意味着代码量会很大。于是我有了前端、controller、service、repository做泛型抽象与封装的打算,以此来最大限度的减少业务层代码。 在查阅了很多优秀的开源项目之后,我初步完成了框架的设计思想,并在工作之余初步完成了她,同时将她开源。为了纪念她的诞生,我用我闺女的小名如意来为她命名,称之为如意Admin。
  2. 代码生成器将会在后续实现。工作流建议使用优秀开源项目。

点评 ( 2 )

你可以在登录后,发表评论

简介

基于.NET5的RBAC后台管理系统,前端使用vue element admin,后端使用.Net Core WebApi 展开 收起
Apache-2.0
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
C#
1
https://gitee.com/pang-mingjun/RuYiAdmin.git
git@gitee.com:pang-mingjun/RuYiAdmin.git
pang-mingjun
RuYiAdmin
RuYiAdmin
master

搜索帮助