1
1
## 系统说明
2
2
3
- - 基于 .Net 8 、SqlSugar、Vue、RBAC、前后端分离的开箱则用的企业级中后台** 权限管理系统**
3
+ - 基于 .Net 8 、SqlSugar ORM 、Vue 2.X 、RBAC、前后端分离的开箱则用的企业级中后台** 权限管理系统**
4
4
- 无业务逻辑代码入侵,适用于任何 .NET/C# 应用程序。
5
5
- 预览体验: [ https://www.apevolo.com ] ( https://apevolo.com )
6
6
- 开发文档: [ http://doc.apevolo.com ] ( http://doc.apevolo.com )
7
7
- 账号密码: ` apevolo / 123456 `
8
8
9
- #### 项目源码
9
+ ## 项目源码
10
10
11
11
| | 后端源码 | 前端源码 |
12
12
| --- | --- | --- |
15
15
16
16
## 模块说明
17
17
18
- ``` lua
19
- Ape . Volo . Api -- 对外API
20
- Ape . Volo . Repository -- 仓储层
21
- Ape .Volo .IBusiness -- 业务接口
22
- Ape .Volo .Business -- 业务实现
23
- Ape .Volo .Common -- 通用工具
24
- Ape .Volo .Entity -- 实体
25
- Ape .Volo .EventBus -- 事件总线
26
- Ape .Volo .QuartzNetService -- 任务调度
27
- ```
18
+ | # | 模块功能 | 项目文件 | 说明 |
19
+ | --- | ------------------------------- | ------------------------------- | ------------------------------- |
20
+ | 1 | Web 控制器 | Ape.Volo.Api | 接口交互层 |
21
+ | 2 | 数据库仓储 | Ape.Volo.Repository | 常用的增删查改操作 |
22
+ | 3 | 业务接口 | Ape.Volo.IBusiness | 业务接口、DTO传输对象等 |
23
+ | 4 | 业务接口实现 | Ape.Volo.Business | 业务具体实现 |
24
+ | 5 | 系统通用 | Ape.Volo.Common | 通用的工具类;扩展方法、文件、图像操作等 |
25
+ | 6 | 实体 | Ape.Volo.Entity | 数据库实体映射类 |
26
+ | 7 | 事件总线 | Ape.Volo.EventBus | 事件总线 |
27
+ | 8 | 任务调度 | Ape.Volo.QuartzNetService | 系统定时任务实现 |
28
28
29
29
## 系统特性
30
- - 保持使用最新组件技术栈
31
- - ORM SqlSugar 支持多种主流数据库操作(MySql、Oracle、SqlServer、Sqlite等等)
32
- - 使用 async/await 异步编程
33
- - 使用 仓储+服务+接口 架构模式开发;
34
- - 审计功能,全局异常统一处理
35
- - AOP切面编程,已实现缓存、SQL事务
36
- - CodeFirst(优先模式),项目启动后自动建库建表并初始化基础数据
37
- - 数据字典,方便地对一些状态进行管理
38
- - 全局设置,方便处理一些功能开关
39
- - 全局配置,方便使用配置文件信息
40
- - 接口限流,避免恶意请求
41
- - 接口权限、数据权限
42
- - 自定义实体注解校验
43
- - 服务器性能监控
44
- - 雪花ID,友好的切换各种数据库以及分库分表
45
- - 数据库读写分离、分表
46
- - 语言本地化
47
- - 多租户(ID隔离、库隔离)
30
+ - 使用 Async Await 异步编程
31
+ - 使用 仓储+服务+接口 架构模式开发
32
+ - 使用 SqlSugar ORM 组件, CodeFirst 模式, 封装 BaseService 数据库基础操作类
33
+ - 使用Redis与DistributedCache两种缓存并扩展实现SqlSugar二级缓存处理数据
34
+ - 使用 Autofac 依赖注入 Ioc 容器, 实现批量自动注入所有服务
35
+ - 使用 Swagger UI 自动生成 WebAPI 说明文档
36
+ - 使用 Serilog 日志组件(输出到数据库、输出到控制台、输出到文件、输出到Elasticsearch)模式
37
+ - 使用 Quartz.Net 封装任务调度中心功能
38
+ - 封装异常过滤器 实现统一记录系统异常日志
39
+ - 封装审计过滤器 实现统一记录接口请求日志
40
+ - 封装缓存拦截器 实现对业务方法结果缓存处理
41
+ - 封装事务拦截器 实现对业务方法操作数据库事务处理
42
+ - 封装系统appsettings.json配置Configs类
43
+ - 重写ASP.NET Core 授权AuthorizationHandler组件 实现自定义授权规则
44
+ - 支持多种主流数据库(MySql、SqlServer、Sqlite、Oracle 、 postgresql、达梦、神通数据库、华为 GaussDB)等等;
45
+ - 支持RabbitMQ、RedisMQ消息队列
46
+ - 支持 CORS 跨域配置
47
+ - 支持数据库操作 读写分离、多库、分表
48
+ - 支持多租户 ID隔离 、 库隔离
49
+ - 支持接口限流 避免恶意请求攻击
50
+ - 支持数据权限 (全部、本人、本部门、本部门及以下、自定义)
51
+ - 支持数据字典、自定义设置处理
48
52
49
53
## 组件依赖
50
54
- JWT 自定义策略授权
51
- - Automapper 对象映射
52
- - AutoFac 依赖注入
53
- - Redis 缓存,消息队列
54
- - IpRateLimiting 限流
55
- - Swagger文档
56
- - MiniProfiler接口性能分析
55
+ - AutoMapper 对象映射
56
+ - Autofac 依赖注入
57
+ - StackexChange.Redis 缓存,消息队列
58
+ - DotNetCore.NPOI 处理Excel
59
+ - AspNetCoreRateLimit 限流
60
+ - Swagger UI 文档
61
+ - MiniProfiler.AspNetCore 接口性能分析
57
62
- Quartz.Net 任务调度
58
63
- Serilog 日志
59
- - CORS 跨域
60
- - 事件总线(EventBus)
61
- - RabbitMQ消息队列
64
+ - RabbitMQ 消息队列
65
+ - IP2Region.Net IP库
66
+ - SixLabors.ImageSharp 绘图
67
+ - Shyjus.BrowserDetector 客户端信息
62
68
63
69
## 快速开始
64
70
65
- ### 本地开发 运行
71
+ #### 环境
72
+ 推荐使用 ` JetBrains Rider ` 、` WebStorm ` <br />
73
+ 或者 ` Visual Studio ` 、` VSCode `
66
74
67
- 下载项目,编译无误。直接启动 ` Ape.Volo.Api ` ->系统便会自动创建数据库表并初始化相关基础数据,系统默认使用 ` Sqlite ` 数据库与 ` DistributedCache ` 缓存。
75
+ #### 运行
68
76
69
- ### 本地开发 环境
70
- 推荐使用 JetBrains ` Rider ` 、 ` WebStorm ` < br />
71
- 或者 ` Visual Studio ` 、 ` VSCode `
77
+ 1 . 下载项目,编译无误。然后启动 ` Ape.Volo.Api `
78
+ 2 . 系统便会自动创建数据库表并初始化相关基础数据
79
+ 3 . 系统默认使用 ` Sqlite ` 数据库与 ` DistributedCache ` 缓存
72
80
73
81
## 支持作者! ⭐️
74
82
如果你喜欢这个项目或者它能帮助你, 请帮我在 [ Github] ( https://github.com/xianhc/apevolo-api ) 或者 [ Gitee] ( https://gitee.com/xianhc/apevolo-api ) 点个 Star ✨这将是对我极大的鼓励与支持。
75
-
76
- Please Pull Request~
77
83
希望有共同爱好者能帮忙添加一些优秀的内容,为开源做一份贡献~ ^ ^ 快来PR吧~
78
84
79
85
## 反馈交流
@@ -91,4 +97,10 @@ Please Pull Request~
91
97
92
98
## 捐赠
93
99
94
- 如果你觉得这个项目对你有帮助,你可以请作者喝饮料 :tropical_drink : [ 点我] ( http://doc.apevolo.com/donate/ )
100
+ 如果你觉得这个项目对你有帮助,你可以请作者喝饮料 :tropical_drink : [ 点我] ( http://doc.apevolo.com/donate/ )
101
+
102
+ ## 致谢
103
+
104
+ <a href =" https://www.jetbrains.com/community/opensource/?utm_campaign=opensource&utm_content=approved&utm_medium=email&utm_source=newsletter&utm_term=jblogo#support " target =" _blank " >
105
+ <img src =" https://resources.jetbrains.com/storage/products/company/brand/logos/jb_beam.svg " alt =" JetBrains Logo " >
106
+ </a >
0 commit comments