关于Bpm系统的流程设计器

前段时间公司要求摒弃BPMN.js (公司觉得用户学习 成本高,而且东西丑陋)进而借鉴钉钉的OA流程审批样式
经过需求评审,项目分析和讨论,最终已树形结构的Json做传输 将个个节点带回,Java控制器层接受,并使用FastJson进行遍历解析,最总使用BPMNModel API 生成XML文件进行流程的部署和运行,后续在百度生成Xml时 看得一篇文章
https://blog.csdn.net/zpfzly/article/details/106287443
activiti部署时json与XML与BpmnModel之间的相互转换

得知在官方设计器 在保存时就是已Json的形式,本人就在想Flowable 是activiti团队开发的 或许会沿用 之前的东西,果然 在Flow able 官方设计器中点击保存也是已Json形式进行保存传输的

在这里插入图片描述

生成的 id 1612245975467

modeltype: model
json_xml:
{"modelId":"5ada9310-614a-11eb-854e-da3bbf51e16d","bounds":{"lowerRight":{"x":1200,"y":1050},"upperLeft":{"x":0,"y":0}},"properties":{"process_id":"test","name":"测试","documentation":"123","process_author":"","process_version":"","process_namespace":"http://www.flowable.org/processdef","process_historylevel":"","isexecutable":true,"dataproperties":"","executionlisteners":"","eventlisteners":"","signaldefinitions":"","messagedefinitions":"","escalationdefinitions":"","process_potentialstarteruser":"","process_potentialstartergroup":"","iseagerexecutionfetch":"false"},"childShapes":[{"resourceId":"startEvent1","properties":{"overrideid":"start123","name":"启动","documentation":"","executionlisteners":"","initiator":"所有人","formkeydefinition":"","formreference":"","formfieldvalidation":true,"formproperties":""},"stencil":{"id":"StartNoneEvent"},"childShapes":[],"outgoing":[{"resourceId":"sid-2D01E555-494C-4374-9DBE-135C592E2E3B"}],"bounds":{"lowerRight":{"x":105,"y":193},"upperLeft":{"x":75,"y":163}},"dockers":[]},{"resourceId":"sid-8F2E2A85-E990-4898-9DC6-C8238DB69081","properties":{"overrideid":"gk","name":"网关1","documentation":"","asynchronousdefinition":"false","exclusivedefinition":"false","sequencefloworder":""},"stencil":{"id":"ExclusiveGateway"},"childShapes":[],"outgoing":[{"resourceId":"sid-FEA5E630-B914-4FD1-A5F6-D7EDB8345830"},{"resourceId":"sid-8AEE2730-8B44-43F6-AB02-05D1181F38E2"}],"bounds":{"lowerRight":{"x":205,"y":198},"upperLeft":{"x":165,"y":158}},"dockers":[]},{"resourceId":"sid-2D01E555-494C-4374-9DBE-135C592E2E3B","properties":{"overrideid":"","name":"","documentation":"","conditionsequenceflow":"","executionlisteners":"","defaultflow":"false","skipexpression":""},"stencil":{"id":"SequenceFlow"},"childShapes":[],"outgoing":[{"resourceId":"sid-8F2E2A85-E990-4898-9DC6-C8238DB69081"}],"bounds":{"lowerRight":{"x":165.10157620548287,"y":178.39320196966221},"upperLeft":{"x":105.92186129451711,"y":178.08336053033779}},"dockers":[{"x":15,"y":15},{"x":20.5,"y":20.5}],"target":{"resourceId":"sid-8F2E2A85-E990-4898-9DC6-C8238DB69081"}},{"resourceId":"sid-F5EE2C7B-5CC0-46B4-84DB-45F873E89154","properties":{"overrideid":"task1-1","name":"任务1-1","documentation":"","asynchronousdefinition":"false","exclusivedefinition":"false","executionlisteners":"","multiinstance_type":"None","multiinstance_cardinality":"","multiinstance_collection":"","multiinstance_variable":"","multiinstance_condition":"","isforcompensation":"false","usertaskassignment":"","formkeydefinition":"","formreference":"","formfieldvalidation":true,"duedatedefinition":"","prioritydefinition":"","formproperties":"","tasklisteners":"","skipexpression":"","categorydefinition":""},"stencil":{"id":"UserTask"},"childShapes":[],"outgoing":[{"resourceId":"sid-6ABBC361-FF01-4583-8257-F278A4890931"}],"bounds":{"lowerRight":{"x":340,"y":320},"upperLeft":{"x":240,"y":240}},"dockers":[]},{"resourceId":"sid-7C59BC61-D108-406C-AC7F-92695F24AF3B","properties":{"overrideid":"task1-2","name":"任务1-2","documentation":"","asynchronousdefinition":"false","exclusivedefinition":"false","executionlisteners":"","multiinstance_type":"None","multiinstance_cardinality":"","multiinstance_collection":"","multiinstance_variable":"","multiinstance_condition":"","isforcompensation":"false","usertaskassignment":"","formkeydefinition":"","formreference":"","formfieldvalidation":true,"duedatedefinition":"","prioritydefinition":"","formproperties":"","tasklisteners":"","skipexpression":"","categorydefinition":""},"stencil":{"id":"UserTask"},"childShapes":[],"outgoing":[{"resourceId":"sid-EDAD11E4-BAC7-4AA9-ADCC-6B9999645037"}],"bounds":{"lowerRight":{"x":340,"y":125},"upperLeft":{"x":240,"y":45}},"dockers":[]},{"resourceId":"sid-8A51E91C-A100-42E5-9B10-9884ECAAD34F","properties":{"overrideid":"task2-1","name":"任务2-1","documentation":"","asynchronousdefinition":"false","exclusivedefinition":"false","executionlisteners":"","multiinstance_type":"None","multiinstance_cardinality":"","multiinstance_collection":"","multiinstance_variable":"","multiinstance_condition":"","isforcompensation":"false","usertaskassignment":"","formkeydefinition":"","formreference":"","formfieldvalidation":true,"duedatedefinition":"","prioritydefinition":"","formproperties":"","tasklisteners":"","skipexpression":"","categorydefinition":""},"stencil":{"id":"UserTask"},"childShapes":[],"outgoing":[{"resourceId":"sid-F521747C-1123-4E53-8FA9-5BC86737C1FC"}],"bounds":{"lowerRight":{"x":602,"y":124},"upperLeft":{"x":480,"y":45}},"dockers":[]},{"resourceId":"sid-EDAD11E4-BAC7-4AA9-ADCC-6B9999645037","properties":{"overrideid":"","name":"","documentation":"","conditionsequenceflow":"","executionlisteners":"","defaultflow":"false","skipexpression":""},"stencil":{"id":"SequenceFlow"},"childShapes":[],"outgoing":[{"resourceId":"sid-8A51E91C-A100-42E5-9B10-9884ECAAD34F"}],"bounds":{"lowerRight":{"x":479.2109394840896,"y":84.90035172207986},"upperLeft":{"x":340.0234355159104,"y":84.62308577792014}},"dockers":[{"x":50,"y":40},{"x":61,"y":39.50000000000001}],"target":{"resourceId":"sid-8A51E91C-A100-42E5-9B10-9884ECAAD34F"}},{"resourceId":"sid-228EAD04-B680-4FBA-9454-12C622F28CEF","properties":{"overrideid":"task2-2","name":"任务2-2","documentation":"","asynchronousdefinition":"false","exclusivedefinition":"false","executionlisteners":"","multiinstance_type":"None","multiinstance_cardinality":"","multiinstance_collection":"","multiinstance_variable":"","multiinstance_condition":"","isforcompensation":"false","usertaskassignment":"","formkeydefinition":"","formreference":"","formfieldvalidation":true,"duedatedefinition":"","prioritydefinition":"","formproperties":"","tasklisteners":"","skipexpression":"","categorydefinition":""},"stencil":{"id":"UserTask"},"childShapes":[],"outgoing":[{"resourceId":"sid-741AF207-80B1-4A35-9670-B44CF50B8863"}],"bounds":{"lowerRight":{"x":580,"y":320},"upperLeft":{"x":480,"y":240}},"dockers":[]},{"resourceId":"sid-6ABBC361-FF01-4583-8257-F278A4890931","properties":{"overrideid":"","name":"","documentation":"","conditionsequenceflow":"","executionlisteners":"","defaultflow":"false","skipexpression":""},"stencil":{"id":"SequenceFlow"},"childShapes":[],"outgoing":[{"resourceId":"sid-228EAD04-B680-4FBA-9454-12C622F28CEF"}],"bounds":{"lowerRight":{"x":479.3125,"y":280},"upperLeft":{"x":340.6875,"y":280}},"dockers":[{"x":50,"y":40},{"x":50,"y":40}],"target":{"resourceId":"sid-228EAD04-B680-4FBA-9454-12C622F28CEF"}},{"resourceId":"sid-FEA5E630-B914-4FD1-A5F6-D7EDB8345830","properties":{"overrideid":"","name":"","documentation":"","conditionsequenceflow":"","executionlisteners":"","defaultflow":"false","skipexpression":""},"stencil":{"id":"SequenceFlow"},"childShapes":[],"outgoing":[{"resourceId":"sid-F5EE2C7B-5CC0-46B4-84DB-45F873E89154"}],"bounds":{"lowerRight":{"x":239.19921875,"y":280},"upperLeft":{"x":185.5,"y":198.53125}},"dockers":[{"x":20.5,"y":20.5},{"x":185.5,"y":280},{"x":50,"y":40}],"target":{"resourceId":"sid-F5EE2C7B-5CC0-46B4-84DB-45F873E89154"}},{"resourceId":"sid-E159D486-030C-4A62-A173-8B8387AF5F95","properties":{"overrideid":"task3","name":"任务3","documentation":"","asynchronousdefinition":"false","exclusivedefinition":"false","executionlisteners":"","multiinstance_type":"None","multiinstance_cardinality":"","multiinstance_collection":"","multiinstance_variable":"","multiinstance_condition":"","isforcompensation":"false","usertaskassignment":"","formkeydefinition":"","formreference":"","formfieldvalidation":true,"duedatedefinition":"","prioritydefinition":"","formproperties":"","tasklisteners":"","skipexpression":"","categorydefinition":""},"stencil":{"id":"UserTask"},"childShapes":[],"outgoing":[{"resourceId":"sid-E80DF4D7-611E-4D97-89A6-733EDCE7550F"}],"bounds":{"lowerRight":{"x":820,"y":218},"upperLeft":{"x":720,"y":138}},"dockers":[]},{"resourceId":"sid-43D34E8F-4394-4576-A086-1BD068E77967","properties":{"overrideid":"end1","name":"结束","documentation":"","executionlisteners":""},"stencil":{"id":"EndNoneEvent"},"childShapes":[],"outgoing":[],"bounds":{"lowerRight":{"x":943,"y":192},"upperLeft":{"x":915,"y":164}},"dockers":[]},{"resourceId":"sid-E80DF4D7-611E-4D97-89A6-733EDCE7550F","properties":{"overrideid":"","name":"","documentation":"","conditionsequenceflow":"","executionlisteners":"","defaultflow":"false","skipexpression":""},"stencil":{"id":"SequenceFlow"},"childShapes":[],"outgoing":[{"resourceId":"sid-43D34E8F-4394-4576-A086-1BD068E77967"}],"bounds":{"lowerRight":{"x":914.3359375,"y":178},"upperLeft":{"x":820.6875,"y":178}},"dockers":[{"x":50,"y":40},{"x":14,"y":14}],"target":{"resourceId":"sid-43D34E8F-4394-4576-A086-1BD068E77967"}},{"resourceId":"sid-741AF207-80B1-4A35-9670-B44CF50B8863","properties":{"overrideid":"","name":"","documentation":"","conditionsequenceflow":"","executionlisteners":"","defaultflow":"false","skipexpression":""},"stencil":{"id":"SequenceFlow"},"childShapes":[],"outgoing":[{"resourceId":"sid-E159D486-030C-4A62-A173-8B8387AF5F95"}],"bounds":{"lowerRight":{"x":770,"y":280},"upperLeft":{"x":580.6875,"y":218.84375}},"dockers":[{"x":50,"y":40},{"x":770,"y":280},{"x":50,"y":40}],"target":{"resourceId":"sid-E159D486-030C-4A62-A173-8B8387AF5F95"}},{"resourceId":"sid-F521747C-1123-4E53-8FA9-5BC86737C1FC","properties":{"overrideid":"","name":"","documentation":"","conditionsequenceflow":"","executionlisteners":"","defaultflow":"false","skipexpression":""},"stencil":{"id":"SequenceFlow"},"childShapes":[],"outgoing":[{"resourceId":"sid-E159D486-030C-4A62-A173-8B8387AF5F95"}],"bounds":{"lowerRight":{"x":770,"y":137.5546875},"upperLeft":{"x":602.828125,"y":84.5}},"dockers":[{"x":61,"y":39.50000000000001},{"x":770,"y":84.5},{"x":50,"y":40}],"target":{"resourceId":"sid-E159D486-030C-4A62-A173-8B8387AF5F95"}},{"resourceId":"sid-8AEE2730-8B44-43F6-AB02-05D1181F38E2","properties":{"overrideid":"","name":"","documentation":"","conditionsequenceflow":"","executionlisteners":"","defaultflow":"false","skipexpression":""},"stencil":{"id":"SequenceFlow"},"childShapes":[],"outgoing":[{"resourceId":"sid-7C59BC61-D108-406C-AC7F-92695F24AF3B"}],"bounds":{"lowerRight":{"x":239.19921875,"y":157.046875},"upperLeft":{"x":185.5,"y":85}},"dockers":[{"x":20.5,"y":20.5},{"x":185.5,"y":85},{"x":50,"y":40}],"target":{"resourceId":"sid-7C59BC61-D108-406C-AC7F-92695F24AF3B"}}],"stencil":{"id":"BPMNDiagram"},"stencilset":{"namespace":"http://b3mn.org/stencilset/bpmn2.0#","url":"../editor/stencilsets/bpmn2.0/bpmn2.0.json"}}

