工作流項目:介紹,應用場景,工作流體系設計,用戶體系設計


 工作流介紹

是對工作流程及其各操作步驟之間業務規則抽象、概括描述。工作流建模,即將工作流程中的工作如何前后組織在一起的邏輯和規則,在計算機中以恰當的模型表達並對其實施計算。工作流要解決的主要問題是:為實現某個業務目標,利用計算機在多個參與者之間按某種預定規則自動傳遞文檔、信息或者任務。

工作流引擎

所謂工作流引擎是指workflow作為應用系統的一部分,並為之提供對各應用系統有決定作用的根據角色、分工和條件的不同決定信息傳遞路由、內容等級等核心解決方案。工作流引擎包括流程的節點管理、流向管理、流程樣例管理等重要功能。

參考:

工作流引擎--百度百科

一個適合於.NET Core的超輕量級工作流引擎:Workflow-Core

.Net 三款工作流引擎比較:WWF、netBPM 和 ccflow

ABP+WorkflowCore+jsplumb實現工作流

elsa-core:

 JadeFramework:作者博客地址 、github地址

 個人理解

工作流引擎相當於一個中央處理器 / CPU,可以接受不同的流程、角色、用戶、資源等,且根據不同的情況去驅動不同的流程,一步一步去實現不同的流程節點。

工作流體系

流程與設計

流程由多個節點組成,每個節點設計到不同的操作用戶,每個節點處理后調到下一個節點

流程表單

流程表單就是流程自定義字段,能夠自定義各種各樣的流程,以達到通用流程效果。一般用富文本編輯器

例如請假流程

  • 請假天數
  • 請假人
  • 原因
  • 請假事由
  • 狀態
  • 假期類型
  • 職位信息

流程類型

流程分組,例如

  • 請假流程
  • 采購流程
  • 借款流程
  • 其他各種審批流程

流程實例(流程細節)--重點

例如請假流程,雖然全公司公用一個流程,但是每個員工的部門權限、請假類型、請假天數都不一行,然后審批流程的節點長度也不一樣,例如3天主管審批就行,10天需要經理審批

流程實例操作

就是操作對象,每一節點審批人是誰

流程實例流轉

記錄流程處理進度狀態。

當前節點處理完后,轉到下一節點,就是記錄已經處理的節點狀態,下一個節點該誰處理了。

用戶體系

用戶

角色

角色資源

一般是菜單和按鈕,

用戶部門

用戶分組

工作流實現技術

  • CAP.RabbitMQ:消息隊列
  • JadeFramework:一個.NET集成框架,作者定義為:一些常用的幫助類、擴展方法包
    • 集成了好多常用技術
  • SignalR: 實時通訊類庫 
  • mysql 5.7 :數據庫
  • Repository + Service :服務倉儲層
  • IRepository + IService :服務倉儲接口層
  • Dto:數據傳輸對象
  • sql腳本模板?
  • 前端
    • summernote: 富文本編輯器
    • GooFlow: 流程設計工具
    • jQuery
    • layui:前端 UI 框架,官網地址 

項目結構說明:

  • Areas(區域):cshtml 頁面
    • Sys(系統):
      • Dept 部門
      • Plugin 插件  
      • Resource 資源
      • Role 角色
      • System 系統
      • User 用戶
    • WF(工作流)
      • Category 分類
      • Form 表單
      • WorkFlow 工作流
      • WorkFlowInstance 工作流實例
  • wwwroot:是 asp.net core默認的靜態文件夾,可以直接引用
    • lib
    • src:與Areas(區域)的頁面對應的JavaScript腳本
    • ui:
    • uploadfile
  • Components(組件)
  • Controllers(控制器)
  • Dtos(數據傳輸對象):提供給Services(服務)和 Infrastructure(基礎設施)使用
  • Filters(過濾器)
    • 全局異常過濾器
  • Hubs(集線器)
  • Infrastructure(工具):
    • CodeStringBuild:代碼生成器構建類
    • HtmlExtensions:HTML擴展
    • TokenClient:客戶端令牌
    • VerificationCode:驗證碼
  • Models(數據庫模型):與數據庫表、字段對應
  • Repositories(倉儲):提供數據局給 Services(服務),內含dapper的sql語句
  • Services(服務):提供數據給 Controllers(控制器)
    • WorkFlowInstanceService(工作流實例服務【核心】)
  • Views(視圖/頁面)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM