武城网站建设费用,成都网站制作系统,微信商户平台登录入口,高德地图能在国外用吗大家在开发OA办公自动化、ERP、CRM、BPM、低代码平台等项目的时候#xff0c;经常用到流程引擎#xff0c;目前主流的开源流程引擎有activiti、flowable、camunda。这几个开源的流程引擎均基于BPMN2.0国际规范标准#xff0c;其功能均比较强大#xff0c;接口也很丰富。但涉…大家在开发OA办公自动化、ERP、CRM、BPM、低代码平台等项目的时候经常用到流程引擎目前主流的开源流程引擎有activiti、flowable、camunda。这几个开源的流程引擎均基于BPMN2.0国际规范标准其功能均比较强大接口也很丰富。但涉及到人机交互界面大部分都需要定制开发开源工作流引擎默认界面都不太适合中国项目使用要求。首先需要了解一下BPMN2.0规范是什么见下图更详细的了解请百度“BPMN2.0模型规范标准”之类的关键词。 本文重点介绍基于activiti、flowable、camunda开源工作流引擎如何选择一个开源免费的流程设计器进行集成和扩展开发快速交付项目使用。
一、流程设计器开源组件bpmn-js
bpmn-js 是 BPMN 2.0 渲染工具包和 Web 模型。bpmn-js 正在努力成为 Camunda BPM 的一部分。bpmn-js 使用 Web 建模工具可以很方便的构建 BPMN 图表可以把 BPMN 图表嵌入到你的项目中容易扩展。bpmn-js是基于原生js开发支持集成到vue、react等开源框架中集成起来也比较简单而且与activiti、flowable、camunda开源工作流引擎无缝集成。使用bpmn-js也有缺点由于bpmn-js底层依赖了画图工具diagram-js 和bpmn模型解析组件bpmn-moddle 这两个开源组件的源代码比较复杂一般前端开发人员很难搞定功能和样式扩展修改比较费劲。
官方网站Web-based tooling for BPMN, DMN, CMMN, and Forms | bpmn.io
在线体验http://www.yunchengxc.com
源码解读Bpmn.js 进阶指南之原理分析与模块改造 - 掘金 建议专业的BPM项目选择bpmn-js流程设计器因为bpmn-js包含了全部BPMN 2.0的元素配置设计的流程图可以很复杂尤其是流程事件和协作非钉钉流程设计器或OA类工作流设计器可取代比如下面这个基于事件的招聘面试流程。 二、仿钉钉流程设计器
阿里钉钉作为中国协同办公的主流平台其中表单设计器和流程设计器的功能及交互风格对国内的企业和用户影响很大一部分专业的低代码平台/BPM厂商也推出了仿钉钉版流程设计器也有一部分客户提出流程设计器要改造程钉钉类的。在开源社区里也有vue和react版本的仿钉钉流程设计器框架。
仿钉钉版流程设计器不能与activiti、flowable、camunda等开源流程引擎无法集成因为钉钉版流程设计器生成的模型不是bpmn2.0标准规范需要中间做转化才可以转化可以是前端JS处理也可以是后端Java处理大部分公司是基于BPMN模型的工具类在Java后端进行处理的这个处理相当于做一个适配器把A模型转化成B模型其工作量不小而且复杂的模型转化很容易出错。
开源地址GitHub - StavinLi/Workflow-Vue3: 仿钉钉审批流程设置vue3版本
在线体验https://stavinli.github.io/Workflow-Vue3/dist/index.html#/ 建议钉钉流程设计器尤其明显的优点和缺点。优点是更符合业务人员操作习惯使用起来比较容易理解更适合简单的人工审批流程缺点是不能设计复杂的BPMN流程。如果系统的定位是简单的办公类需求仿钉钉流程设计器是可取的反之需要谨慎考虑。 三、基于G6的流程设计器
Antv G6本是阿里Antv团队开源的一个可视化图形框架。G6 是一个简单、易用、完备的图可视化引擎它在高定制能力的基础上提供了一系列设计优雅、便于使用的图可视化解决方案。能帮助开发者搭建属于自己的图可视化、图分析、或图编辑器应用。G6是绘图方面也是可以选择的可以使用 canvas 或 svg 渲染默认是Canvas在可视化及交互方面G6是比较突出的比jsplumb 更好用。
开源地址GitHub - guozhaolong/wfd-vue: flowable workflow designer for Vue base on antv/g6
体验地址https://guozhaolong.github.io/wfd-vue/ 建议bpmn-js 版流程设计器太专业太复杂仿钉钉流程设计器太简单使用场景太局限有没有折中的方案选择一个好的图画工具自行开发流程设计器即选择Antv G6开源框架开发流程设计器就是好的方案优点是画图功能比较强大可按业务需求灵活定制。缺点是Antv G6的生成的流程图模型与bpmn2.0模型不一致也需要自己开发适配器进行模块转换。
四、其它开源流程设计器
还有其它开源版流程设计器这里不作重点介绍感兴趣的读者请自行研究。
vue-flow-design-plus: Vue Flow Design Plus流程设计器基于Vue Ant Design Vue JSPlumb
Documentation · LogicFlow
LogicFlow
Diagram and visual applications builder - jsPlumb Toolkit
Vue3 AntV X6 2.0流程设计器: vue3AntV X6 2.0版本 完成的流程设计器。内控业务属性的系统流程审批使用一些职能带、边条件前端表达式定义节点属性审批策略、岗位、角色、审批人、处理功能等
easy-flow: 基于VUEJsPlumb的流程设计器演示地址
RuoYi-activiti: 打造最好用的OA数字化解决方案基于Activiti6.0集流程设计、流程部署、流程执行、任务办理、流程监控于一体的开源工作流开发平台。