分享

[开源]通用管理平台,前后端分离架构,开箱即用,紧随前沿技术

 风声之家 2022-05-27 发布于江苏

一飞开源 2022-05-27 00:00 发表于湖南

一、开源项目简介

基于Furion/.NET 6实现的通用管理平台。整合最新技术,模块插件式开发,前后端分离,开箱即用。集成SqlSugar、多租户、缓存、数据校验、鉴权、事件总线、动态API、通讯、远程请求、任务调度、gRPC等众多黑科技。代码简洁、易扩展,让开发更简单、更通用、更流行!

二、开源协议

使用Apache-2.0开源协议

三、界面展示

🍎 效果图

图片图片图片
图片图片图片
图片图片图片
图片图片图片
图片图片图片

四、功能概述

 概述

  • 基于.NET 6实现的通用管理平台。整合最新技术,模块插件式开发,前后端分离,开箱即用。

  • 后台基于Furion框架,vue2前端基于小诺框架。

  • 集成EF Core、多租户、缓存、数据校验、鉴权、事件总线、动态API、通讯、远程请求、任务调度、gRPC等众多黑科技。

  • 核心模块包括:用户、角色、职位、组织机构、菜单、字典、日志、多应用管理、文件管理、定时任务等功能。

  • 代码简洁、易扩展,让开发更简单、更通用、更流行!

‍ 模块/插件化开发

  • 按照 Furion 框架脚手架或者本框架脚手架初始化工程。

  • 创建自己业务的 Dll 插件库工程,引用 Furion.Extras.Admin.NET 包,编写自己的业务代码包括实体、服务等。

  • 在 XXX.Web.Entry 层里面的 appsettings.json 配置此插件 Dll 的路径。配置文档说明

  • 此时框架和自己业务实体可以同时做数据迁移,耦合度最低。也可以自行将数据库分系统库、业务库等。

  • 将自己业务前端代码包括view和api文件复制到前端工程相应目录即可。

仓库内 plugin 文件内为本框架模块/插件开发事例,供参考。

 🎭 插件市场

欢迎大家勇于参与开源,贡献自己的应用插件,你我都可以做到,.NET正在迅速崛起,我们都是历史的见证人💪

【核酸采集系统】

图片图片图片

🎁 前后端一体化

将后台提供的Swagger接口直接生成对应前端的API文件,前端再也不需要手撸一个个的对应后后的API定义了。后台接口更新后,只需要重新生成一遍覆盖即可。

图片图片

👑 多租户简介

框架目前采用基于共享数据库TenantId的方式实现,后期可无缝迁移转换到基于多库或者Schema模式。

  • 平台超管对租户进行增删改查操作,对各租户进行权限(菜单)的分配,租户管理员密码默认123456

  • 租户管理员根据平台分配的权限再对本租户内用户进一步权限划分

  • 针对新开发的业务功能,平台超管可以针对性分配给各租户(比如某租户购买后才有此功能菜单等)

 详细功能

  • 主控面板、控制台页面,可进行工作台,分析页,统计等功能的展示。

  • 用户管理、对企业用户和系统管理员用户的维护,可绑定用户职务,机构,角色,数据权限等。

  • 应用管理、通过应用来控制不同维度的菜单展示。

  • 机构管理、公司组织架构维护,支持多层级结构的树形结构。

  • 职位管理、用户职务管理,职务可作为用户的一个标签,职务目前没有和权限等其他功能挂钩。

  • 菜单管理、菜单目录,菜单,和按钮的维护是权限控制的基本单位。

  • 角色管理、角色绑定菜单后,可限制相关角色的人员登录系统的功能范围。角色也可以绑定数据授权范围。

  • 字典管理、系统内各种枚举类型的维护。

  • 访问日志、用户的登录和退出日志的查看和管理。

  • 操作日志、用户的操作业务的日志的查看和管理。

  • 服务监控、服务器的运行状态,CPU、内存、网络等信息数据的查看。

  • 在线用户、当前系统在线用户的查看。

  • 公告管理、系统的公告的管理。

  • 文件管理、文件的上传下载查看等操作,文件可使用本地存储,阿里云oss,腾讯cos接入,支持拓展。

  • 定时任务、定时任务的维护,通过cron表达式控制任务的执行频率。

  • 系统配置、系统运行的参数的维护,参数的配置与系统运行机制息息相关。

  • 邮件发送、发送邮件功能。

  • 短信发送、短信发送功能,可使用阿里云sms,腾讯云sms,支持拓展。

 功能模块