解析排列后得出
在这里插入图片描述

在这里插入图片描述

{"modelId":"5ada9310-614a-11eb-854e-da3bbf51e16d","bounds":{"lowerRight":{"x":1200,"y":1050},"upperLeft":{"x":0,"y":0}},"properties":{"process_id":"test","name":"测试","documentation":"123","process_author":"","process_version":"","process_namespace":"http://www.flowable.org/processdef","process_historylevel":"","isexecutable":true,"dataproperties":"","executionlisteners":"","eventlisteners":"","signaldefinitions":"","messagedefinitions":"","escalationdefinitions":"","process_potentialstarteruser":"","process_potentialstartergroup":"","iseagerexecutionfetch":"false"},"childShapes":[{"resourceId":"startEvent1","properties":{"overrideid":"start123","name":"启动","documentation":"","executionlisteners":"","initiator":"所有人","formkeydefinition":"","formreference":"","formfieldvalidation":true,"formproperties":""},"stencil":{"id":"StartNoneEvent"},"childShapes":[],"outgoing":[{"resourceId":"sid-2D01E555-494C-4374-9DBE-135C592E2E3B"}],"bounds":{"lowerRight":{"x":105,"y":193},"upperLeft":{"x":75,"y":163}},"dockers":[]},{"resourceId":"sid-8F2E2A85-E990-4898-9DC6-C8238DB69081","properties":{"overrideid":"gk","name":"网关1","documentation":"","asynchronousdefinition":"false","exclusivedefinition":"false","sequencefloworder":""},"stencil":{"id":"ExclusiveGateway"},"childShapes":[],"outgoing":[{"resourceId":"sid-FEA5E630-B914-4FD1-A5F6-D7EDB8345830"},{"resourceId":"sid-8AEE2730-8B44-43F6-AB02-05D1181F38E2"}],"bounds":{"lowerRight":{"x":205,"y":198},"upperLeft":{"x":165,"y":158}},"dockers":[]},{"resourceId":"sid-2D01E555-494C-4374-9DBE-135C592E2E3B","properties":{"overrideid":"","name":"","documentation":"","conditionsequenceflow":"","executionlisteners":"","defaultflow":"false","skipexpression":""},"stencil":{"id":"SequenceFlow"},"childShapes":[],"outgoing":[{"resourceId":"sid-8F2E2A85-E990-4898-9DC6-C8238DB69081"}],"bounds":{"lowerRight":{"x":165.10157620548287,"y":178.39320196966221},"upperLeft":{"x":105.92186129451711,"y":178.08336053033779}},"dockers":[{"x":15,"y":15},{"x":20.5,"y":20.5}],"target":{"resourceId":"sid-8F2E2A85-E990-4898-9DC6-C8238DB69081"}},{"resourceId":"sid-F5EE2C7B-5CC0-46B4-84DB-45F873E89154","properties":{"overrideid":"task1-1","name":"任务1-1","documentation":"","asynchronousdefinition":"false","exclusivedefinition":"false","executionlisteners":"","multiinstance_type":"None","multiinstance_cardinality":"","multiinstance_collection":"","multiinstance_variable":"","multiinstance_condition":"","isforcompensation":"false","usertaskassignment":"","formkeydefinition":"","formreference":"","formfieldvalidation":true,"duedatedefinition":"","prioritydefinition":"","formproperties":"","tasklisteners":"","skipexpression":"","categorydefinition":""},"stencil":{"id":"UserTask"},"childShapes":[],"outgoing":[{"resourceId":"sid-6ABBC361-FF01-4583-8257-F278A4890931"}],"bounds":{"lowerRight":{"x":340,"y":320},"upperLeft":{"x":240,"y":240}},"dockers":[]},{"resourceId":"sid-7C59BC61-D108-406C-AC7F-92695F24AF3B","properties":{"overrideid":"task1-2","name":"任务1-2","documentation":"","asynchronousdefinition":"false","exclusivedefinition":"false","executionlisteners":"","multiinstance_type":"None","multiinstance_cardinality":"","multiinstance_collection":"","multiinstance_variable":"","multiinstance_condition":"","isforcompensation":"false","usertaskassignment":"","formkeydefinition":"","formreference":"","formfieldvalidation":true,"duedatedefinition":"","prioritydefinition":"","formproperties":"","tasklisteners":"","skipexpression":"","categorydefinition":""},"stencil":{"id":"UserTask"},"childShapes":[],"outgoing":[{"resourceId":"sid-EDAD11E4-BAC7-4AA9-ADCC-6B9999645037"}],"bounds":{"lowerRight":{"x":340,"y":125},"upperLeft":{"x":240,"y":45}},"dockers":[]},{"resourceId":"sid-8A51E91C-A100-42E5-9B10-9884ECAAD34F","properties":{"overrideid":"task2-1","name":"任务2-1","documentation":"","asynchronousdefinition":"false","exclusivedefinition":"false","executionlisteners":"","multiinstance_type":"None","multiinstance_cardinality":"","multiinstance_collection":"","multiinstance_variable":"","multiinstance_condition":"","isforcompensation":"false","usertaskassignment":"","formkeydefinition":"","formreference":"","formfieldvalidation":true,"duedatedefinition":"","prioritydefinition":"","formproperties":"","tasklisteners":"","skipexpression":"","categorydefinition":""},"stencil":{"id":"UserTask"},"childShapes":[],"outgoing":[{"resourceId":"sid-F521747C-1123-4E53-8FA9-5BC86737C1FC"}],"bounds":{"lowerRight":{"x":602,"y":124},"upperLeft":{"x":480,"y":45}},"dockers":[]},{"resourceId":"sid-EDAD11E4-BAC7-4AA9-ADCC-6B9999645037","properties":{"overrideid":"","name":"","documentation":"","conditionsequenceflow":"","executionlisteners":"","defaultflow":"false","skipexpression":""},"stencil":{"id":"SequenceFlow"},"childShapes":[],"outgoing":[{"resourceId":"sid-8A51E91C-A100-42E5-9B10-9884ECAAD34F"}],"bounds":{"lowerRight":{"x":479.2109394840896,"y":84.90035172207986},"upperLeft":{"x":340.0234355159104,"y":84.62308577792014}},"dockers":[{"x":50,"y":40},{"x":61,"y":39.50000000000001}],"target":{"resourceId":"sid-8A51E91C-A100-42E5-9B10-9884ECAAD34F"}},{"resourceId":"sid-228EAD04-B680-4FBA-9454-12C622F28CEF","properties":{"overrideid":"task2-2","name":"任务2-2","documentation":"","asynchronousdefinition":"false","exclusivedefinition":"false","executionlisteners":"","multiinstance_type":"None","multiinstance_cardinality":"","multiinstance_collection":"","multiinstance_variable":"","multiinstance_condition":"","isforcompensation":"false","usertaskassignment":"","formkeydefinition":"","formreference":"","formfieldvalidation":true,"duedatedefinition":"","prioritydefinition":"","formproperties":"","tasklisteners":"","skipexpression":"","categorydefinition":""},"stencil":{"id":"UserTask"},"childShapes":[],"outgoing":[{"resourceId":"sid-741AF207-80B1-4A35-9670-B44CF50B8863"}],"bounds":{"lowerRight":{"x":580,"y":320},"upperLeft":{"x":480,"y":240}},"dockers":[]},{"resourceId":"sid-6ABBC361-FF01-4583-8257-F278A4890931","properties":{"overrideid":"","name":"","documentation":"","conditionsequenceflow":"","executionlisteners":"","defaultflow":"false","skipexpression":""},"stencil":{"id":"SequenceFlow"},"childShapes":[],"outgoing":[{"resourceId":"sid-228EAD04-B680-4FBA-9454-12C622F28CEF"}],"bounds":{"lowerRight":{"x":479.3125,"y":280},"upperLeft":{"x":340.6875,"y":280}},"dockers":[{"x":50,"y":40},{"x":50,"y":40}],"target":{"resourceId":"sid-228EAD04-B680-4FBA-9454-12C622F28CEF"}},{"resourceId":"sid-FEA5E630-B914-4FD1-A5F6-D7EDB8345830","properties":{"overrideid":"","name":"","documentation":"","conditionsequenceflow":"","executionlisteners":"","defaultflow":"false","skipexpression":""},"stencil":{"id":"SequenceFlow"},"childShapes":[],"outgoing":[{"resourceId":"sid-F5EE2C7B-5CC0-46B4-84DB-45F873E89154"}],"bounds":{"lowerRight":{"x":239.19921875,"y":280},"upperLeft":{"x":185.5,"y":198.53125}},"dockers":[{"x":20.5,"y":20.5},{"x":185.5,"y":280},{"x":50,"y":40}],"target":{"resourceId":"sid-F5EE2C7B-5CC0-46B4-84DB-45F873E89154"}},{"resourceId":"sid-E159D486-030C-4A62-A173-8B8387AF5F95","properties":{"overrideid":"task3","name":"任务3","documentation":"","asynchronousdefinition":"false","exclusivedefinition":"false","executionlisteners":"","multiinstance_type":"None","multiinstance_cardinality":"","multiinstance_collection":"","multiinstance_variable":"","multiinstance_condition":"","isforcompensation":"false","usertaskassignment":"","formkeydefinition":"","formreference":"","formfieldvalidation":true,"duedatedefinition":"","prioritydefinition":"","formproperties":"","tasklisteners":"","skipexpression":"","categorydefinition":""},"stencil":{"id":"UserTask"},"childShapes":[],"outgoing":[{"resourceId":"sid-E80DF4D7-611E-4D97-89A6-733EDCE7550F"}],"bounds":{"lowerRight":{"x":820,"y":218},"upperLeft":{"x":720,"y":138}},"dockers":[]},{"resourceId":"sid-43D34E8F-4394-4576-A086-1BD068E77967","properties":{"overrideid":"end1","name":"结束","documentation":"","executionlisteners":""},"stencil":{"id":"EndNoneEvent"},"childShapes":[],"outgoing":[],"bounds":{"lowerRight":{"x":943,"y":192},"upperLeft":{"x":915,"y":164}},"dockers":[]},{"resourceId":"sid-E80DF4D7-611E-4D97-89A6-733EDCE7550F","properties":{"overrideid":"","name":"","documentation":"","conditionsequenceflow":"","executionlisteners":"","defaultflow":"false","skipexpression":""},"stencil":{"id":"SequenceFlow"},"childShapes":[],"outgoing":[{"resourceId":"sid-43D34E8F-4394-4576-A086-1BD068E77967"}],"bounds":{"lowerRight":{"x":914.3359375,"y":178},"upperLeft":{"x":820.6875,"y":178}},"dockers":[{"x":50,"y":40},{"x":14,"y":14}],"target":{"resourceId":"sid-43D34E8F-4394-4576-A086-1BD068E77967"}},{"resourceId":"sid-741AF207-80B1-4A35-9670-B44CF50B8863","properties":{"overrideid":"","name":"","documentation":"","conditionsequenceflow":"","executionlisteners":"","defaultflow":"false","skipexpression":""},"stencil":{"id":"SequenceFlow"},"childShapes":[],"outgoing":[{"resourceId":"sid-E159D486-030C-4A62-A173-8B8387AF5F95"}],"bounds":{"lowerRight":{"x":770,"y":280},"upperLeft":{"x":580.6875,"y":218.84375}},"dockers":[{"x":50,"y":40},{"x":770,"y":280},{"x":50,"y":40}],"target":{"resourceId":"sid-E159D486-030C-4A62-A173-8B8387AF5F95"}},{"resourceId":"sid-F521747C-1123-4E53-8FA9-5BC86737C1FC","properties":{"overrideid":"","name":"","documentation":"","conditionsequenceflow":"","executionlisteners":"","defaultflow":"false","skipexpression":""},"stencil":{"id":"SequenceFlow"},"childShapes":[],"outgoing":[{"resourceId":"sid-E159D486-030C-4A62-A173-8B8387AF5F95"}],"bounds":{"lowerRight":{"x":770,"y":137.5546875},"upperLeft":{"x":602.828125,"y":84.5}},"dockers":[{"x":61,"y":39.50000000000001},{"x":770,"y":84.5},{"x":50,"y":40}],"target":{"resourceId":"sid-E159D486-030C-4A62-A173-8B8387AF5F95"}},{"resourceId":"sid-8AEE2730-8B44-43F6-AB02-05D1181F38E2","properties":{"overrideid":"","name":"","documentation":"","conditionsequenceflow":"","executionlisteners":"","defaultflow":"false","skipexpression":""},"stencil":{"id":"SequenceFlow"},"childShapes":[],"outgoing":[{"resourceId":"sid-7C59BC61-D108-406C-AC7F-92695F24AF3B"}],"bounds":{"lowerRight":{"x":239.19921875,"y":157.046875},"upperLeft":{"x":185.5,"y":85}},"dockers":[{"x":20.5,"y":20.5},{"x":185.5,"y":85},{"x":50,"y":40}],"target":{"resourceId":"sid-7C59BC61-D108-406C-AC7F-92695F24AF3B"}}],"stencil":{"id":"BPMNDiagram"},"stencilset":{"namespace":"http://b3mn.org/stencilset/bpmn2.0#","url":"../editor/stencilsets/bpmn2.0/bpmn2.0.json"}}

在这里插入图片描述

{"modelId":"4df0008f-6552-11eb-9343-da3bbf51e16d","bounds":{"lowerRight":{"x":1200,"y":1050},"upperLeft":{"x":0,"y":0}},"properties":{"process_id":"1","name":"1","documentation":"123","process_author":"","process_version":"","process_namespace":"http://www.flowable.org/processdef","process_historylevel":"","isexecutable":true,"dataproperties":"","executionlisteners":"","eventlisteners":"","signaldefinitions":"","messagedefinitions":"","escalationdefinitions":"","process_potentialstarteruser":"","process_potentialstartergroup":"","iseagerexecutionfetch":"false"},"childShapes":[{"resourceId":"startEvent1","properties":{"overrideid":"s1","name":"开始","documentation":"","executionlisteners":"","initiator":"","formkeydefinition":"","formreference":"","formfieldvalidation":true,"formproperties":""},"stencil":{"id":"StartNoneEvent"},"childShapes":[],"outgoing":[{"resourceId":"sid-7977CA98-8765-471D-8336-9C0F71302FBC"}],"bounds":{"lowerRight":{"x":48.518518464010384,"y":178},"upperLeft":{"x":18.518518464010384,"y":148}},"dockers":[]},{"resourceId":"sid-7977CA98-8765-471D-8336-9C0F71302FBC","properties":{"overrideid":"","name":"","documentation":"","conditionsequenceflow":"","executionlisteners":"","defaultflow":"false","skipexpression":"","showdiamondmarker":false},"stencil":{"id":"SequenceFlow"},"childShapes":[],"outgoing":[{"resourceId":"sid-F21F3FD5-5F8B-468B-BF0C-E29C9F45D9DA"}],"bounds":{"lowerRight":{"x":98.10445596401038,"y":163},"upperLeft":{"x":48.893518464010384,"y":163}},"dockers":[{"x":15,"y":15},{"x":50,"y":40}],"target":{"resourceId":"sid-F21F3FD5-5F8B-468B-BF0C-E29C9F45D9DA"}},{"resourceId":"sid-F21F3FD5-5F8B-468B-BF0C-E29C9F45D9DA","properties":{"overrideid":"task1","name":"任务1","documentation":"哈哈1","asynchronousdefinition":"false","exclusivedefinition":"false","executionlisteners":"","multiinstance_type":"None","multiinstance_cardinality":"","multiinstance_collection":"","multiinstance_variable":"","multiinstance_condition":"","isforcompensation":"false","usertaskassignment":{"assignment":{"type":"idm","idm":{"type":"users"}}},"formkeydefinition":"form","formreference":{"id":"7678e311-614a-11eb-854e-da3bbf51e16d","name":"test_form","key":"form"},"formfieldvalidation":true,"duedatedefinition":"","prioritydefinition":"123","formproperties":"","tasklisteners":"","skipexpression":"","categorydefinition":""},"stencil":{"id":"UserTask"},"childShapes":[],"outgoing":[{"resourceId":"sid-70DFAFF2-43CA-41D6-83AF-D9757F98CE54"}],"bounds":{"lowerRight":{"x":198.51851846401038,"y":203},"upperLeft":{"x":98.51851846401038,"y":123}},"dockers":[]},{"resourceId":"sid-2A5017DF-D259-4FDE-A000-5F795B342EE6","properties":{"overrideid":"task2","name":"任务2","documentation":"","asynchronousdefinition":"false","exclusivedefinition":"false","executionlisteners":"","multiinstance_type":"None","multiinstance_cardinality":"","multiinstance_collection":"","multiinstance_variable":"","multiinstance_condition":"","isforcompensation":"false","usertaskassignment":{"assignment":{"type":"idm","initiatorCanCompleteTask":false,"idm":{"type":"users"}}},"formkeydefinition":"","formreference":"","formfieldvalidation":true,"duedatedefinition":"","prioritydefinition":"","formproperties":"","tasklisteners":"","skipexpression":"","categorydefinition":""},"stencil":{"id":"UserTask"},"childShapes":[],"outgoing":[{"resourceId":"sid-4E60544F-254D-47F5-9BA6-3179785E472B"}],"bounds":{"lowerRight":{"x":343.5185184640104,"y":203},"upperLeft":{"x":243.51851846401038,"y":123}},"dockers":[]},{"resourceId":"sid-70DFAFF2-43CA-41D6-83AF-D9757F98CE54","properties":{"overrideid":"","name":"","documentation":"","conditionsequenceflow":"","executionlisteners":"","defaultflow":"false","skipexpression":""},"stencil":{"id":"SequenceFlow"},"childShapes":[],"outgoing":[{"resourceId":"sid-2A5017DF-D259-4FDE-A000-5F795B342EE6"}],"bounds":{"lowerRight":{"x":242.6747684640104,"y":163},"upperLeft":{"x":199.3622684640104,"y":163}},"dockers":[{"x":50,"y":40},{"x":50.000000000000014,"y":40}],"target":{"resourceId":"sid-2A5017DF-D259-4FDE-A000-5F795B342EE6"}},{"resourceId":"sid-35181044-1357-40C4-AB55-AC38C3525958","properties":{"overrideid":"wg1","name":"网关1","documentation":"","asynchronousdefinition":"false","exclusivedefinition":"false","sequencefloworder":""},"stencil":{"id":"ExclusiveGateway"},"childShapes":[],"outgoing":[{"resourceId":"sid-6DE42224-0267-414B-9579-B74F6645C671"},{"resourceId":"sid-5F16CC7A-F33D-44A0-A63F-EFA7C91A6FD7"}],"bounds":{"lowerRight":{"x":428.5185184640104,"y":183},"upperLeft":{"x":388.5185184640104,"y":143}},"dockers":[]},{"resourceId":"sid-4E60544F-254D-47F5-9BA6-3179785E472B","properties":{"overrideid":"","name":"","documentation":"","conditionsequenceflow":"","executionlisteners":"","defaultflow":"false","skipexpression":""},"stencil":{"id":"SequenceFlow"},"childShapes":[],"outgoing":[{"resourceId":"sid-35181044-1357-40C4-AB55-AC38C3525958"}],"bounds":{"lowerRight":{"x":388.16696533401796,"y":163.4097335362338},"upperLeft":{"x":344.14741534400287,"y":163.2191727137662}},"dockers":[{"x":50.000000000000014,"y":40},{"x":20.5,"y":20.5}],"target":{"resourceId":"sid-35181044-1357-40C4-AB55-AC38C3525958"}},{"resourceId":"sid-94FC3BDC-665D-4768-818A-3A8AC526D51C","properties":{"overrideid":"task3-1","name":"任务3-1","documentation":"","asynchronousdefinition":"false","exclusivedefinition":"false","executionlisteners":"","multiinstance_type":"None","multiinstance_cardinality":"","multiinstance_collection":"","multiinstance_variable":"","multiinstance_condition":"","isforcompensation":"false","usertaskassignment":{"assignment":{"type":"static","candidateUsers":[{"value":"111","$$hashKey":"object:33024"},{"value":"222","$$hashKey":"object:33033"},{"value":"333","$$hashKey":"object:33038"},{"value":"444","$$hashKey":"object:33042"}]}},"formkeydefinition":"","formreference":"","formfieldvalidation":true,"duedatedefinition":"","prioritydefinition":"","formproperties":"","tasklisteners":"","skipexpression":"","categorydefinition":""},"stencil":{"id":"UserTask"},"childShapes":[],"outgoing":[{"resourceId":"sid-27CD75AE-18B4-4AC7-A7E4-52778DB4C4A6"}],"bounds":{"lowerRight":{"x":458.5185184640104,"y":350},"upperLeft":{"x":358.5185184640104,"y":270}},"dockers":[]},{"resourceId":"sid-6DE42224-0267-414B-9579-B74F6645C671","properties":{"overrideid":"","name":"","documentation":"","conditionsequenceflow":"","executionlisteners":"","defaultflow":"false","skipexpression":""},"stencil":{"id":"SequenceFlow"},"childShapes":[],"outgoing":[{"resourceId":"sid-94FC3BDC-665D-4768-818A-3A8AC526D51C"}],"bounds":{"lowerRight":{"x":408.9506523896047,"y":269.5136776991288},"upperLeft":{"x":408.6566970384161,"y":183.38475980087122}},"dockers":[{"x":20.5,"y":20.5},{"x":50,"y":40}],"target":{"resourceId":"sid-94FC3BDC-665D-4768-818A-3A8AC526D51C"}},{"resourceId":"sid-7E3C78FB-852E-4246-AFBB-FBC1475F8E18","properties":{"overrideid":"task2-1","name":"任务2-1","documentation":"","asynchronousdefinition":"false","exclusivedefinition":"false","executionlisteners":"","multiinstance_type":"None","multiinstance_cardinality":"","multiinstance_collection":"","multiinstance_variable":"","multiinstance_condition":"","isforcompensation":"false","usertaskassignment":{"assignment":{"type":"static","candidateGroups":[{"value":"123","$$hashKey":"object:32844"},{"value":"321","$$hashKey":"object:32851"},{"value":"12345","$$hashKey":"object:32856"},{"value":"54123","$$hashKey":"object:32860"}]}},"formkeydefinition":"","formreference":"","formfieldvalidation":true,"duedatedefinition":"","prioritydefinition":"","formproperties":"","tasklisteners":"","skipexpression":"","categorydefinition":""},"stencil":{"id":"UserTask"},"childShapes":[],"outgoing":[{"resourceId":"sid-3BA228F0-5185-4848-AF84-5FAAAAE22FFB"}],"bounds":{"lowerRight":{"x":458.5185184640104,"y":80},"upperLeft":{"x":358.5185184640104,"y":0}},"dockers":[]},{"resourceId":"sid-5F16CC7A-F33D-44A0-A63F-EFA7C91A6FD7","properties":{"overrideid":"","name":"","documentation":"","conditionsequenceflow":"","executionlisteners":"","defaultflow":"false","skipexpression":""},"stencil":{"id":"SequenceFlow"},"childShapes":[],"outgoing":[{"resourceId":"sid-7E3C78FB-852E-4246-AFBB-FBC1475F8E18"}],"bounds":{"lowerRight":{"x":408.93243866419425,"y":142.2382894454114},"upperLeft":{"x":408.6827232638266,"y":80.55858555458862}},"dockers":[{"x":20.5,"y":20.5},{"x":50,"y":40}],"target":{"resourceId":"sid-7E3C78FB-852E-4246-AFBB-FBC1475F8E18"}},{"resourceId":"sid-32EB8ACE-9075-4732-ACA5-9B733DF1C7DE","properties":{"overrideid":"task3-2","name":"任务3-2","documentation":"","asynchronousdefinition":"false","exclusivedefinition":"false","executionlisteners":"","multiinstance_type":"None","multiinstance_cardinality":"","multiinstance_collection":"","multiinstance_variable":"","multiinstance_condition":"","isforcompensation":"false","usertaskassignment":{"assignment":{"type":"static","candidateUsers":[{"value":"121","$$hashKey":"object:33424"},{"value":"212","$$hashKey":"object:33433"}]}},"formkeydefinition":"","formreference":"","formfieldvalidation":true,"duedatedefinition":"","prioritydefinition":"","formproperties":{"formProperties":[{"id":"new_property_1","name":"","type":"string","readable":true,"writable":true,"$$hashKey":"uiGrid-005N"},{"id":"new_property_2","name":"","type":"string","readable":true,"writable":true,"$$hashKey":"uiGrid-005V"},{"id":"new_property_3","name":"","type":"string","readable":true,"writable":true,"$$hashKey":"uiGrid-0063"}]},"tasklisteners":"","skipexpression":"","categorydefinition":""},"stencil":{"id":"UserTask"},"childShapes":[],"outgoing":[{"resourceId":"sid-A5A7E713-5B12-4DE1-A19F-9A1F084DF076"}],"bounds":{"lowerRight":{"x":603.5185184640104,"y":350},"upperLeft":{"x":503.5185184640104,"y":270}},"dockers":[]},{"resourceId":"sid-27CD75AE-18B4-4AC7-A7E4-52778DB4C4A6","properties":{"overrideid":"","name":"","documentation":"","conditionsequenceflow":"","executionlisteners":"","defaultflow":"false","skipexpression":""},"stencil":{"id":"SequenceFlow"},"childShapes":[],"outgoing":[{"resourceId":"sid-32EB8ACE-9075-4732-ACA5-9B733DF1C7DE"}],"bounds":{"lowerRight":{"x":502.6747684640104,"y":310},"upperLeft":{"x":459.3622684640104,"y":310}},"dockers":[{"x":50,"y":40},{"x":50,"y":40}],"target":{"resourceId":"sid-32EB8ACE-9075-4732-ACA5-9B733DF1C7DE"}},{"resourceId":"sid-2BE0F8A2-D52F-4E39-B5C7-A271726CC18A","properties":{"overrideid":"task2-2","name":"任务2-2","documentation":"","asynchronousdefinition":"false","exclusivedefinition":"false","executionlisteners":"","multiinstance_type":"Parallel","multiinstance_cardinality":"","multiinstance_collection":"","multiinstance_variable":"","multiinstance_condition":"","isforcompensation":"false","usertaskassignment":"","formkeydefinition":"","formreference":{"id":"7678e311-614a-11eb-854e-da3bbf51e16d","name":"test_form","key":"form"},"formfieldvalidation":true,"duedatedefinition":"","prioritydefinition":"","formproperties":"","tasklisteners":"","skipexpression":"","categorydefinition":""},"stencil":{"id":"UserTask"},"childShapes":[],"outgoing":[{"resourceId":"sid-53215C78-95C0-4A15-B516-C28EB900DFDA"}],"bounds":{"lowerRight":{"x":603.5185184640104,"y":80},"upperLeft":{"x":503.5185184640104,"y":0}},"dockers":[]},{"resourceId":"sid-3BA228F0-5185-4848-AF84-5FAAAAE22FFB","properties":{"overrideid":"","name":"","documentation":"","conditionsequenceflow":"","executionlisteners":"","defaultflow":"false","skipexpression":""},"stencil":{"id":"SequenceFlow"},"childShapes":[],"outgoing":[{"resourceId":"sid-2BE0F8A2-D52F-4E39-B5C7-A271726CC18A"}],"bounds":{"lowerRight":{"x":502.6747684640104,"y":40},"upperLeft":{"x":459.3622684640104,"y":40}},"dockers":[{"x":50,"y":40},{"x":50.00000000000001,"y":40}],"target":{"resourceId":"sid-2BE0F8A2-D52F-4E39-B5C7-A271726CC18A"}},{"resourceId":"sid-D14A66F4-6582-4EAD-A37E-CD10551D6715","properties":{"overrideid":"","name":"","documentation":"","asynchronousdefinition":"false","exclusivedefinition":"false","sequencefloworder":""},"stencil":{"id":"ExclusiveGateway"},"childShapes":[],"outgoing":[{"resourceId":"sid-061B08C5-FC14-41EE-8020-0506CF69789E"},{"resourceId":"sid-827DB9C4-4451-43FF-BF04-B45ED26A53AC"}],"bounds":{"lowerRight":{"x":691.5185184640104,"y":330},"upperLeft":{"x":651.5185184640104,"y":290}},"dockers":[]},{"resourceId":"sid-A5A7E713-5B12-4DE1-A19F-9A1F084DF076","properties":{"overrideid":"","name":"","documentation":"","conditionsequenceflow":"","executionlisteners":"","defaultflow":"false","skipexpression":""},"stencil":{"id":"SequenceFlow"},"childShapes":[],"outgoing":[{"resourceId":"sid-D14A66F4-6582-4EAD-A37E-CD10551D6715"}],"bounds":{"lowerRight":{"x":650.6513398655989,"y":310.40984312827675},"upperLeft":{"x":604.510697062422,"y":310.21515687172325}},"dockers":[{"x":50,"y":40},{"x":20.5,"y":20.5}],"target":{"resourceId":"sid-D14A66F4-6582-4EAD-A37E-CD10551D6715"}},{"resourceId":"sid-C62BE3FD-9E78-4F72-8037-8896D7EDF45C","properties":{"overrideid":"task4-1","name":"任务4-1","documentation":"","asynchronousdefinition":"false","exclusivedefinition":"false","executionlisteners":"","multiinstance_type":"None","multiinstance_cardinality":"","multiinstance_collection":"","multiinstance_variable":"","multiinstance_condition":"","isforcompensation":"false","usertaskassignment":{"assignment":{"type":"static","candidateGroups":[{"value":"520","$$hashKey":"object:33659"},{"value":"025","$$hashKey":"object:33666"}]}},"formkeydefinition":"","formreference":"","formfieldvalidation":true,"duedatedefinition":"","prioritydefinition":"","formproperties":"","tasklisteners":"","skipexpression":"","categorydefinition":""},"stencil":{"id":"UserTask"},"childShapes":[],"outgoing":[{"resourceId":"sid-3F1AB307-B549-45C3-9CA1-C75D79D05451"}],"bounds":{"lowerRight":{"x":721.5185184640104,"y":230},"upperLeft":{"x":621.5185184640104,"y":150}},"dockers":[]},{"resourceId":"sid-061B08C5-FC14-41EE-8020-0506CF69789E","properties":{"overrideid":"","name":"","documentation":"","conditionsequenceflow":"","executionlisteners":"","defaultflow":"false","skipexpression":""},"stencil":{"id":"SequenceFlow"},"childShapes":[],"outgoing":[{"resourceId":"sid-C62BE3FD-9E78-4F72-8037-8896D7EDF45C"}],"bounds":{"lowerRight":{"x":671.9323378721372,"y":289.7304773585561},"upperLeft":{"x":671.6867303058837,"y":230.53905389144396}},"dockers":[{"x":20.5,"y":20.5},{"x":50,"y":40}],"target":{"resourceId":"sid-C62BE3FD-9E78-4F72-8037-8896D7EDF45C"}},{"resourceId":"sid-129886E4-9AC0-4890-82A7-95CBEACE43A1","properties":{"overrideid":"task5-1","name":"任务5-1","documentation":"","asynchronousdefinition":"false","exclusivedefinition":"false","executionlisteners":"","multiinstance_type":"None","multiinstance_cardinality":"","multiinstance_collection":"","multiinstance_variable":"","multiinstance_condition":"","isforcompensation":"false","usertaskassignment":"","formkeydefinition":"","formreference":"","formfieldvalidation":true,"duedatedefinition":"","prioritydefinition":"","formproperties":"","tasklisteners":"","skipexpression":"","categorydefinition":""},"stencil":{"id":"UserTask"},"childShapes":[],"outgoing":[{"resourceId":"sid-08DBBFCD-7CC8-4296-84A4-DF3C926B6055"}],"bounds":{"lowerRight":{"x":721.5185184640104,"y":470},"upperLeft":{"x":621.5185184640104,"y":390}},"dockers":[]},{"resourceId":"sid-827DB9C4-4451-43FF-BF04-B45ED26A53AC","properties":{"overrideid":"","name":"","documentation":"","conditionsequenceflow":"","executionlisteners":"","defaultflow":"false","skipexpression":""},"stencil":{"id":"SequenceFlow"},"childShapes":[],"outgoing":[{"resourceId":"sid-129886E4-9AC0-4890-82A7-95CBEACE43A1"}],"bounds":{"lowerRight":{"x":671.9362094002164,"y":389.7890712532332},"upperLeft":{"x":671.6867650278044,"y":330.1718662467668}},"dockers":[{"x":20.5,"y":20.5},{"x":50,"y":40}],"target":{"resourceId":"sid-129886E4-9AC0-4890-82A7-95CBEACE43A1"}},{"resourceId":"sid-2905CD66-1FA8-48D3-BACC-ADA782562C45","properties":{"overrideid":"task4-2","name":"任务4-2","documentation":"","asynchronousdefinition":"false","exclusivedefinition":"false","executionlisteners":"","multiinstance_type":"None","multiinstance_cardinality":"","multiinstance_collection":"","multiinstance_variable":"","multiinstance_condition":"","isforcompensation":"false","usertaskassignment":"","formkeydefinition":"","formreference":"","formfieldvalidation":true,"duedatedefinition":"","prioritydefinition":"","formproperties":"","tasklisteners":"","skipexpression":"","categorydefinition":""},"stencil":{"id":"UserTask"},"childShapes":[],"outgoing":[{"resourceId":"sid-87AF773C-0F3D-4AB0-9FF4-D0323870F81D"}],"bounds":{"lowerRight":{"x":907.4074047365089,"y":230},"upperLeft":{"x":807.4074047365089,"y":150}},"dockers":[]},{"resourceId":"sid-3F1AB307-B549-45C3-9CA1-C75D79D05451","properties":{"overrideid":"","name":"","documentation":"","conditionsequenceflow":"","executionlisteners":"","defaultflow":"false","skipexpression":""},"stencil":{"id":"SequenceFlow"},"childShapes":[],"outgoing":[{"resourceId":"sid-2905CD66-1FA8-48D3-BACC-ADA782562C45"}],"bounds":{"lowerRight":{"x":807.0306693203765,"y":190},"upperLeft":{"x":721.8952538801427,"y":190}},"dockers":[{"x":50,"y":40},{"x":50,"y":40}],"target":{"resourceId":"sid-2905CD66-1FA8-48D3-BACC-ADA782562C45"}},{"resourceId":"sid-32F820F3-CB66-44E8-8C06-9A82D0712FEB","properties":{"overrideid":"task5-2","name":"任务5-2","documentation":"","asynchronousdefinition":"false","exclusivedefinition":"false","executionlisteners":"","multiinstance_type":"None","multiinstance_cardinality":"","multiinstance_collection":"","multiinstance_variable":"","multiinstance_condition":"","isforcompensation":"false","usertaskassignment":"","formkeydefinition":"","formreference":"","formfieldvalidation":true,"duedatedefinition":"","prioritydefinition":"","formproperties":"","tasklisteners":"","skipexpression":"","categorydefinition":""},"stencil":{"id":"UserTask"},"childShapes":[],"outgoing":[{"resourceId":"sid-B7F61453-6CE2-4FC0-87F9-9EB1FC776A0F"}],"bounds":{"lowerRight":{"x":721.5185184640104,"y":635.5555539203116},"upperLeft":{"x":621.5185184640104,"y":555.5555539203116}},"dockers":[]},{"resourceId":"sid-08DBBFCD-7CC8-4296-84A4-DF3C926B6055","properties":{"overrideid":"","name":"","documentation":"","conditionsequenceflow":"","executionlisteners":"","defaultflow":"false","skipexpression":""},"stencil":{"id":"SequenceFlow"},"childShapes":[],"outgoing":[{"resourceId":"sid-32F820F3-CB66-44E8-8C06-9A82D0712FEB"}],"bounds":{"lowerRight":{"x":671.5185184640104,"y":555.1067695877373},"upperLeft":{"x":671.5185184640104,"y":470.4487843325742}},"dockers":[{"x":50,"y":40},{"x":50,"y":40}],"target":{"resourceId":"sid-32F820F3-CB66-44E8-8C06-9A82D0712FEB"}},{"resourceId":"sid-57194573-03DA-47E2-9182-0CB4522D6E37","properties":{"overrideid":"task2-3","name":"任务2-3","documentation":"","asynchronousdefinition":"false","exclusivedefinition":"false","executionlisteners":"","multiinstance_type":"None","multiinstance_cardinality":"","multiinstance_collection":"","multiinstance_variable":"","multiinstance_condition":"","isforcompensation":"false","usertaskassignment":"","formkeydefinition":"","formreference":"","formfieldvalidation":true,"duedatedefinition":"","prioritydefinition":"","formproperties":"","tasklisteners":"","skipexpression":"","categorydefinition":""},"stencil":{"id":"UserTask"},"childShapes":[],"outgoing":[{"resourceId":"sid-5A61C793-AA81-4073-ABEF-7DEF4CC26328"}],"bounds":{"lowerRight":{"x":753.5185184640104,"y":80},"upperLeft":{"x":653.5185184640104,"y":0}},"dockers":[]},{"resourceId":"sid-53215C78-95C0-4A15-B516-C28EB900DFDA","properties":{"overrideid":"","name":"","documentation":"","conditionsequenceflow":"","executionlisteners":"","defaultflow":"false","skipexpression":""},"stencil":{"id":"SequenceFlow"},"childShapes":[],"outgoing":[{"resourceId":"sid-57194573-03DA-47E2-9182-0CB4522D6E37"}],"bounds":{"lowerRight":{"x":653.2997684640104,"y":40},"upperLeft":{"x":603.7372684640104,"y":40}},"dockers":[{"x":50.00000000000001,"y":40},{"x":50,"y":40}],"target":{"resourceId":"sid-57194573-03DA-47E2-9182-0CB4522D6E37"}},{"resourceId":"sid-F2054914-2ABF-4D57-9CB7-5D7F8FF31898","properties":{"overrideid":"task5-4","name":"任务5-4","documentation":"","asynchronousdefinition":"false","exclusivedefinition":"false","executionlisteners":"","multiinstance_type":"None","multiinstance_cardinality":"","multiinstance_collection":"","multiinstance_variable":"","multiinstance_condition":"","isforcompensation":"false","usertaskassignment":"","formkeydefinition":"","formreference":"","formfieldvalidation":true,"duedatedefinition":"","prioritydefinition":"","formproperties":"","tasklisteners":"","skipexpression":"","categorydefinition":""},"stencil":{"id":"UserTask"},"childShapes":[],"outgoing":[{"resourceId":"sid-5EF79811-BD18-4EC6-82D8-05C3CF7BC7BB"}],"bounds":{"lowerRight":{"x":1062.96296012854,"y":365},"upperLeft":{"x":962.96296012854,"y":285}},"dockers":[]},{"resourceId":"sid-5A61C793-AA81-4073-ABEF-7DEF4CC26328","properties":{"overrideid":"","name":"","documentation":"","conditionsequenceflow":"","executionlisteners":"","defaultflow":"false","skipexpression":""},"stencil":{"id":"SequenceFlow"},"childShapes":[],"outgoing":[{"resourceId":"sid-F2054914-2ABF-4D57-9CB7-5D7F8FF31898"}],"bounds":{"lowerRight":{"x":1012.9629601285401,"y":284.478515625},"upperLeft":{"x":754.0779798243452,"y":40}},"dockers":[{"x":50,"y":40},{"x":1012.9629601285401,"y":40},{"x":50.00000000000006,"y":40}],"target":{"resourceId":"sid-F2054914-2ABF-4D57-9CB7-5D7F8FF31898"}},{"resourceId":"sid-2B1E479F-EF20-4982-9EF4-D233FC3F9840","properties":{"overrideid":"task5-3","name":"任务5-3","documentation":"","asynchronousdefinition":"false","exclusivedefinition":"false","executionlisteners":"","multiinstance_type":"None","multiinstance_cardinality":"","multiinstance_collection":"","multiinstance_variable":"","multiinstance_condition":"","isforcompensation":"false","usertaskassignment":"","formkeydefinition":"","formreference":"","formfieldvalidation":true,"duedatedefinition":"","prioritydefinition":"","formproperties":"","tasklisteners":"","skipexpression":"","categorydefinition":""},"stencil":{"id":"UserTask"},"childShapes":[],"outgoing":[{"resourceId":"sid-19C02CEA-417C-4D4D-8D32-7A21731A39C8"}],"bounds":{"lowerRight":{"x":907.407404736509,"y":453.8888877442181},"upperLeft":{"x":807.4074047365089,"y":373.8888877442181}},"dockers":[]},{"resourceId":"sid-87AF773C-0F3D-4AB0-9FF4-D0323870F81D","properties":{"overrideid":"","name":"","documentation":"","conditionsequenceflow":"","executionlisteners":"","defaultflow":"false","skipexpression":""},"stencil":{"id":"SequenceFlow"},"childShapes":[],"outgoing":[{"resourceId":"sid-2B1E479F-EF20-4982-9EF4-D233FC3F9840"}],"bounds":{"lowerRight":{"x":857.4074047365089,"y":373.5334191954298},"upperLeft":{"x":857.4074047365089,"y":230.35546854878834}},"dockers":[{"x":50,"y":40},{"x":50.00000000000006,"y":40}],"target":{"resourceId":"sid-2B1E479F-EF20-4982-9EF4-D233FC3F9840"}},{"resourceId":"sid-B7F61453-6CE2-4FC0-87F9-9EB1FC776A0F","properties":{"overrideid":"","name":"","documentation":"","conditionsequenceflow":"","executionlisteners":"","defaultflow":"false","skipexpression":"","showdiamondmarker":false},"stencil":{"id":"SequenceFlow"},"childShapes":[],"outgoing":[{"resourceId":"sid-2B1E479F-EF20-4982-9EF4-D233FC3F9840"}],"bounds":{"lowerRight":{"x":857.4074047365089,"y":595.5555539203116},"upperLeft":{"x":721.8952538801427,"y":454.6284709702385}},"dockers":[{"x":50,"y":40},{"x":857.4074047365089,"y":595.5555539203116},{"x":50,"y":39.99999999999994}],"target":{"resourceId":"sid-2B1E479F-EF20-4982-9EF4-D233FC3F9840"}},{"resourceId":"sid-19C02CEA-417C-4D4D-8D32-7A21731A39C8","properties":{"overrideid":"","name":"","documentation":"","conditionsequenceflow":"","executionlisteners":"","defaultflow":"false","skipexpression":"","showdiamondmarker":false},"stencil":{"id":"SequenceFlow"},"childShapes":[],"outgoing":[{"resourceId":"sid-F2054914-2ABF-4D57-9CB7-5D7F8FF31898"}],"bounds":{"lowerRight":{"x":1012.9629601285401,"y":413.8888877442181},"upperLeft":{"x":908.2337935730188,"y":365.5833328235972}},"dockers":[{"x":50,"y":40},{"x":1012.9629601285401,"y":413.8888877442181},{"x":50.00000000000006,"y":40}],"target":{"resourceId":"sid-F2054914-2ABF-4D57-9CB7-5D7F8FF31898"}},{"resourceId":"sid-30F3BBF2-BB00-4748-9553-7D7D691989C4","properties":{"overrideid":"end1-1","name":"结束","documentation":"","executionlisteners":""},"stencil":{"id":"EndNoneEvent"},"childShapes":[],"outgoing":[],"bounds":{"lowerRight":{"x":1139.1111078406232,"y":339},"upperLeft":{"x":1111.1111078406232,"y":311}},"dockers":[]},{"resourceId":"sid-5EF79811-BD18-4EC6-82D8-05C3CF7BC7BB","properties":{"overrideid":"","name":"","documentation":"","conditionsequenceflow":"","executionlisteners":"","defaultflow":"false","skipexpression":""},"stencil":{"id":"SequenceFlow"},"childShapes":[],"outgoing":[{"resourceId":"sid-30F3BBF2-BB00-4748-9553-7D7D691989C4"}],"bounds":{"lowerRight":{"x":1110.9687467806134,"y":325},"upperLeft":{"x":1063.0277747525763,"y":325}},"dockers":[{"x":50,"y":40},{"x":14,"y":14}],"target":{"resourceId":"sid-30F3BBF2-BB00-4748-9553-7D7D691989C4"}}],"stencil":{"id":"BPMNDiagram"},"stencilset":{"namespace":"http://b3mn.org/stencilset/bpmn2.0#","url":"../editor/stencilsets/bpmn2.0/bpmn2.0.json"}}

在这里插入图片描述

{"modelId":"c1c826d1-6554-11eb-9343-da3bbf51e16d","bounds":{"lowerRight":{"x":1200,"y":1050},"upperLeft":{"x":0,"y":0}},"properties":{"process_id":"xxxx","name":"xixi","documentation":"45165","process_author":"","process_version":"","process_namespace":"http://www.flowable.org/processdef","process_historylevel":"","isexecutable":true,"dataproperties":"","executionlisteners":"","eventlisteners":"","signaldefinitions":"","messagedefinitions":"","escalationdefinitions":"","process_potentialstarteruser":"","process_potentialstartergroup":"","iseagerexecutionfetch":"false"},"childShapes":[{"resourceId":"startEvent1","properties":{"overrideid":"star1","name":"开始","documentation":"","executionlisteners":"","initiator":"","formkeydefinition":"","formreference":"","formfieldvalidation":true,"formproperties":""},"stencil":{"id":"StartNoneEvent"},"childShapes":[],"outgoing":[{"resourceId":"sid-12E03102-F71B-423F-8D23-24BD989BC0D0"}],"bounds":{"lowerRight":{"x":130,"y":193},"upperLeft":{"x":100,"y":163}},"dockers":[]},{"resourceId":"sid-498AA34F-9B9C-46B7-89DA-534310C05640","properties":{"overrideid":"task1","name":"任务1","documentation":"","asynchronousdefinition":"false","exclusivedefinition":"false","executionlisteners":"","multiinstance_type":"None","multiinstance_cardinality":"","multiinstance_collection":"","multiinstance_variable":"","multiinstance_condition":"","isforcompensation":"false","usertaskassignment":{"assignment":{"type":"static","candidateUsers":[{"value":"606","$$hashKey":"object:39857"},{"value":"605","$$hashKey":"object:39866"},{"value":"604","$$hashKey":"object:39871"}]}},"formkeydefinition":"","formreference":"","formfieldvalidation":true,"duedatedefinition":"","prioritydefinition":"","formproperties":"","tasklisteners":"","skipexpression":"","categorydefinition":""},"stencil":{"id":"UserTask"},"childShapes":[],"outgoing":[{"resourceId":"sid-6ABDA55E-5917-4722-AA91-731F85770354"}],"bounds":{"lowerRight":{"x":275,"y":218},"upperLeft":{"x":175,"y":138}},"dockers":[]},{"resourceId":"sid-12E03102-F71B-423F-8D23-24BD989BC0D0","properties":{"overrideid":"","name":"","documentation":"","conditionsequenceflow":"","executionlisteners":"","defaultflow":"false","skipexpression":""},"stencil":{"id":"SequenceFlow"},"childShapes":[],"outgoing":[{"resourceId":"sid-498AA34F-9B9C-46B7-89DA-534310C05640"}],"bounds":{"lowerRight":{"x":174.15625,"y":178},"upperLeft":{"x":130.609375,"y":178}},"dockers":[{"x":15,"y":15},{"x":50,"y":40}],"target":{"resourceId":"sid-498AA34F-9B9C-46B7-89DA-534310C05640"}},{"resourceId":"sid-D92E3AC5-6D42-4F3C-8682-EA59B5048711","properties":{"overrideid":"task2","name":"任务2","documentation":"","asynchronousdefinition":"false","exclusivedefinition":"false","executionlisteners":"","multiinstance_type":"None","multiinstance_cardinality":"","multiinstance_collection":"","multiinstance_variable":"","multiinstance_condition":"","isforcompensation":"false","usertaskassignment":{"assignment":{"type":"static","assignee":"520"}},"formkeydefinition":"","formreference":"","formfieldvalidation":true,"duedatedefinition":"","prioritydefinition":"","formproperties":"","tasklisteners":"","skipexpression":"","categorydefinition":""},"stencil":{"id":"UserTask"},"childShapes":[],"outgoing":[{"resourceId":"sid-A55E38FA-5A79-45E0-94AD-F15A5CAB85E7"},{"resourceId":"sid-CD1DA3B6-D68A-431A-AAAF-DBF24C6CE008"}],"bounds":{"lowerRight":{"x":420,"y":218},"upperLeft":{"x":320,"y":138}},"dockers":[]},{"resourceId":"sid-6ABDA55E-5917-4722-AA91-731F85770354","properties":{"overrideid":"","name":"","documentation":"","conditionsequenceflow":"","executionlisteners":"","defaultflow":"false","skipexpression":""},"stencil":{"id":"SequenceFlow"},"childShapes":[],"outgoing":[{"resourceId":"sid-D92E3AC5-6D42-4F3C-8682-EA59B5048711"}],"bounds":{"lowerRight":{"x":319.15625,"y":178},"upperLeft":{"x":275.84375,"y":178}},"dockers":[{"x":50,"y":40},{"x":50,"y":40}],"target":{"resourceId":"sid-D92E3AC5-6D42-4F3C-8682-EA59B5048711"}},{"resourceId":"sid-A16650B6-9B82-4A37-93D8-FF01B1114AF9","properties":{"overrideid":"task3-2","name":"任务3-2","documentation":"","asynchronousdefinition":"false","exclusivedefinition":"false","executionlisteners":"","multiinstance_type":"None","multiinstance_cardinality":"","multiinstance_collection":"","multiinstance_variable":"","multiinstance_condition":"","isforcompensation":"false","usertaskassignment":{"assignment":{"type":"idm","idm":{"type":"user"}}},"formkeydefinition":"","formreference":{"id":"7678e311-614a-11eb-854e-da3bbf51e16d","name":"test_form","key":"form"},"formfieldvalidation":true,"duedatedefinition":"","prioritydefinition":"","formproperties":"","tasklisteners":"","skipexpression":"","categorydefinition":""},"stencil":{"id":"UserTask"},"childShapes":[],"outgoing":[{"resourceId":"sid-786E9A27-7B9D-4085-8A01-BCA6C3C6896F"}],"bounds":{"lowerRight":{"x":630.5,"y":290},"upperLeft":{"x":530.5,"y":210}},"dockers":[]},{"resourceId":"sid-A212F0DA-7A85-41E0-ADEB-B857E7B59091","properties":{"overrideid":"task3-1","name":"任务3-1","documentation":"","asynchronousdefinition":"false","exclusivedefinition":"false","executionlisteners":"","multiinstance_type":"None","multiinstance_cardinality":"","multiinstance_collection":"","multiinstance_variable":"","multiinstance_condition":"","isforcompensation":"false","usertaskassignment":{"assignment":{"type":"static","candidateGroups":[{"value":"205","$$hashKey":"object:40640"},{"value":"206","$$hashKey":"object:40647"},{"value":"207","$$hashKey":"object:40652"}]}},"formkeydefinition":"","formreference":"","formfieldvalidation":true,"duedatedefinition":"","prioritydefinition":"","formproperties":{"formProperties":[{"id":"new_property_1","name":"","type":"string","readable":true,"writable":true,"$$hashKey":"uiGrid-006T"},{"id":"new_property_2","name":"","type":"string","readable":true,"writable":true,"$$hashKey":"uiGrid-0071"}]},"tasklisteners":"","skipexpression":"","categorydefinition":""},"stencil":{"id":"UserTask"},"childShapes":[],"outgoing":[{"resourceId":"sid-5CD7CD91-E75B-460B-8497-5027EBFF64A5"}],"bounds":{"lowerRight":{"x":630.5,"y":125},"upperLeft":{"x":530.5,"y":45}},"dockers":[]},{"resourceId":"sid-39C7519F-230E-48A0-87D4-D264AB75E37C","properties":{"overrideid":"task4-1","name":"任务4-1","documentation":"","asynchronousdefinition":"false","exclusivedefinition":"false","executionlisteners":"","multiinstance_type":"None","multiinstance_cardinality":"","multiinstance_collection":"","multiinstance_variable":"","multiinstance_condition":"","isforcompensation":"false","usertaskassignment":{"assignment":{"type":"static","candidateUsers":[{"value":"110","$$hashKey":"object:41095"},{"value":"120","$$hashKey":"object:41104"},{"value":"130","$$hashKey":"object:41109"}]}},"formkeydefinition":"","formreference":"","formfieldvalidation":true,"duedatedefinition":"","prioritydefinition":"","formproperties":"","tasklisteners":"","skipexpression":"","categorydefinition":""},"stencil":{"id":"UserTask"},"childShapes":[],"outgoing":[{"resourceId":"sid-5B244C7F-E03D-44C1-A73F-0458AAC7544E"}],"bounds":{"lowerRight":{"x":790,"y":125},"upperLeft":{"x":690,"y":45}},"dockers":[]},{"resourceId":"sid-E957CF63-0E29-48DA-B867-D453699EC0A3","properties":{"overrideid":"task4-2","name":"任务4-2","documentation":"66666666666","asynchronousdefinition":"false","exclusivedefinition":"false","executionlisteners":"","multiinstance_type":"None","multiinstance_cardinality":"","multiinstance_collection":"","multiinstance_variable":"","multiinstance_condition":"","isforcompensation":"false","usertaskassignment":{"assignment":{"type":"static","assignee":"666","candidateGroups":[{"value":"151","$$hashKey":"object:41317"},{"value":"152","$$hashKey":"object:41324"},{"value":"153","$$hashKey":"object:41329"}]}},"formkeydefinition":"","formreference":{"id":"7678e311-614a-11eb-854e-da3bbf51e16d","name":"test_form","key":"form"},"formfieldvalidation":true,"duedatedefinition":"","prioritydefinition":"","formproperties":"","tasklisteners":"","skipexpression":"","categorydefinition":""},"stencil":{"id":"UserTask"},"childShapes":[],"outgoing":[{"resourceId":"sid-E21A031E-D397-4068-8AC2-7980B4A06FFD"}],"bounds":{"lowerRight":{"x":790,"y":290},"upperLeft":{"x":690,"y":210}},"dockers":[]},{"resourceId":"sid-E25E8CD2-C88C-458D-B222-FCC48E266D4D","properties":{"overrideid":"task5","name":"任务5","documentation":"","asynchronousdefinition":"false","exclusivedefinition":"false","executionlisteners":"","multiinstance_type":"None","multiinstance_cardinality":"","multiinstance_collection":"6666555","multiinstance_variable":"","multiinstance_condition":"","isforcompensation":"false","usertaskassignment":{"assignment":{"type":"static","candidateUsers":[{"value":"454","$$hashKey":"object:41860"},{"value":"545","$$hashKey":"object:41865"},{"value":"654","$$hashKey":"object:41870"}]}},"formkeydefinition":"45","formreference":{"id":"7678e311-614a-11eb-854e-da3bbf51e16d","name":"test_form","key":"form"},"formfieldvalidation":true,"duedatedefinition":"","prioritydefinition":"4520","formproperties":"","tasklisteners":"","skipexpression":"","categorydefinition":""},"stencil":{"id":"UserTask"},"childShapes":[],"outgoing":[{"resourceId":"sid-EA4339C9-87CC-40AD-B23A-A0AAB92CBB08"}],"bounds":{"lowerRight":{"x":940,"y":200},"upperLeft":{"x":840,"y":120}},"dockers":[]},{"resourceId":"sid-5E81FE47-4890-40A1-AE2B-54D16791A603","properties":{"overrideid":"end","name":"结束","documentation":"112321","executionlisteners":""},"stencil":{"id":"EndNoneEvent"},"childShapes":[],"outgoing":[],"bounds":{"lowerRight":{"x":1013,"y":174},"upperLeft":{"x":985,"y":146}},"dockers":[]},{"resourceId":"sid-EA4339C9-87CC-40AD-B23A-A0AAB92CBB08","properties":{"overrideid":"","name":"","documentation":"","conditionsequenceflow":"","executionlisteners":"","defaultflow":"false","skipexpression":""},"stencil":{"id":"SequenceFlow"},"childShapes":[],"outgoing":[{"resourceId":"sid-5E81FE47-4890-40A1-AE2B-54D16791A603"}],"bounds":{"lowerRight":{"x":984.375,"y":160},"upperLeft":{"x":940.390625,"y":160}},"dockers":[{"x":50,"y":40},{"x":14,"y":14}],"target":{"resourceId":"sid-5E81FE47-4890-40A1-AE2B-54D16791A603"}},{"resourceId":"sid-CD1DA3B6-D68A-431A-AAAF-DBF24C6CE008","properties":{"overrideid":"he2","name":"线2","documentation":"151515151","conditionsequenceflow":{"expression":{"type":"static","staticValue":"<=7"}},"executionlisteners":"","defaultflow":true,"skipexpression":"","showdiamondmarker":false},"stencil":{"id":"SequenceFlow"},"childShapes":[],"outgoing":[{"resourceId":"sid-A212F0DA-7A85-41E0-ADEB-B857E7B59091"}],"bounds":{"lowerRight":{"x":530.1640625,"y":137.765625},"upperLeft":{"x":370,"y":85}},"dockers":[{"x":50,"y":40},{"x":370,"y":85},{"x":50,"y":40}],"target":{"resourceId":"sid-A212F0DA-7A85-41E0-ADEB-B857E7B59091"}},{"resourceId":"sid-A55E38FA-5A79-45E0-94AD-F15A5CAB85E7","properties":{"overrideid":"xi","name":"线1","documentation":"000010010","conditionsequenceflow":{"expression":{"type":"static","staticValue":">=7"}},"executionlisteners":"","defaultflow":false,"skipexpression":""},"stencil":{"id":"SequenceFlow"},"childShapes":[],"outgoing":[{"resourceId":"sid-A16650B6-9B82-4A37-93D8-FF01B1114AF9"}],"bounds":{"lowerRight":{"x":530.1640625,"y":250},"upperLeft":{"x":370,"y":218.375}},"dockers":[{"x":50,"y":40},{"x":370,"y":250},{"x":50,"y":40}],"target":{"resourceId":"sid-A16650B6-9B82-4A37-93D8-FF01B1114AF9"}},{"resourceId":"sid-786E9A27-7B9D-4085-8A01-BCA6C3C6896F","properties":{"overrideid":"xian3","name":"线3","documentation":"","conditionsequenceflow":"","executionlisteners":"","defaultflow":"false","skipexpression":""},"stencil":{"id":"SequenceFlow"},"childShapes":[],"outgoing":[{"resourceId":"sid-E957CF63-0E29-48DA-B867-D453699EC0A3"}],"bounds":{"lowerRight":{"x":689.15625,"y":250},"upperLeft":{"x":631.34375,"y":250}},"dockers":[{"x":50,"y":40},{"x":50,"y":40}],"target":{"resourceId":"sid-E957CF63-0E29-48DA-B867-D453699EC0A3"}},{"resourceId":"sid-5CD7CD91-E75B-460B-8497-5027EBFF64A5","properties":{"overrideid":"xian4","name":"线4","documentation":"","conditionsequenceflow":"","executionlisteners":"","defaultflow":"false","skipexpression":""},"stencil":{"id":"SequenceFlow"},"childShapes":[],"outgoing":[{"resourceId":"sid-39C7519F-230E-48A0-87D4-D264AB75E37C"}],"bounds":{"lowerRight":{"x":689.15625,"y":85},"upperLeft":{"x":631.34375,"y":85}},"dockers":[{"x":50,"y":40},{"x":50,"y":40}],"target":{"resourceId":"sid-39C7519F-230E-48A0-87D4-D264AB75E37C"}},{"resourceId":"sid-5B244C7F-E03D-44C1-A73F-0458AAC7544E","properties":{"overrideid":"xian5","name":"线5","documentation":"","conditionsequenceflow":{"expression":{"type":"static","staticValue":"==7"}},"executionlisteners":"","defaultflow":"false","skipexpression":""},"stencil":{"id":"SequenceFlow"},"childShapes":[],"outgoing":[{"resourceId":"sid-E25E8CD2-C88C-458D-B222-FCC48E266D4D"}],"bounds":{"lowerRight":{"x":890,"y":119.15625},"upperLeft":{"x":790.21875,"y":85}},"dockers":[{"x":50,"y":40},{"x":890,"y":85},{"x":50,"y":40}],"target":{"resourceId":"sid-E25E8CD2-C88C-458D-B222-FCC48E266D4D"}},{"resourceId":"sid-E21A031E-D397-4068-8AC2-7980B4A06FFD","properties":{"overrideid":"xian6","name":"线6","documentation":"45454","conditionsequenceflow":{"expression":{"type":"static","staticValue":"==1"}},"executionlisteners":"","defaultflow":true,"skipexpression":""},"stencil":{"id":"SequenceFlow"},"childShapes":[],"outgoing":[{"resourceId":"sid-E25E8CD2-C88C-458D-B222-FCC48E266D4D"}],"bounds":{"lowerRight":{"x":890,"y":250},"upperLeft":{"x":790.21875,"y":200.375}},"dockers":[{"x":50,"y":40},{"x":890,"y":250},{"x":50,"y":40}],"target":{"resourceId":"sid-E25E8CD2-C88C-458D-B222-FCC48E266D4D"}}],"stencil":{"id":"BPMNDiagram"},"stencilset":{"namespace":"http://b3mn.org/stencilset/bpmn2.0#","url":"../editor/stencilsets/bpmn2.0/bpmn2.0.json"}}

根据这个我们就可以让前端自己设计自己的流程设计器,从而不用在想办法去生成BPMN.XML文件插入数据,去部署了,前端在自定义流程设计器时只要遵循和参考官方的Json格式,任务节点全部都在childShapes字段里 便可!
贴出设计思想:
传输Json定义:

{
“fourKingsNodes”: [{
“activity”: 0,
“conditions”: [{
“criteria”: “”,
“l_id”: 1131469,
“n_id”: 1131470
}
],
“formKey”: “test”,
“id”: 1131469,
“isCheckbox”: 2,
“isEmpty”: 0,
“isMultiple”: 0,
“scope”: 2,
“status”: 0,
“title”: “h26fb”,
“type”: “start”,
“userGroup”: [0],
“userId”: [0],
“userName”: [“string”]
}, {
“activity”: 0,
“conditions”: [{
“criteria”: “”,
“l_id”: 1131470,
“n_id”: 1131471
}
],
“formKey”: “test”,
“id”: 1131470,
“isCheckbox”: 2,
“isEmpty”: 0,
“isMultiple”: 0,
“scope”: 2,
“status”: 0,
“title”: “h26fb”,
“type”: “check”,
“userGroup”: [0],
“userId”: [0],
“userName”: [“string”]
}, {
“activity”: 0,
“conditions”: [{
“criteria”: “”,
“l_id”: 1131471,
“n_id”: 1131472
}
],
“formKey”: “test”,
“id”: 1131471,
“isCheckbox”: 1,
“isEmpty”: 1,
“isMultiple”: 0,
“scope”: 2,
“status”: 0,
“title”: “45fd6”,
“type”: “check”,
“userGroup”: [0],
“userId”: [0],
“userName”: [“string”]
}, {
“activity”: 0,
“conditions”: [{
“criteria”: “”,
“l_id”: 1131472,
“n_id”: 1131473
}
],
“formKey”: “test”,
“id”: 1131472,
“isCheckbox”: 2,
“isEmpty”: 0,
“isMultiple”: 0,
“scope”: 1,
“status”: 0,
“title”: “232f2”,
“type”: “check”,
“userGroup”: [0],
“userId”: [0],
“userName”: [“string”]
}, {
“activity”: 0,
“conditions”: [{
“criteria”: “”,
“l_id”: 1131473,
“n_id”: 1131474
}
],
“formKey”: “test”,
“id”: 1131473,
“isCheckbox”: 1,
“isEmpty”: 1,
“isMultiple”: 0,
“scope”: 2,
“status”: 0,
“title”: “6a3aa”,
“type”: “transact”,
“userGroup”: [0],
“userId”: [0],
“userName”: [“string”]
}, {
“activity”: 0,
“conditions”: [{
“criteria”: “”,
“l_id”: 1131474,
“n_id”: 1131475
}
],
“formKey”: “test”,
“id”: 1131474,
“isCheckbox”: 1,
“isEmpty”: 0,
“isMultiple”: 0,
“scope”: 1,
“status”: 0,
“title”: “41h56”,
“type”: “check”,
“userGroup”: [0],
“userId”: [0],
“userName”: [“string”]
}, {
“activity”: 0,
“conditions”: [{
“criteria”: “”,
“l_id”: 1131475,
“n_id”: 1131476
}
],
“formKey”: “test”,
“id”: 1131475,
“isCheckbox”: 1,
“isEmpty”: 1,
“isMultiple”: 0,
“scope”: 1,
“status”: 0,
“title”: “51d56”,
“type”: “transact”,
“userGroup”: [0],
“userId”: [0],
“userName”: [“string”]
}, {
“activity”: 0,
“conditions”: [{
“criteria”: “”,
“l_id”: 1131476,
“n_id”: 1131477
}
],
“formKey”: “test”,
“id”: 1131476,
“isCheckbox”: 1,
“isEmpty”: 1,
“isMultiple”: 0,
“scope”: 1,
“status”: 0,
“title”: “23631”,
“type”: “transact”,
“userGroup”: [0],
“userId”: [0],
“userName”: [“string”]
}, {
“activity”: 0,
“conditions”: [{
“criteria”: “”,
“l_id”: 1131477,
“n_id”: 1131478
}
],
“formKey”: “test”,
“id”: 1131477,
“isCheckbox”: 2,
“isEmpty”: 1,
“isMultiple”: 0,
“scope”: 2,
“status”: 0,
“title”: “56491”,
“type”: “transact”,
“userGroup”: [0],
“userId”: [0],
“userName”: [“string”]
}, {
“activity”: 0,
“conditions”: [{
“criteria”: “”,
“l_id”: 1131478,
“n_id”: 1131479
}
],
“formKey”: “test”,
“id”: 1131478,
“isCheckbox”: 1,
“isEmpty”: 1,
“isMultiple”: 0,
“scope”: 1,
“status”: 0,
“title”: “52g5e”,
“type”: “check”,
“userGroup”: [0],
“userId”: [0],
“userName”: [“string”]
}, {
“activity”: 0,
“conditions”: [{
“criteria”: “15",
“l_id”: 1131479,
“n_id”: 1131480
}, {
“criteria”: "2
5”,
“l_id”: 1131479,
“n_id”: 1131481
}
],
“formKey”: “test”,
“id”: 1131479,
“isCheckbox”: 1,
“isEmpty”: 1,
“isMultiple”: 0,
“scope”: 2,
“status”: 0,
“title”: “h312344h”,
“type”: “term”,
“userGroup”: [0],
“userId”: [0],
“userName”: [“string”]
}, {
“activity”: 0,
“conditions”: [{
“criteria”: “”,
“l_id”: 1131480,
“n_id”: 1131482
}
],
“formKey”: “test”,
“id”: 1131480,
“isCheckbox”: 1,
“isEmpty”: 1,
“isMultiple”: 0,
“scope”: 2,
“status”: 0,
“title”: “h33624h”,
“type”: “check”,
“userGroup”: [0],
“userId”: [0],
“userName”: [“string”]
}, {
“activity”: 0,
“conditions”: [{
“criteria”: “”,
“l_id”: 1131481,
“n_id”: 1131483
}
],
“formKey”: “test”,
“id”: 1131481,
“isCheckbox”: 1,
“isEmpty”: 1,
“isMultiple”: 0,
“scope”: 2,
“status”: 0,
“title”: “h3432s4h”,
“type”: “check”,
“userGroup”: [0],
“userId”: [0],
“userName”: [“string”]
}, {
“activity”: 0,
“conditions”: [{
“criteria”: “”,
“l_id”: 1131482,
“n_id”: 1131484
}
],
“formKey”: “test”,
“id”: 1131482,
“isCheckbox”: 1,
“isEmpty”: 1,
“isMultiple”: 0,
“scope”: 2,
“status”: 0,
“title”: “h3s3454h”,
“type”: “transact”,
“userGroup”: [0],
“userId”: [0],
“userName”: [“string”]
}, {
“activity”: 0,
“conditions”: [{
“criteria”: “”,
“l_id”: 1131483,
“n_id”: 1131484
}
],
“formKey”: “test”,
“id”: 1131483,
“isCheckbox”: 1,
“isEmpty”: 1,
“isMultiple”: 0,
“scope”: 2,
“status”: 0,
“title”: “h3sascs4h”,
“type”: “transact”,
“userGroup”: [0],
“userId”: [0],
“userName”: [“string”]
},{
“activity”: 0,
“conditions”: [{
“criteria”: “”,
“l_id”: 1131484,
“n_id”: “”
}
],
“formKey”: “test”,
“id”: 1131484,
“isCheckbox”: 1,
“isEmpty”: 1,
“isMultiple”: 0,
“scope”: 2,
“status”: 0,
“title”: “h3s1s4h”,
“type”: “event”,
“userGroup”: [0],
“userId”: [0],
“userName”: [“string”]
}
]}

