JSON转工作流引擎能识别的BPMN
创作时间:
作者:
@小白创作中心
JSON转工作流引擎能识别的BPMN
引用
CSDN
1.
https://blog.csdn.net/QQ1941338475/article/details/139044923
在现代软件开发中,业务流程管理(BPMN)和工作流引擎广泛应用于自动化和优化业务流程。BPMN(Business Process Model and Notaion)作为一种标准的流程建模语言。因此,将JSON转换为BPMN以便工作流引擎识别和执行,作为一个重要的需求。
本文将介绍如何将JSON格式的业务流程描述转换为BPMN,以便被工作流引擎识别和执行。
完整转BPMN代码:lowflow-design-converter: 低代码流程设计器转bpmn (gitee.com)
什么是BPMN?
BPMN是一种用于业务流程模型的图形表示法,它能够让业务人员或技术人员在同一个平台上交流。
BPMN使用图形符号来表示业务活动、事件和决策、具有良好的可读性和标准化特性。
BPMN核心的元素包括:
- 流程(Process)
- 任务(Task)
- 网关(Gateway)
- 事件(Event)
- 连接线(Sequence Flow)
将JSON转换为BPMN
步骤1:解析JSON
首先、需要解析JSON,提取出描述业务流程的关键信息。假设我们的JSON描述了一个简单的业务流程。
{
"code": "test",
"name": "测试模型",
"process": {
"id": "root",
"type": "start",
"name": "发起人",
"child": {
"id": "node_bi7kz",
"pid": "root",
"type": "approval",
"name": "审批人",
"child": {
"id": "end",
"pid": "node_bi7kz",
"type": "end",
"name": "结束"
},
"assigneeType": "user",
"formUser": "",
"formRole": "",
"users": ["admin"],
"roles": [],
"leader": 1,
"orgLeader": 1,
"choice": false,
"self": false,
"multi": "sequential",
"nobody": "pass",
"nobodyUsers": [],
}
},
"remark": ""
}
步骤2:创建节点类
分别为:
- StartNode: 开始节点
- CcNode: 抄送节点
- ApprovalNode: 审批节点
- ConditionNode:条件节点
- ExclusiveNode:互斥分支节点
- TimerNode: 计时等待节点
- EndNode: 结束节点
步骤3:创建模型类
创建一个类名为:ProcessModel类,并提供一个toBpmnModel方法将类转为BpmnModel
步骤4:节点转换
以审批节点为例子,创建UserTask类并赋值对应的属性配置
配置完用户审批节点后,创建SequenceFlow类连接到下一个节点
步骤5:转为BPMN
导入转换依赖
Flowable的bpmn转换依赖
<dependency>
<groupId>org.flowable</groupId>
<artifactId>flowable-bpmn-converter</artifactId>
<version>6.8.0</version>
</dependency>
Activiti的bpmn转换依赖
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-bpmn-converter</artifactId>
<version>7.1.0.M6</version>
</dependency>
转换BPMN并下载
结论
将 JSON 转换为 BPMN 是一个将数据格式标准化的重要步骤,确保业务流程能够在不同系统之间无缝衔接和执行。通过解析 JSON 并生成相应的 BPMN XML,可以实现这一目标。
希望本文能够为您提供有价值的参考,帮助您在实际项目中实现 JSON 到 BPMN 的转换。如果有任何问题或建议,欢迎交流讨论
热门推荐
福建厦门7大特色美食,其中这5道必尝,没吃过就白来了
黄越山水画:将心绪融入画作,追寻“天人合一”的艺术境界
王安石《怀钟山》:黄粱一梦的人生哲理
赵本山好笑的电影有哪些
上海驾考通过率仅21.9%!科目二新增多项模拟场景,补考需等4个月
新亚驾校教你轻松应对上海驾考
上海科目三考试最新攻略:16个项目详解与关键技巧
上海驾考新规来了!学车重回6000元时代?
玩转徐州:方特乐园&云龙湖一日游完全攻略
越剧演员陈丽君“跨界”上音综,将越剧元素融入流行音乐
600多岁的老戏新唱,新版越剧《琵琶记》深圳热演
00后的一首原创歌,演绎越城非遗魅力
揭秘指纹锁黑科技:这些内部组件你了解吗?
柳州螺蛳粉:臭味的秘密大揭秘!
总台龙年春晚闪耀肯尼亚内罗毕
悉尼龙舟大赛与总台春晚:中澳中南共庆新春的文化盛宴
肺结核患者可以喝牛奶吗?需要注意什么?
肺结核患者可以喝牛奶吗?需要注意什么?
健康科普 | 做好家庭护理,肺结核患者康复法宝
史努比:一只狗的美国梦
从漫画到太空:史努比与NASA的不解之缘
青海喇家遗址:4000年的面条传奇
通天教主十大弟子,战力排名
充电宝能带上火车吗?这份官方指南请收好
如何辨别真假牛黄解毒片?贵州百灵教你几招!
祖冲之教你如何算π,数学大神上线!
《封神再临》剧情还原度大评测!
《封神第二部》:特效炸裂的东方神话史诗
Solidigm再破纪录:圆周率π计算至105万亿位!
圆周率计算突破105万亿位!揭秘最新世界纪录背后的故事