ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

工作流引擎技术白皮书 2026 版:架构、核心能力与选型解析低代码工作流引擎表单

工作流引擎技术白皮书 2026 版:架构、核心能力与选型解析低代码工作流引擎表单 驰骋 BPM 工作流引擎 — 技术宣传文档文档版本2026-06依据代码CCFlow/Components/BP.WF后端引擎、Vue3/src/WF前端工作流模块说明本文基于源码静态分析撰写力求技术准确、评价中肯供技术选型与方案论证参考。一、产品定位驰骋 BPMCCFlow / CCBPM是一套面向企业级审批与流程自动化的工作流引擎核心能力覆盖流程设计、表单绑定、组织权限、运行期流转与运维监控。与仅提供「画流程图 简单审批」的轻量产品不同驰骋引擎在分合流、父子流程、接收人规则、表单方案等维度做了深度建模适合复杂政企、集团型组织的流程场景。从代码规模看后端BP.WF模块约600个 C# 源文件前端Vue3/src/WF约1200个 Vue/TS 文件——这不是薄封装层而是经过长期业务沉淀的完整 BPM 产品栈。二、技术架构概览2.1 整体分层2.2 后端技术栈维度实现运行时.NET 8.0BP.WF.csprojWeb 集成ASP.NET CoreMicrosoft.AspNetCore.App数据访问自研BP.DA层参数化 SQL实体模型BP.En30实体框架Entity / Attr / Map序列化Newtonsoft.Json调度Quartz超时、自动发起等2.3 数据库支持引擎在Glo.cs等核心类中对多种数据库做了方言适配开箱支持SQL Server、MySQL、PostgreSQLOracle、达梦DM、人大金仓KingBase R3/R6南大通用 GBase、优炫 UX、瀚高 HGDB 等这对国产化替代、混合云部署场景是实际优势而非仅文档宣称。2.4 部署运行模式代码中通过CCBPMRunModel区分Single单组织单体部署GroupInc集团多组织SAAS多租户 SaaSOrgNo隔离贯穿待办、节点、权限查询同一套引擎代码可支撑从私有化到 SaaS 的多种商业模式技术团队无需维护多套分支。三、流程引擎核心能力3.1 运行模型RunModel节点运行模式在EnumLib.RunModel中明确定义是引擎路由分发的核心枚举值枚举含义0Ordinary普通线形节点1HL合流节点2FL分流节点3FHL分合流节点4SubThreadSameWorkID同表单子线程5SubThreadUnSameWorkID异表单子线程WorkNode.cs中按运行模式拆分发送逻辑例如NodeSend_11— 普通节点到普通节点NodeSend_24_SameSheet— 同表单分流下发NodeSend_24_UnSameSheet— 异表单多路径分流NodeSend_53_SameSheet_To_HeLiu/ 异表单合流 — 子线程汇总后激活干流程这种按模式分派、而非单一状态机硬编码的设计使复杂拓扑并行会签、多表单分流、合流通过率在引擎层有清晰边界便于定位问题与二次扩展。3.2 四大流程形态功能规模根据项目内功能点统计doc/CCFlow主要流程功能统计汇总报告.md四大模块合计769个功能点模块功能点技术要点线性流程324顺序审批基座发起模式、接收人、按钮权限、方向条件、超时回滚异表单分合流184多路径分流、各节点独立ND{NodeID}物理表、ToNodes多选父子流程136FrmSubFlowWF_NodeSubFlow手动/自动/延续/前置导航四种启动同表单分合流125FID关联干流程与子线程共用Flow.PTable线性流程是其他模块的共用基座同表单与异表单分合流在实例模型上互斥同一分流点不可混发 RunModel 4 与 5父子流程则是跨流程嵌套与子线程并行模型不同——边界在代码与文档中均有明确约束避免误用。3.3 流程实例状态WFStateWFState枚举覆盖完整生命周期Blank、Draft、Runing、CompleteEnd、Hungup、ReturnSta、Shift、Delete、Askfor、Fix等12种状态。运行期不仅支持「进行中/已完成」还支持挂起、加签、冻结、非正常完成等运维场景适合长周期、多干预的企业流程。3.4 节点类型NodeType除普通用户节点外引擎原生支持RouteNode— 路由节点条件路由、自动跳转CCNode— 抄送节点SubFlowNode— 子流程节点前端FlowDesignerV2通过userNodes、routeNodes、ccNodes、subFlowNodes四类图元与之对应设计态与运行态模型一致。四、接收人规则找人引擎4.1 规则规模DeliveryWay枚举定义了50种接收人计算方式FindWorker.cs约 3200 行集中实现。前后端常量对齐DeliveryWay.ts↔EnumLib.cs配置在设计器保存后由运行期统一解析。代表性规则包括类别示例规则组织维度按部门、按角色、部门与角色交集、分管领导表单驱动主表人员字段、从表明细行、部门编号字段、权限组路由类部门路由ByFromDeptToEmp、字段路由ByFromAttrToEmp主管链连续多级主管ByMLeader0/1/2子线程专用按明细表拆分子线程、SQL 确定子线程接收人与数据源外部集成WebAPIByAPIUrl、数据源ByGenerDBSrc、字典表BySFTable预置处理人发送前固定或自由选择PreplaceWokerFix/Free4.2 技术价值国内 BPM 项目的难点往往不在「画流程图」而在**「这一步该找谁」**。驰骋将找人逻辑抽象为可配置、可扩展的规则引擎并针对子线程、父子流程、合流节点提供专用规则——这是相对开源/轻量工作流产品最显著的差异化能力之一。中肯说明规则种类多意味着配置项丰富实施阶段需要熟悉各DeliveryWay的适用边界建议配合测试容器与轨迹工具验证而非仅靠设计器直觉配置。五、父子流程与子线程5.1 父子流程组件层FrmSubFlow表单内子流程组件绑定层WF_NodeSubFlow节点与子流程关系启动类型手动、自动触发、延续、前置导航联动策略AllSubFlowOverRole全部完成后送父流程下一步 / 结束父流程、SubFlowRunModel按子流程结束或指定节点驱动父流程数据反填BackCopyRole字段自动匹配、格式匹配、混合模式典型场景主项目流程 投标/采购子审批、按明细行批量发起子流程、子流程会签式全部完成后推进父流程。5.2 同表单 vs 异表单子线程对比项同表单RunModel4异表单RunModel5数据表共用Flow.PTableFID关联各节点独立ND{NodeID}分流路径单条同表单路径可多选异表单子线程并行选人 UI单选ToNodes.vue多选核心 APINodeSend_24_SameSheetNodeSend_24_UnSameSheet异表单适合财务/法务/技术等多表单并行填报同表单适合多部门会签同一份主表数据。引擎在物理数据模型层面做了区分而非仅用 UI 区分。六、表单与流程一体化6.1 表单方案节点可绑定傻瓜表单FoolForm、嵌入式表单、独立表单等多种NodeFormTypeCCFlowAPI.GenerWorkNode统一组装表单元数据Sys_MapData、Sys_MapAttr、附件、版本号FrmVer并在加载前后触发ExecEvent表单事件。6.2 审核组件运行期WorkCheck.vue支持多种展示模式normalMode、trackMode、trackTimeMode对应轨迹、时间轴、手写签批、立场、附件等能力。异表单分合流模块中审核相关功能点达 27 项说明审核不仅是「意见框」而是可配置的合规组件。6.3 表单设计器FoolFormDesigner提供可视化字段、从表、扩展属性MapExt配置支持 VSTO 集成DesignerVSTO、AI 辅助建表GPN_AIFlow.ts、WF_Admin_AIFlow.cs。流程与表单在同一产品内闭环减少「流程引擎 第三方表单」的集成成本。七、前端技术架构7.1 技术选型模块技术框架Vue 3 TypeScript流程设计器vue-flow/coreFlowDesignerV2UI 组件Ant Design Vue通信HttpHandler统一调用后端 Handler元数据 UIBSEntity/Entity/Map驱动Comm/En.vue、GenerList.vue7.2 FlowDesignerV2 亮点基于Vue Flow的画布节点、连线、标签、小地图、自动布局useFlowLayout右键菜单、连线条件编辑、节点属性抽屉GroupPageEdit流程检查SSE 实时推送 轮询降级EventSourceIsChecking设计期即可发现配置错误设计器内嵌表单设计入口FrmDesignerWrapper7.3 运行期 WorkOptWorkOpt目录涵盖发送Send.ts、抄送、移交、退回、加签、子线程管理ThreadDtl、轨迹查看OneWork/Track.vue等完整操作链。发送实体通过Map声明字段与弹窗选人SetPopTreeEns懒加载组织树前后端契约清晰。7.4 测试与运维TestingContainer/FlowInstance.vue提供流程实例运维跳转、删除、移交、强制结束、轨迹查看——便于实施与二开阶段不依赖生产数据做流转验证。八、二次开发与集成8.1 Dev2Interface — 对外编程接口Dev2Interface.cs约15000行是二开主入口文档注释约定命名规范前缀含义Flow_流程操作Node_节点操作Port_组织架构WorkOpt_工作处理器Frm_表单/打印DTS_调度任务DB_返回结果集的查询接口以静态方法暴露便于在 ASP.NET 业务系统中直接调用无需深入WorkNode内部状态机。8.2 事件扩展ExecEvent在流程、节点、表单多个生命周期挂载事件表单FrmLoadBefore/After、SaveBefore/After、CheckStart/Over……节点通过FrmEvents、OverrideFile支持无侵入重写适合在不修改引擎源码的前提下注入校验、同步外部系统、自定义消息。8.3 HttpHandler 接口层运行期与设计期 API 按职责拆分WF_MyFlow我的流程、WF_WorkOpt工作操作、WF_Admin_AttrFlow流程属性、WF_Admin_Cond方向条件等30个 Handler。前端HttpHandler类按类名与方法名路由约定统一利于生成接口文档与 Mock。8.4 CCFlowAPICCFlowAPI.GenerWorkNode等工作节点数据组装 API可供移动端、第三方门户、低代码页面以 DataSet 方式消费流程表单一体数据。九、扩展生态同一引擎上的增值模块BP.WF不仅包含纯工作流还集成了模块路径/类能力CCFastCCFast/低代码门户、DataV 大屏、AI 辅助CCBillCCBill/单据、台账、实体权限CCPrjCCPrj/项目协同、文件评审FreeTaskFreeTask/自由任务非固定流程图的协作任务CCOACCOA/办公扩展这意味着选型驰骋不仅是选一个流程引擎而是选一个可渐进扩展的 BPM 平台底座若只需极简审批部分模块可能用不到需按场景裁剪部署。十、AI 与智能化新兴能力AI 生成流程WF_Admin_AIFlow解析自然语言/图片描述输出Flow/Node的 JSON 并导入设计器AI 表单WF_Admin_AICCFast、GPN_AIFlow.ts等辅助建表与布局智能找人ByPreviousNodeFormStationsAI等规则预留 AI 辅助选人中肯评价AI 能力处于快速迭代阶段适合作为设计期提效工具核心流转仍由确定性引擎执行生产环境的关键业务规则建议以显式配置 事件代码为准AI 生成结果需经人工审核与流程检查。十一、核心优势总结功能纵深769 项流程功能点统计口径见内部需求文档覆盖线性、分合流、父子流程全谱系少见「能做 80% 但复杂 20% 做不了」的断层。找人规则引擎50 种DeliveryWay直面国内企业组织、表单、主管链、子线程拆单等真实痛点。同/异表单分合流双模型数据层区分而非仅 UI 区分适合会签与多部门并行填报两类本质不同的场景。技术栈现代且可私有化.NET 8 Vue 3多数据库与国产化支持Single/集团/SaaS 模式一套代码。二开友好Dev2Interface 事件重载 HttpHandler 分层15 年量级沉淀的 API 面。设计运维闭环FlowDesignerV2 流程检查、TestingContainer 实例运维、完整轨迹与审核组件。表单流程一体降低集成成本适合「审批即业务单据」的 OA/ERP 场景。开源可掌控源码交付适合对合规、定制、长期演进有要求的甲方与集成商。十二、客观说明与选型建议12.1 学习曲线引擎历史悠久核心类如WorkNode.cs超11000行承载了大量边界场景。新开发者建议路径先掌握线性流程 Dev2Interface常用 API再理解RunModel与FID/WorkID实例模型最后深入分合流、父子流程不建议在未理解DeliveryWay与节点运行模式的情况下直接上复杂流程。12.2 架构风格后端采用自研实体框架 HttpHandler而非 Spring Activiti/Flowable 那类 BPMN 标准引擎。优势是中国企业场景贴合度高若团队强依赖 BPMN 2.0 标准导入导出或 Camunda 生态需要评估迁移与互操作成本。12.3 适用场景更适合需审慎评估政企/集团复杂审批仅需 35 节点极简审批多组织、多租户 SaaS强依赖 BPMN 标准引擎国产化数据库环境团队无 .NET 运维能力深度定制与源码掌控不愿投入流程建模学习成本表单流程一体化业务纯微服务编排可考虑专用编排引擎十三、典型技术场景示例场景推荐模块关键技术点请假/报销顺序审批线性流程DeliveryWay、方向条件、按钮权限、超时OutTimeDeal多部门会签同一单据同表单分合流FID关联、PassRate合流通过率财务法务技术并行填报异表单分合流ToNodes多选、USSWorkIDRole主项目子项目审批父子流程SubFlowHand/Auto、AllSubFlowOverRole按报销明细行指定审批人同表单 ByDtlAsSubThreadEmps明细驱动子线程与 ERP 同步ExecEventDev2Interface节点/表单事件、调度DTS_移动端待办CCFlowAPIDev2Interface待办数量、GenerWorkNode 数据包十四、结语驰骋 BPM 工作流引擎是一套以运行期深度为核心竞争力的企业级产品代码体量、枚举完备度、分模式发送实现和找人规则引擎都指向「复杂组织里的真实审批」而非演示级流程图。从技术选型角度若贵方需要在私有化或国产化环境中运行完整的流程表单平台处理分合流、父子流程、主管链、子线程等高阶流程模式保留源码级定制与长期演进能力驰骋引擎是值得重点评估的国产 BPM 方案之一。同时应预留实施团队对RunModel、DeliveryWay和事件扩展的学习周期并善用设计器流程检查与测试容器降低上线风险。附录关键代码索引主题路径发送引擎CCFlow/Components/BP.WF/WF/WorkNode.cs运行模式枚举CCFlow/Components/BP.WF/EnumLib.cs→RunModel找人规则CCFlow/Components/BP.WF/Template/FindWorker.cs二开接口CCFlow/Components/BP.WF/Dev2Interface.cs工作节点 APICCFlow/Components/BP.WF/CCFlowAPI.cs事件执行CCFlow/Components/BP.WF/WF/ExecEvent.cs流程设计器Vue3/src/WF/Admin/FlowDesignerV2/index.vue发送操作Vue3/src/WF/WorkOpt/SendAndCC/Send.ts审核组件Vue3/src/WF/WorkOpt/WorkCheck.vue接收人规则前端Vue3/src/WF/Admin/AttrNode/AccepterRole/DeliveryWay.ts功能点统计doc/CCFlow主要流程功能统计汇总报告.md本文档由 CCFlow 代码库分析生成功能点数据引用项目内统计报告具体行为以实际部署版本为准。
返回列表