NetCore多租户开源项目,快速后台开发企业框架,赚钱就靠她了

今天给大家推荐一个开源项目,基于.NetCore开发的、多租户的企业开发框架。


项目简介

这是一个基于.Net和Layui、基于多数据库的多租户,敏捷开发优选框架。系统自带权限功能、数据权限、系统日志、流程表单设计、内容管理、以及系统UI组件,系统基础功能非常完善,让开发者更注重业务的开发。
框架支持代码生成、表单设计,可以极大地提升开发效率。

采用都是目前主流的技术
,该项目非常适合用于Crm、OA、ERP、CMS、WMS、BI等管理型的系统。



技术架构
1、跨平台:这是基于.Net Core开发的系统,可以部署在Docker, Windows, Linux, Mac。

2、数据库支持:MySQL、Sqlserver。
3、技术栈:ASP.NET 6.0、WEB AP
I、QuartZ、SqlSugar、Reids、RabbitMq、Jaina、Swagger、AutoFac、LayUI。
4、开发环境:Visual Studio 2022。


项目结构
NetCore多租户开源项目,快速后台开发企业框架,赚钱就靠她了

系统功能

1、首页:快捷入口、数据统计、报表、系统公告

2、单位组织:系统公告、租户设置、机构管理、数据权限、角色管理、岗位管理、用户管理
3、系统管理:系统设置、系统菜单、代码生成、数据字典、区域管理、表单设计、流程设计、条码规则、打印模块、条码生成记录
4、系统安全:系统日志、操作日志、访问控制、定时任务、服务器监控
5、流程中心:我的流程、待处理流程、已处理流程
6、文件中心:文件管理

7、信息中心:通知管理
8、内容管理:新闻类别、新闻管理
9、订单管理:订单信息
10、组件管理:图表列表、图标选择、颜色选择、下拉选择、文件上传、富文本编辑器、省市县区选择器、卡片表格
11、大屏幕报表


代码生成器
1、选择表

NetCore多租户开源项目,快速后台开发企业框架,赚钱就靠她了
2、选择列表展示字段、搜索字段、排序字段、页面样式等配置

3、表单页面字段设置

4、代码生成
部分代码预览
实体