package com.echronos.workflow.service.impl;


import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.echronos.workflow.common.PaintFactory;
import com.echronos.workflow.common.cmd.DeployModelCmd;
import com.echronos.workflow.dao.FlowableFormMapper;
import com.echronos.workflow.entity.FlowableForm;
import com.echronos.workflow.node.Conditions;
import com.echronos.workflow.service.ModelService;
import com.echronos.workflow.util.FastJsonUtils;
import com.echronos.workflow.vo.ModelRequest;
import com.echronos.workflow.vo.query.ProcessModelVo;
import com.echronos.workflow.vo.query.WorkSetModelVo;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.flowable.bpmn.converter.BpmnXMLConverter;
import org.flowable.bpmn.model.*;
import org.flowable.bpmn.model.Process;
import org.flowable.editor.language.json.converter.BpmnJsonConverter;
import org.flowable.engine.*;
import org.flowable.engine.repository.Deployment;
import org.flowable.engine.repository.DeploymentBuilder;
import org.flowable.validation.ProcessValidator;
import org.flowable.validation.ProcessValidatorFactory;
import org.flowable.validation.ValidationError;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import javax.xml.stream.XMLInputFactory;
import javax.xml.stream.XMLStreamReader;
import java.io.*;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

@Service
public class ModelServiceImpl implements ModelService {

