流程引擎
基于 Vue Flow 的可视化流程编排:用声明式 ProcessFlow 把人工审批、事件起止、系统调用、状态机、决策规则与分支串成有向图。当前为设计期编排(保存流程定义);运行时执行引擎与待办 / 消息通道对接仍为后续能力。
| 项 | 说明 |
|---|---|
| 核心包 | @grow-admin-rock/process-engine |
| 源码目录 | DesignRock/rock-process-engine |
| 演示模块 | @grow-admin-cornerstone/apps-designer(侧栏菜单:设计器 → 流程引擎) |
| 主要组件 | GrowProcessDesigner |
| 当前范围 | 可视化编排 + 全量节点 / 连线配置 UI;尚无独立 Mock、无运行时引擎 |
与数据类工具的边界:
| 模块 | 定位 |
|---|---|
| 数据清洗 | 数据管道:源 → 清洗算子 → 输出(ETL) |
| 流程引擎 | 业务流转:人 / 事件 / 系统 / 状态 / 规则 → 流程定义 |
| 页面设计器 | 表单与页面;可被流程节点的 formKey 引用(规划对接) |
设计取向
画布为自上而下编排:从节点底部拖出,接到下一节点顶部。与数据清洗(左→右、禁环)不同:允许成环,用于驳回回退、状态跳转等。
界面分区
┌─────────────────────────────────────────────────────────────┐
│ 工具栏:流程名称 / 草稿|已发布 / 保存 │
├──────────┬──────────────────────────────────────────────────┤
│ 组件库 │ Vue Flow 画布 │
│ 240px │ 节点、连线、缩放;选中后浮层配置(节点或边) │
└──────────┴──────────────────────────────────────────────────┘| 区域 | 能力 |
|---|---|
| 工具栏 | 改名称;状态标签;保存(抛出 save) |
| 组件库 | 六类:人工 / 事件 / 系统 / 状态机 / 决策 / 分支 |
| 画布 | 拖放节点、下出上入连线、允许成环;Delete 删节点 / 边 |
| 配置浮层 | 选中节点或连线后浮出;节点专属表单 + 边的流转类型 / 条件等 |
核心能力
- 声明式流程定义:产物为
ProcessFlow(version: 1),含nodes+edges - 六类组件库:人工工作流、事件驱动、系统编排、状态机、决策规则、分支
- 人员指派模型:指定成员 / 发起人 / 自选 / 角色 / 直属主管 / 部门主管 / 连续多级主管等
- 多出口分支:条件分支(可编辑多路 + 固定默认出口)、并行分支(汇聚策略声明)
- 连线语义:
transitionKind支持正向 / 回退 / 跳转;可配标签、条件、优先级
当前边界
| 已具备 | 尚未具备 |
|---|---|
| 拖拽编排、连线校验、删除快捷键 | 运行时执行 / 待办引擎 |
| 十九种节点 + 连线配置 UI | 独立 Mock HTTP / 流程持久化 API |
getFlow / setFlow 受控 API | 发布状态切换 UI、与页面表单正式绑定 |
| 竖向布局、允许成环 | 预览跑实例、消息通道真实发送 |
推荐阅读
演示入口
登录后打开侧栏 设计器 → 流程引擎。本地需装配 @grow-admin-rock/process-engine 与 apps-designer。
Grow Admin