using System;using System.ComponentModel.DataAnnotations;using SqlSugar;
namespace WaterCloud.Domain.GeneralManage{/// <summary>/// 创 建:超级管理员/// 日 期:2022-11-28 20:01/// 描 述:Articlecategory实体类/// </summary> [SugarTable("cms_articlecategory")]public class ArticlecategoryEntity : IEntity<ArticlecategoryEntity>,ICreationAudited,IModificationAudited,IDeleteAudited {/// <summary>/// /// </summary> [SugarColumn(ColumnName="F_Id", ColumnDescription = "",ColumnDataType = "text(50)",IsPrimaryKey = true)]public string F_Id { get; set; }/// <summary>/// /// </summary> [SugarColumn(ColumnName="F_FullName", ColumnDescription = "",ColumnDataType = "text(100)", IsNullable = true)]public string F_FullName { get; set; }/// <summary>/// /// </summary> [SugarColumn(ColumnName="F_ParentId", ColumnDescription = "",ColumnDataType = "text(50)", IsNullable = true)]public string F_ParentId { get; set; }/// <summary>/// /// </summary> [SugarColumn(ColumnName="F_SortCode", ColumnDescription = "",ColumnDataType = "integer")]public int F_SortCode { get; set; }/// <summary>/// /// </summary> [SugarColumn(ColumnName="F_Description", ColumnDescription = "",ColumnDataType = "text", IsNullable = true)]public string F_Description { get; set; }/// <summary>/// /// </summary> [SugarColumn(ColumnName="F_LinkUrl", ColumnDescription = "",ColumnDataType = "text(255)", IsNullable = true)]public string F_LinkUrl { get; set; }/// <summary>/// /// </summary> [SugarColumn(ColumnName="F_ImgUrl", ColumnDescription = "",ColumnDataType = "text(255)", IsNullable = true)]public string F_ImgUrl { get; set; }/// <summary>/// /// </summary> [SugarColumn(ColumnName="F_SeoTitle", ColumnDescription = "",ColumnDataType = "text(255)", IsNullable = true)]public string F_SeoTitle { get; set; }/// <summary>/// /// </summary> [SugarColumn(ColumnName="F_SeoKeywords", ColumnDescription = "",ColumnDataType = "text(255)", IsNullable = true)]public string F_SeoKeywords { get; set; }/// <summary>/// /// </summary> [SugarColumn(ColumnName="F_SeoDescription", ColumnDescription = "",ColumnDataType = "text(255)", IsNullable = true)]public string F_SeoDescription { get; set; }/// <summary>/// /// </summary> [SugarColumn(ColumnName="F_IsHot", ColumnDescription = "",ColumnDataType = "integer", IsNullable = true)]public int? F_IsHot { get; set; }/// <summary>/// /// </summary> [SugarColumn(ColumnName="F_EnabledMark", ColumnDescription = "",ColumnDataType = "integer", IsNullable = true)]public int? F_EnabledMark { get; set; }/// <summary>/// /// </summary> [SugarColumn(ColumnName="F_DeleteMark", ColumnDescription = "",ColumnDataType = "integer", IsNullable = true)]public int? F_DeleteMark { get; set; }/// <summary>/// /// </summary> [SugarColumn(ColumnName="F_CreatorTime", ColumnDescription = "",ColumnDataType = "text", IsNullable = true)]public string F_CreatorTime { get; set; }/// <summary>/// /// </summary> [SugarColumn(ColumnName="F_CreatorUserId", ColumnDescription = "",ColumnDataType = "text(50)", IsNullable = true)]public string F_CreatorUserId { get; set; }/// <summary>/// /// </summary> [SugarColumn(ColumnName="F_LastModifyTime", ColumnDescription = "",ColumnDataType = "text", IsNullable = true)]public string F_LastModifyTime { get; set; }/// <summary>/// /// </summary> [SugarColumn(ColumnName="F_LastModifyUserId", ColumnDescription = "",ColumnDataType = "text(50)", IsNullable = true)]public string F_LastModifyUserId { get; set; }/// <summary>/// /// </summary> [SugarColumn(ColumnName="F_DeleteTime", ColumnDescription = "",ColumnDataType = "text", IsNullable = true)]public string F_DeleteTime { get; set; }/// <summary>/// /// </summary> [SugarColumn(ColumnName="F_DeleteUserId", ColumnDescription = "",ColumnDataType = "text(50)", IsNullable = true)]public string F_DeleteUserId { get; set; } }}

控制器

using System;using System.Linq;using System.Threading.Tasks;using System.Collections.Generic;using Microsoft.AspNetCore.Mvc;using WaterCloud.Code;using WaterCloud.Domain.GeneralManage;using WaterCloud.Service;using Microsoft.AspNetCore.Authorization;using WaterCloud.Service.GeneralManage;
namespace WaterCloud.Web.Areas.GeneralManage.Controllers{ /// <summary> /// 创 建:超级管理员 /// 日 期:2022-11-28 20:26 /// 描 述:Articlecategory控制器类 /// </summary> [Area("GeneralManage")] public class ArticlecategoryController : BaseController { public ArticlecategoryService _service {get;set;}



部分功能截图

系统公告

租户设置
机构管理
数据权限
系统菜单
区域管理

表单设计
流程设计
系统日志

操作日志

访问控制

定时任务
服务器监控
图表列表
通知管理
大屏幕报表



项目地址

https://gitee.com/qian_wei_hong/WaterCloud

- End -

分享一套.NetCore从入门到精通视频教程

领取方式:点击下方公众号卡片,关注我

回复“888”,免费领取

推荐阅读

  • 用C

  • C

  • 盘点5个C

  • 盘点6个.NetCore+Vue前后端分离的开源项目

  • 推荐一个数据可视化大屏幕报表开源系统

觉得好看 点个在看

NetCore多租户开源项目,快速后台开发企业框架,赚钱就靠她了》来自互联网,仅为收藏学习,如侵权请联系删除。本文URL:http://www.hashtobe.com/329.html