Admin.Micro
Admin.Micro copied to clipboard
中台Admin微服务/分布式前后端分离的权限管理系统。支持多租户、数据权限、动态Api、任务调度、OSS文件上传、滑块拼图验证、国内外主流数据库自由切换和动态高级查询。基于.Net跨平台开发的WebApi。集成统一认证授权...
🌈 介绍
基于 .Net7.x + FreeSql 全家桶 + Yarp + Nacos + Grpc + CAP + Refit + SkyAPM 等技术,微服务/分布式的前后端分离后台权限管理系统。想你所想的开发理念,帮助大家提高开发效率。基于 FreeSql Orm 开发,支持国内外主流数据库、读写分离、分表分库、分布式事务 TCC/ SAGA 等功能。支持一键启动项目,自动生成数据库和同步数据。自带 swagger 接口文档方便接口查看和测试。
⛱️ 线上体验
- Admin.Micro 版本体验 https://admin.zhontai.net
💒 代码仓库
- Admin.Micro 版本 https://github.com/zhontai/Admin.Micro
🚀 功能介绍
- 用户管理:配置用户,查看部门用户列表,支持禁用/启用、重置密码、设置主管、用户可配置多角色、多部门和上级主管。
- 角色管理:配置角色,支持角色分组、设置角色菜单和数据权限、批量添加和移除角色员工。
- 部门管理:配置部门,支持树形列表展示。
- 权限管理:配置分组、菜单、操作、权限点、权限标识,支持树形列表展示。
- 租户套餐:配置租户套餐,支持新增/移除套餐企业。
- 租户管理:配置租户,新增租户时初始化部门、角色和管理员数据,支持租户配置套餐、禁用/启用功能。
- 字典管理:配置字典,查看字典类型和字典数据列表,支持字典类型和字典数据维护。
- 接口管理:配置接口,支持接口同步功能,用于新增权限点选择接口,支持树形列表展示。
- 视图管理:配置视图,支持视图维护功能,用于新增菜单选择视图,支持树形列表展示。
- 文件管理:支持文件列表查询、文件上传/下载、查看大图、复制文件地址、删除文件功能。
- 登录日志:登录日志列表查询,记录用户登录成功和失败日志。
- 操作日志:操作日志列表查询,记录用户操作正常和异常日志。
⚡ 使用说明
使用 .Net 最新版本 .Net 版本 > 7.0+
使用项目源码新建项目
# 克隆项目
git clone https://github.com/zhontai/Admin.Micro/git
# 进入项目
cd Admin.Micro
# 打开项目
打开 ZhonTai.sln 解决方案
# 运行项目
设置 ZhonTai.Module.Admin.WebHost 为启动项目 Ctrl + F5 直接编译运行项目
或 在 ZhonTai.Module.Admin.WebHost 目录打开 cmd 输入 dotnet run 命令运行项目
# 打包发布
选择 ZhonTai.Module.Admin.WebHost 右键菜单点击发布
运行&调试微服务项目:
1、安装Tye
dotnet tool install -g Microsoft.Tye --version "0.11.0-alpha.22111.1"
或
dotnet tool install -g Microsoft.Tye --version "0.12.0-*" --add-source https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet6/nuget/v3/index.json
2、运行&调试
1、vs安装拓展EasyRun
2、打开VS的 视图-> 其他窗口 -> Easy Run,点击打开Easy Run窗口
3、点击Tye按钮运行
4、选择要调试的微服务点击Debugger按钮开启调试
或
1、在Admin.Micro目录下Cmd命令运行后输入tye run
2、vs安装拓展Tim's Tye Explorer
3、打开VS的 视图-> 其他窗口 -> Tye Explorer,点击打开Tye Explorer窗口
4、选择要调试的微服务点击Attach to selected 开启调试
注意:每次tye run 运行后点击Tye Explorer窗口刷新按钮附加最新进程,退出微服务Ctrl + C
tye地址:http://localhost:8000
企业网关地址:http://localhost:10010
权限接口文档地址:http://localhost:11010/doc/admin
应用接口文档地址:http://localhost:11020/doc/app
使用链路追踪微服务
windows安装:
1、安装SkyWalking APM
https://skywalking.apache.org/downloads
在Distribution处选择最新版本tar
https://www.apache.org/dyn/closer.cgi/skywalking/9.6.0/apache-skywalking-apm-9.6.0.tar.gz
安装java环境
https://www.oracle.com/java/technologies/downloads
需要jdk >= java11,选择jdk17
设置环境变量:系统属性->高级->环境变量-> 系统变量
新建 JAVA_HOME C:\Program Files\Java\jdk-17
编辑 Path %JAVA_HOME%\bin
2、运行SkyWalking APM
cmd F:\apache-skywalking-apm-9.6.0\apache-skywalking-apm-bin\bin
cmd startup.bat
3、访问SkyWalking APM
http://localhost:8080
Naco服务注册与发现&配置中心
windows安装:
1、下载https://download.fastgit.org/alibaba/nacos/releases/download/2.2.3/nacos-server-2.2.3.zip
2、 cd nacos/bin
3、启动命令(standalone代表着单机模式运行,非集群模式):
startup.cmd -m standalone
4、访问nacos
http://localhost:8848/nacos
命名空间(手动)
新建命名空间(注意appsettings.json的命名空间Namespace等于命名空间ID)
配置管理(手动)
进入配置列表界面,选择命名空间,点击创建配置,输入Data ID,选择JSON,输入配置内容,点击发布。
GRPC端口说明
nacos 里面做了一个约定,把 GRPC 的服务端口设置成 nacos 启动的端口加 1000。 也就是说,nacos 的端口是 8848 的话,那么 GRPC 服务端口就是 9848。
服务保护阈值说明
保护阈值填写为一个介于 0 到 1 之间的值,表示健康实例的占比。 例如,如果设置为 0.5,则意味着当健康实例占比低于 50% 时,服务会触发保护机制。
📚 开发文档
- 查看开发文档:https://zhontai.net
💯 学习交流加 QQ 群
中台 admin 开发群(2000 人群)。
- QQ 群号:1058693879
💕 特别感谢
❤️ 鸣谢列表
- .Net
- Yarp
- Nacos
- Grpc
- Refit
- SkyAPM
- DotNetCore.CAP
- FreeRedis
- FreeSql.Cloud
- Autofac
- Mapster
- NLog
- Yitter.IdGenerator
- Newtonsoft.Json
- Swashbuckle.AspNetCore
- FluentValidation.AspNetCore
- AspNetCore.Diagnostics.HealthChecks
- MiniProfiler
- IdentityServer4
- AspNetCoreRateLimit
- OnceMi.AspNetCore.OSS
- Lazy.SlideCaptcha.Core
- UAParser
💌 支持作者
如果觉得框架不错,或者已经在使用了,希望你可以去 Github 或者 Gitee 帮我点个 ⭐ Star,这将是对我极大的鼓励与支持。