使用 OpenAuth.Net 快速搭建 .NET 企業(yè)級權(quán)限工作流系統(tǒng)
前言
在企業(yè)應(yīng)用開發(fā)中,系統(tǒng)權(quán)限管理和工作流是比較常見的功能。雖說開發(fā)起來難度不大,但從零開始開發(fā)一個功能完備的權(quán)限管理和工作流系統(tǒng),往往需要投入大量的時間和精力。今天大姚帶領(lǐng)大家來使用 OpenAuth.Net 快速搭建一套 .NET 企業(yè)級權(quán)限工作流系統(tǒng),希望可以幫助到有需要的小伙伴。
OpenAuth.Net 介紹
OpenAuth.Net 是一個基于 .NET 開源免費(Apache-2.0 License)的權(quán)限管理及快速開發(fā)框架,.NET 開源最好用的權(quán)限工作流系統(tǒng)。它源于 Martin Fowler 的企業(yè)級應(yīng)用開發(fā)思想,并結(jié)合了最新的技術(shù)組合,如 SqlSugar、EF、Quartz、AutoFac、WebAPI、Swagger、Mock、NUnit、Vue2/3、Element-ui/plus、IdentityServer 等。該項目架構(gòu)易于擴展,文檔齊全且免費,特別適合中小企業(yè)使用。
- 項目官網(wǎng)地址:http://www.openauth.net.cn
 - 詳細使用文檔:http://doc.openauth.net.cn
 - 項目開源地址:https://gitee.com/dotnetchina/OpenAuth.Net
 
圖片
項目架構(gòu)圖
圖片
項目特點
- 多租戶支持: 支持多租戶,輕松管理多個客戶的數(shù)據(jù)。
 - 規(guī)范的代碼風格: 代碼規(guī)范易讀,注釋清晰,方便維護。采用主流的技術(shù),不做任何多余的封裝。
 - 簡潔易用的代碼生成: 內(nèi)置極易上手的代碼生成器,支持單表、父子表等場景的代碼生成,大大提升編碼效率。
 - 動態(tài)表單設(shè)計: 支持拖拽組件,快速構(gòu)建表單,無需編寫代碼,即可實現(xiàn)表單設(shè)計。
 - 可視化流程設(shè)計: 通過可視化流程設(shè)計器,快速構(gòu)建流程,無需編寫代碼,即可實現(xiàn)流程設(shè)計。
 - 基于Quartz的定時任務(wù): 無需開發(fā)人員參與即可配置定時任務(wù)??呻S時啟/停,可視化配置 Cron表達式功能。
 - 支持多種數(shù)據(jù)庫類型: 項目同時支持 EF、SqlSugar 兩款最流行的 ORM 框架,支持 SQL Server、MySQL、Oracle、PostgreSQL 等多種數(shù)據(jù)庫。
 - 等等等......
 
源代碼下載
git clone https://gitee.com/dotnetchina/OpenAuth.Net
圖片
??OpenAuth.Net
 ┣ ??.cursor              //cursor rules、MCP配置
 ┣ ??newdocs              //文檔
 ┣ ??Infrastructure       //基礎(chǔ)工具類
 ┣ ??OpenAuth.Repository  //數(shù)據(jù)庫訪問相關(guān)代碼      
 ┣ ??OpenAuth.App         //應(yīng)用邏輯代碼
 ┣ ??OpenAuth.Identity    //IdentityServer4服務(wù)器,提供OAuth服務(wù)
 ┣ ??OpenAuth.WebApi      //WebApi接口站點
 ┣ ??Vue2                 //開源Vue2前端項目
 ┣ ??數(shù)據(jù)庫腳本           //數(shù)據(jù)庫腳本
 ┣ ??.gitattributes
 ┣ ??.gitignore
 ┣ ??LICENSE
 ┣ ??.cursorignore       //cursor codebase index忽略文件
 ┣ ??Dockerfile          //docker文件
 ┣ ??OpenAuth.Net.sln    //解決方案
 ┗ ??README.md后端源代碼
圖片
前端源代碼
圖片
數(shù)據(jù)庫腳本
圖片
前后端項目調(diào)用關(guān)系
圖片
后端項目環(huán)境安裝
OpenAuth.Net 當前的目標框架是:.NET 9,所以在項目運行之前我們需要檢查一下當前電腦是否安裝了 .NET 9 SDK。
- .NET 9 SDK安裝:https://dotnet.microsoft.com/en-us/download/dotnet/9.0
 
dotnet --list-sdks
圖片
初始化數(shù)據(jù)庫腳本
這里我們采用 MySQL 數(shù)據(jù)庫作為系統(tǒng)的數(shù)據(jù)存儲數(shù)據(jù)庫,首先我們需要初始化系統(tǒng)的 MySQL 腳本。
新建數(shù)據(jù)庫
新建一個名為:openauthdb 的數(shù)據(jù)庫:
圖片
初始化數(shù)據(jù)庫數(shù)據(jù)
圖片
圖片
后端 WebApi 項目運行
后端項目數(shù)據(jù)庫設(shè)置
圖片
運行后端 OpenAuth.WebApi
設(shè)置OpenAuth.WebApi為啟動項目運行:
圖片
圖片

前端項目環(huán)境安裝
Vue 的開發(fā)依賴于 Node.js 環(huán)境,因此我們需要安裝 Node.js(建議安裝最新版本的 Node.js)。
- Node.js 下載地址:https://nodejs.cn/download/current
 
圖片
環(huán)境檢查:
node --version
圖片
前端項目啟動
在 Vs Code 中打開項目
在 Vs Code 打開 OpenAuth.Net\Vue2 前端項目文件夾,如下圖:
圖片
前端項目結(jié)構(gòu):
圖片
安裝項目所有依賴
使用以下命令安裝項目所有依賴(第一次執(zhí)行的時間有點長,需要慢慢等待):
npm install
圖片

前端項目運行
使用下面命令運行前端項目:
npm run dev
圖片
項目運行效果展示
運行 OpenAuth.Net 項目我們可以發(fā)現(xiàn)其實它已經(jīng)涵蓋了大多數(shù)通用的權(quán)限管理和工作流系統(tǒng)的功能模塊,假如你想要了解更多的項目實用功能和特性歡迎前往官網(wǎng)地址查看??,別忘了給項目一個Star支持??。
- 項目官網(wǎng)地址:http://www.openauth.net.cn
 - 項目開源地址:https://gitee.com/dotnetchina/OpenAuth.Net
 
App running at:
  - Local:   http://localhost:1803/
  - Network: http://192.168.1.5:1803/
圖片
圖片































 
 
 


 
 
 
 