    @Autowired
    private FlowableFormMapper flowableFormMapper;


    @Autowired
    private RepositoryService repositoryService;


    @Autowired
    protected ManagementService managementService;

    /**
     * 添加流程设计图
     * @param workSetModelVo
     */
    @Override
    public void addflowableDesign(WorkSetModelVo workSetModelVo) {

        PaintFactory paintFactory = new PaintFactory();

        //创建bpmn模型
        BpmnModel model = new BpmnModel();
        Process process = new Process();
        model.addProcess(process);

        //获取表单ID当做Bpmn.xml的流程ID名称
        List<FlowableForm> forms = flowableFormMapper.selectList(new QueryWrapper<FlowableForm>());
        // 获取表单新增数据的iD作为用户自定义id
        String formId = forms.get(forms.size() - 1).getId().toString();
        //设置bpmn模型名称Id
        process.setId("Work"+formId+1); //xml用户自定义Id
        process.setName(forms.get(forms.size() - 1).getName());
        //画审核人任务节点
        workSetModelVo.getFourKingsNodes().forEach(
                fourKingsNode -> {
                    //check(审核),duplicate(抄送),term(条件),transact(办理)
                    switch(fourKingsNode.getType()){
                        case "start":  //开始
                            // 此节点为开始节点
                            process.addFlowElement(paintFactory.createStartEvent(fourKingsNode.getId(),fourKingsNode.getTitle()));
                            //画线
                            fourKingsNode.getConditions().forEach( conditions -> {
                            process.addFlowElement(paintFactory.createSequenceFlow(conditions.getT_id(),conditions.getN_id(),conditions.getCriteria()));
                        });
                            break;
                        case "event":  //结束
                            //此节点为结束节点 (结束节点不画线)
                            process.addFlowElement(paintFactory.createEndEvent(fourKingsNode.getId(),fourKingsNode.getTitle()));
                          /*  //画线
                            fourKingsNode.getConditions().forEach( conditions -> {
                                process.addFlowElement(paintFactory.createSequenceFlow(conditions.getL_id(),conditions.getN_id(),conditions.getCriteria()));
                            });*/
                            break;
                         case "transact":  //代理
                            // 此节点审核人 无法拒绝
                           paintFactory.funZone(paintFactory,process,fourKingsNode);
                           break;
                         case "duplicate": //抄送
                           //此节点审核人 无法审批,自动通过
                             paintFactory.funZone(paintFactory,process,fourKingsNode);
                         break;
                         case "term": // 条件
                          //当用户点击条件时,获取对象生成网关
                            process.addFlowElement(paintFactory.createExclusiveGateway(fourKingsNode.getId(),fourKingsNode.getTitle()));
                               //获取条件 数组
                             List<Conditions> conditionsList = fourKingsNode.getConditions();
                             // 获取条件数组中的每一个元素
                             for (Conditions conditions : conditionsList) {
                                 process.addFlowElement(paintFactory.createSequenceFlow(conditions.getT_id(),conditions.getN_id(),conditions.getCriteria()));
                                 }
                             break;
                         default:
                             // 如果以上都不满足 则为审核节点
                             paintFactory.funZone(paintFactory,process,fourKingsNode);
                           break;
                       }


                }

        );

        // 将bpmnModel 转化成 xml文件
        BpmnXMLConverter bpmnXMLConverter=new BpmnXMLConverter();
        byte[] convertToXML = bpmnXMLConverter.convertToXML(model,"UTF-8");
        String bytes=new String(convertToXML);
        //输出文件 查看是否正确
        System.out.println(bytes);
        //验证bpmnModel 是否是正确的bpmn xml文件
        ProcessValidatorFactory processValidatorFactory=new ProcessValidatorFactory();
        ProcessValidator defaultProcessValidator = processValidatorFactory.createDefaultProcessValidator();
        //验证失败信息的封装ValidationError 如果长度大于0证明流程图有问题
        List<ValidationError> validate = defaultProcessValidator.validate(model);
        //打印信息
        System.out.println(validate.toString());
        System.out.println(validate.size());

        // 部署流程定义 并存入act_ge_bytearray表中
        ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();
        Deployment deploy = processEngine.getRepositoryService()//获取流程定义和部署对象相关的Service
                .createDeployment() //创建部署对象
                .addString("helloworld.bpmn", bytes)
                .deploy();//完成部署
        System.out.println("部署ID:"+deploy.getId());
        System.out.println("部署时间:"+deploy.getDeploymentTime());



    }



}