图片

🍎 框架特点

  • 全新面貌:基于 .NET5/6 平台,没有历史包袱

  • 极少依赖:框架只依赖两个第三方包

  • 极易入门:只需要一个 Inject() 即可完成配置

  • 极速开发:内置丰富的企业应用开发功能

  • 极其灵活:轻松面对多变复杂的需求

  • 极易维护:采用独特的架构思想,只为长久维护设计

  • 完整文档:提供完善的开发文档

  • 跨全平台:支持所有主流操作系统及 .NET 全部项目类型

🥐 框架依赖

Furion 为了追求极速入门,极致性能,尽可能的不使用或减少第三方依赖。目前 Furion 仅集成了以下两个依赖:

  • MiniProfiler:性能分析和监听必备

  • Swashbuckle:Swagger 接口文档

麻雀虽小五脏俱全。Furion 即使只集成了这两个依赖,但是主流的 依赖注入/控制反转AOP 面向切面编程,事件总线数据验证数据库操作 等等一个都不少。

🥗 环境要求

  • Visual Studio 2019 16.8 +

  • .NET 5 SDK +

  • .Net Standard 2.1 +

🥪 支持平台

  • 运行环境

    • Windows

    • Linux

    • MacOS/MacOS M1 CPU

    • Docker/K8S/K3S/Rancher

    • Xamarin/MAUI

  • 数据库

    • SqlServer

    • Sqlite

    • Azure Cosmos

    • MySql

    • MariaDB

    • PostgreSQL

    • InMemoryDatabase

    • Oracle

    • Firebird

    • 达梦数据库

    • MongoDB

  • 应用部署

    • Kestrel

    • Nginx

    • Jexus

    • IIS

    • Apache

    • PM2

    • Supervisor

    • 独立发布/单文件

    • 容器(Docker/K8S/K3S/Rancher)

🍖 关于性能

Furion 目前采用 Visual Studio 2019 16.8 自带性能测试和 JMeter 进行测试,由于篇幅有限,只贴部分测试图,测试结果如下:

图片

五、技术选型

 环境要求

  • Visual Studio 2019 16.8 +

  • .NET 5 SDK +

  • .Net Standard 2.1 +

 支持平台

  • 运行环境WindowsLinuxMacOS/MacOS M1 CPUDocker/K8S/K3S/RancherXamarin/MAUI

  • 数据库SqlServerSqliteAzure CosmosMySqlMariaDBPostgreSQLInMemoryDatabaseOracleFirebird达梦数据库MongoDB

  • 应用部署KestrelNginxJexusIISApachePM2Supervisor独立发布/单文件容器(Docker/K8S/K3S/Rancher)

 项目依赖

  •  Furion

  •  xiaonuo

  •  Vben-Admin

  •  k-form-design

  •  MiniExcel

  •  SqlSugar

  •  IdGenerator

  •  ua-parser

  •  Zack.EFCore.Batch

  •  OnceMi.AspNetCore.OSS

 分层说明

├─Admin.NET.Application             ->业务应用层,在此写您具体业务代码
├─Admin.NET.Core ->框架核心层,实体类
├─Admin.NET.Database.Migrations ->架构维护层,主要存放迁移中间文件
├─Admin.NET.EntityFramework.Core ->EF Core配置层,主要配置数据库及相关
├─Admin.NET.Web.Core ->Web核心层,主要是服务注册及鉴权
├─Admin.NET.Web.Entry ->Web入口层/启动层,可任意更换
├─Furion.Extras.Admin.NET ->封装的框架核心层

六、源码地址

访问一飞开源:https://code./

确定

  • 不看此公众号

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多