VOOZH about

URL: https://www.nuget.org/packages/TJC.Cyclops.ApprovalFlow/

⇱ NuGet Gallery | TJC.Cyclops.ApprovalFlow 2026.6.11.2




👁 Image
TJC.Cyclops.ApprovalFlow 2026.6.11.2

dotnet add package TJC.Cyclops.ApprovalFlow --version 2026.6.11.2
 
 
NuGet\Install-Package TJC.Cyclops.ApprovalFlow -Version 2026.6.11.2
 
 
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="TJC.Cyclops.ApprovalFlow" Version="2026.6.11.2" />
 
 
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="TJC.Cyclops.ApprovalFlow" Version="2026.6.11.2" />
 
Directory.Packages.props
<PackageReference Include="TJC.Cyclops.ApprovalFlow" />
 
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add TJC.Cyclops.ApprovalFlow --version 2026.6.11.2
 
 
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: TJC.Cyclops.ApprovalFlow, 2026.6.11.2"
 
 
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package TJC.Cyclops.ApprovalFlow@2026.6.11.2
 
 
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=TJC.Cyclops.ApprovalFlow&version=2026.6.11.2
 
Install as a Cake Addin
#tool nuget:?package=TJC.Cyclops.ApprovalFlow&version=2026.6.11.2
 
Install as a Cake Tool
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

Cyclops.ApprovalFlow

🔄 灵活强大的审批流程引擎 🔄

Cyclops.ApprovalFlow 是企服版框架中的审批流开发套件,提供灵活、可扩展的工作流管理能力。该项目采用图论模型设计,通过节点和边的组合构建复杂的审批流程,支持多种节点类型和流转逻辑,为企业应用提供强大的业务流程管理支持。

🌟 核心特性

  • 图式流程定义:基于图论的流程模型,通过节点和边的组合构建复杂审批流程
  • 多样化节点类型:支持开始节点、服务节点、用户节点、网关节点、结束节点等多种节点类型
  • 会签聚合策略:支持自动通过、全票通过、任一人通过、过半通过、百分比通过等多种聚合模式
  • 灵活的流转逻辑:支持条件流转、并行分支、串行审批等复杂流程场景
  • 可视化流程设计:支持流程的可视化配置和管理
  • 流程监控:实时监控流程执行状态和进度
  • 自动推进机制:根据预设规则自动推进流程,提高审批效率
  • 可扩展的节点处理器:支持自定义节点处理逻辑
  • 完整的事件系统:提供流程生命周期事件,便于集成业务逻辑

🛠️ 技术栈

  • 开发框架:.NET 8.0
  • 项目类型:类库(Class Library)
  • 核心依赖
    • Cyclops.Common:提供通用工具类支持
    • Cyclops.DI:提供依赖注入能力

📦 安装

dotnet add package Cyclops.ApprovalFlow

🚀 快速开始

1. 从JSON文件加载流程定义

using Cyclops.ApprovalFlow;

// 创建流程构建器实例
var flowBuilder = new FlowBuilder();

// 从JSON文件加载流程定义
string jsonPath = "path/to/your/flowdefinition.json";
var executor = await flowBuilder.CreateExecutorFromJsonFileAsync(jsonPath);

2. 从JSON字符串加载流程定义

using Cyclops.ApprovalFlow;

// 创建流程构建器实例
var flowBuilder = new FlowBuilder();

// 流程定义JSON字符串
string flowJson = @"{
 ""key"": ""LeaveApprovalFlow"",
 ""name"": ""请假审批流程"",
 ""nodes"": [
 {
 ""id"": ""start"",
 ""type"": ""start-node"",
 ""text"": { ""value"": ""开始"" }
 },
 {
 ""id"": ""manager-approval"",
 ""type"": ""user-node"",
 ""text"": { ""value"": ""经理审批"" },
 ""properties"": {
 ""assignee"": ""manager""
 }
 },
 {
 ""id"": ""end"",
 ""type"": ""end-node"",
 ""text"": { ""value"": ""结束"" }
 }
 ],
 ""edges"": [
 {
 ""id"": ""edge1"",
 ""sourceNodeId"": ""start"",
 ""targetNodeId"": ""manager-approval"",
 ""text"": { ""value"": ""提交"" }
 },
 {
 ""id"": ""edge2"",
 ""sourceNodeId"": ""manager-approval"",
 ""targetNodeId"": ""end"",
 ""text"": { ""value"": ""通过"" }
 }
 ]
}";

// 从JSON字符串加载流程定义
var executor = await flowBuilder.CreateExecutorFromJsonStringAsync(flowJson, "LeaveApprovalFlow");

3. 初始化并启动流程引擎

using Cyclops.ApprovalFlow;

// 初始化流程引擎
var flowEngine = FlowEngine.Instance;

// 启动流程引擎
await flowEngine.StartAsync();

📋 节点类型说明

节点类型 类型标识 说明
开始节点 start-node 流程入口,标识流程启动
服务节点 service-node 自动执行的服务任务,按配置调用目标服务方法
服务网关 service-gateway-node 服务分支聚合,用于任务状态分支判断
用户节点 user-node 人工审批节点,支持单人审批和会签模式
审批网关 gateway-node 条件分支网关,用于条件流转判断
结束节点 end-node 流程出口,标识流程结束
HTTP节点 http-node 调用外部HTTP接口的节点

🔄 会签聚合策略

用户节点支持会签模式,提供以下聚合策略:

策略类型 标识 说明
自动通过 auto_approve 节点启动时自动通过,无需审批人操作
全票通过 all_approve 所有审批人都需同意
任一人通过 any_approve 任意一人同意即可
过半通过 majority_approve 超过半数同意即可
百分比通过 percentage_approve 按设定百分比同意即可