package com.echronos.workflow.common;

import com.echronos.workflow.node.FourKingsNode;
import org.apache.commons.lang3.StringUtils;
import org.flowable.bpmn.model.*;
import org.flowable.bpmn.model.Process;

import java.util.ArrayList;
import java.util.List;
import java.util.Random;

/**
 * 画图功能抽取
 *
 * @Author JiangP
 * @Date 2021/2/6
 */
public class PaintFactory {

    //开始节点
    public StartEvent createStartEvent(String id, String name) {
        StartEvent startEvent = new StartEvent();
        startEvent.setId(id);
        startEvent.setName(name);
        return startEvent;
    }

    //结束节点
    public EndEvent createEndEvent(String id, String name) {
        EndEvent endEvent = new EndEvent();
        endEvent.setId(id);
        endEvent.setName(name);
        return endEvent;
    }

    //任务节点-锁定用户
    public UserTask assignCreateAssigneeTask(String id, String name, String assignee, String key) {
        UserTask userTask = new UserTask();
        userTask.setName(name);
        userTask.setId(id);
        userTask.setAssignee(assignee);
        userTask.setFormKey(key);
        return userTask;
    }

    //生成表达式的自动任务(指定用户的)
    public ServiceTask assignCreateServiceTask(String id, String name, String fieldName, String value) {
        ServiceTask st = new ServiceTask();
        List<FieldExtension> fieldExtensions = new ArrayList<>();
        FieldExtension fieldExtension = new FieldExtension();
        fieldExtension.setFieldName(fieldName);
        fieldExtension.setStringValue(value);
        fieldExtensions.add(fieldExtension);
        st.setImplementation("${copyService}");
        st.setImplementationType("delegateExpression");
        st.setId(id);
        st.setName(name);
        //调用委托类的依赖注入功能
        //调用spring bean中的相关的委托bean
        //调用spring bean中的相关的委托bean
        //调用spring bean中的方法
        return st;
    }

    //任务节点-组
    public UserTask createGroupTask(String id, String name, String candidateGroup, String key) {
        List<String> candidateGroups = new ArrayList<String>();
        candidateGroups.add(candidateGroup);
        UserTask userTask = new UserTask();
        userTask.setName(name);
        userTask.setId(id);
        userTask.setCandidateGroups(candidateGroups);

        userTask.setFormKey(key);

        return userTask;
    }

    //会签/或签
    public UserTask countersignUserTask(String id, String name, List<Integer> assignee, String key) {
        UserTask userTask = new UserTask();
        userTask.setName(name);
        userTask.setId(id);

        userTask.setFormKey(key);

        userTask.setAssignee("${leader}");

        MultiInstanceLoopCharacteristics multiInstanceLoopCharacteristics = new MultiInstanceLoopCharacteristics();
        // 设置为并行   (false为并行执行,true为串行执行)
        multiInstanceLoopCharacteristics.setSequential(false);
        //完成条件,默认所有人都完成
        multiInstanceLoopCharacteristics.setCompletionCondition("${completionCondition}");
        //设置审批人集合参数
        multiInstanceLoopCharacteristics.setInputDataItem("${leaderList}");
        //元素变量多实例,一般和设置的assignee变量是对应的
        multiInstanceLoopCharacteristics.setElementVariable("leader");
        userTask.setLoopCharacteristics(multiInstanceLoopCharacteristics);
        return userTask;


    }

    //生成表达式的自动任务
    public ServiceTask createServiceTask(String id, String name, String fieldName, String value) {
        ServiceTask st = new ServiceTask();
        List<FieldExtension> fieldExtensions = new ArrayList<>();
        FieldExtension fieldExtension = new FieldExtension();
        fieldExtension.setFieldName("users");
        fieldExtension.setStringValue("1,3,5,6");
        fieldExtensions.add(fieldExtension);
        st.setImplementation("${copyService}");
        st.setImplementationType("delegateExpression");
        st.setId(id);
        st.setName(name);
        //调用委托类的依赖注入功能
        //调用spring bean中的相关的委托bean
        //调用spring bean中的相关的委托bean
        //调用spring bean中的方法

        return st;
    }

    /*连线*/
    public SequenceFlow createSequenceFlow(String from, String to, String conditionExpression) {
        SequenceFlow flow = new SequenceFlow();
        if (StringUtils.isNotEmpty(to)) {
            flow.setTargetRef(to);
        }
        if (StringUtils.isNotEmpty(from)) {
            flow.setSourceRef(from);
        }
        if (StringUtils.isNotEmpty(conditionExpression)) {
            flow.setConditionExpression(conditionExpression);
        }
        return flow;
    }

    //排他网关
    public ExclusiveGateway createExclusiveGateway(String id, String name) {
        ExclusiveGateway exclusiveGateway = new ExclusiveGateway();
        exclusiveGateway.setId(id);
        exclusiveGateway.setName(name);
        return exclusiveGateway;
    }

    //并行网关
    public ParallelGateway createParallelGateway(String id, String name) {
        ParallelGateway gateway = new ParallelGateway();
        gateway.setId(id);
        gateway.setName(name);
        return gateway;
    }

    //串行依次审批
    public UserTask successivelyUserTask(String id, String name, List<Integer> assignee, String key) {
        UserTask userTask = new UserTask();
        userTask.setName(name);
        userTask.setId(id);

        userTask.setFormKey(key);
        //分配用户
        userTask.setAssignee("${leader}");

        MultiInstanceLoopCharacteristics multiInstanceLoopCharacteristics = new MultiInstanceLoopCharacteristics();
        // 设置为并行   (false为并行执行,true为串行执行)
        multiInstanceLoopCharacteristics.setSequential(true);
        //设置审批人集合参数
        multiInstanceLoopCharacteristics.setInputDataItem("leaderList");

        multiInstanceLoopCharacteristics.setElementVariable("leader");
        userTask.setLoopCharacteristics(multiInstanceLoopCharacteristics);
        return userTask;
    }


    public void funZone(PaintFactory paintFactory, Process process, FourKingsNode approverND) {
        switch (approverND.getActivity()) {
            case 1:
                //1:(串行) 依次审批
                process.addFlowElement(paintFactory.successivelyUserTask(
                        approverND.getId(), approverND.getTitle(), approverND.getCheckId(), approverND.getFormKey()
                ));

                //画线
                approverND.getConditions().forEach(conditions -> {
                    process.addFlowElement(paintFactory.createSequenceFlow(conditions.getT_id(), conditions.getN_id(), conditions.getCriteria()));
                });
                break;
            case 2:
                //2:并行会签
                process.addFlowElement(paintFactory.countersignUserTask(
                        approverND.getId(), approverND.getTitle(), approverND.getCheckId(), approverND.getFormKey()
                ));
                //画线
                approverND.getConditions().forEach(conditions -> {
                    process.addFlowElement(paintFactory.createSequenceFlow(conditions.getT_id(), conditions.getN_id(), conditions.getCriteria()));
                });
                break;
            case 3:
                //或签
                process.addFlowElement(paintFactory.countersignUserTask(
                        approverND.getId(), approverND.getTitle(), approverND.getCheckId(), approverND.getFormKey()
                ));
                //画线
                approverND.getConditions().forEach(conditions -> {
                    process.addFlowElement(paintFactory.createSequenceFlow(conditions.getT_id(), conditions.getN_id(), conditions.getCriteria()));
                });
                break;
            default:
                //指点定点用户
                process.addFlowElement(paintFactory.assignCreateAssigneeTask(
                        approverND.getId(), approverND.getTitle(), approverND.getCheckId().get(0).toString(), approverND.getFormKey()
                ));
                //画线
                approverND.getConditions().forEach(conditions -> {
                    process.addFlowElement(paintFactory.createSequenceFlow(conditions.getT_id(), conditions.getN_id(), conditions.getCriteria()));
                });
                break;
        }
    }

}


以一下是我在生成XML 参考的一些文献!
在此记录我的成长,谢谢!
会签
avtiviti流程示例讲解
Activiti自定义流程设计器
Bpmn转Model的详解
Bpmn功能示例
生成Bpmn.xml代码示例

下面是我准备开发一套属于国内的比较简单的BPM后台管理系统的大概思想图:
在这里插入图片描述
数据库图表就不贴了,想了解到可以加我群来探讨学习,共同进步:q:947405150

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

废弃的root

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值