📁 项目结构

Cyclops.ApprovalFlow/
├── Core/ # 核心引擎与处理器
│ ├── ApprovalFlowEngine.cs # 审批流引擎
│ ├── AggregationEvaluator.cs # 会签聚合评估器
│ ├── RuleEngine.cs # 规则引擎
│ ├── FlowExecutor.cs # 流程执行器
│ ├── Handlers/ # 节点处理器
│ │ ├── BaseNodeHandler.cs # 处理器基类
│ │ ├── StartNodeHandler.cs # 开始节点处理器
│ │ ├── EndNodeHandler.cs # 结束节点处理器
│ │ ├── UserNodeHandler.cs # 用户节点处理器
│ │ ├── TaskNodeHandler.cs # 服务节点处理器
│ │ ├── GatewayNodeHandler.cs # 网关节点处理器
│ │ └── HttpNodeHandler.cs # HTTP节点处理器
│ ├── FlowEventBusPublisher.cs # 事件总线发布器
│ └── FlowMonitor.cs # 流程监控器
├── Consts/ # 常量定义
│ ├── ConstNodeType.cs # 节点类型常量
│ ├── ConstAggregationType.cs # 聚合策略常量
│ └── ConstTaskNodeStatus.cs # 服务节点状态常量
├── Models/ # 模型定义
│ ├── GraphNode.cs # 图节点
│ ├── GraphEdge.cs # 图边
│ └── FlowRuntimeState.cs # 流程运行时状态
├── Data/ # 示例数据
│ └── exampleData.json # 采购审批流程示例
└── README.md # 项目说明

🔧 配置说明

用户节点属性配置

{
 "className": "PurchaseService",
 "methodName": "OnDeptManagerApprove",
 "roleId": 1300000000101,
 "roleName": "部门负责人",
 "stage": "初审",
 "multiApproval": true,
 "aggregationType": "any_approve",
 "approvePercentage": 60,
 "assignees": [
 {
 "type": "user",
 "userId": 101,
 "userName": "张经理",
 "account": "zhangmanager"
 },
 {
 "type": "role",
 "roleId": 1300000000102,
 "roleName": "大区经理"
 }
 ],
 "events": {
 "onNodeEnter": [...],
 "onNodeLeave": [...],
 "onApprovalAction": [...]
 }
}

服务节点属性配置

{
 "className": "PurchaseService",
 "methodName": "CreatePurchaseRequest",
 "formModelName": "DbPurchaseRequest",
 "formModelField": "id",
 "formModelFieldValue": "${recordId}",
 "resultMapping": [
 { "source": "response.purchaseId", "target": "Variables.purchaseId" }
 ],
 "events": {
 "onNodeEnter": [...],
 "onNodeLeave": [...]
 }
}

📝 注意事项

  1. 节点类型标识:前端和后端的节点类型标识必须保持一致
  2. 会签配置:开启会签时必须指定聚合策略,百分比通过时需设置通过比例
  3. 服务节点:className 和 methodName 为必填项,用于反射调用目标服务
  4. 事件配置:支持 HTTP 回调,可配置同步/异步执行、重试次数等参数

📄 许可证

MIT License

Product Versions Compatible and additional computed target framework versions.
.NET net8.0 net8.0 is compatible.  net8.0-android net8.0-android was computed.  net8.0-browser net8.0-browser was computed.  net8.0-ios net8.0-ios was computed.  net8.0-maccatalyst net8.0-maccatalyst was computed.  net8.0-macos net8.0-macos was computed.  net8.0-tvos net8.0-tvos was computed.  net8.0-windows net8.0-windows was computed.  net9.0 net9.0 was computed.  net9.0-android net9.0-android was computed.  net9.0-browser net9.0-browser was computed.  net9.0-ios net9.0-ios was computed.  net9.0-maccatalyst net9.0-maccatalyst was computed.  net9.0-macos net9.0-macos was computed.  net9.0-tvos net9.0-tvos was computed.  net9.0-windows net9.0-windows was computed.  net10.0 net10.0 was computed.  net10.0-android net10.0-android was computed.  net10.0-browser net10.0-browser was computed.  net10.0-ios net10.0-ios was computed.  net10.0-maccatalyst net10.0-maccatalyst was computed.  net10.0-macos net10.0-macos was computed.  net10.0-tvos net10.0-tvos was computed.  net10.0-windows net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on TJC.Cyclops.ApprovalFlow:

Package Downloads
TJC.Cyclops.Web.Core

企服版框架中api核心功能项目,基于aspnetcore集成di、jwt、swagger、codefirtst、支持多种常见数据库、nacos配置中心、统一接口回复参数、全局异常捕获、全局接口日志、防重放攻击、图形验证码、快捷上下文对象、上传下载、数据导入导出等功能

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
2026.6.11.2 157 6/11/2026
2026.6.11.1 164 6/11/2026
2026.6.9.4 156 6/9/2026
2026.6.9.3 160 6/9/2026
2026.6.9.2 161 6/9/2026
2026.6.9.1 168 6/9/2026
2026.6.8.3 184 6/8/2026
2026.6.8.2 138 6/8/2026
2026.6.8.1 149 6/8/2026
2026.6.5.1 146 6/5/2026
2026.5.18.1 152 5/18/2026
2026.5.11.1 142 5/11/2026
2026.5.7.2 153 5/7/2026
2026.5.7.1 147 5/7/2026
2026.4.29.2 139 4/29/2026
2026.4.29.1 165 4/29/2026
2026.4.27.1 150 4/27/2026
2026.4.24.2 133 4/24/2026
2026.4.24.1 131 4/24/2026
2026.4.14.2 141 4/14/2026
Loading failed

企服版框架中审批流开发套件