@cloud-app-dev/vidc 1.0.12 → 1.0.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (90) hide show
  1. package/.umirc.ts +18 -11
  2. package/es/AppLayout/AppHorizontalMenu/index.js +6 -2
  3. package/es/AppLayout/AppInlineMenu/index.js +9 -3
  4. package/es/InitialConfig/index.js +0 -1
  5. package/es/InitialRequest/index.js +4 -2
  6. package/es/InitialRequest/utils.js +120 -61
  7. package/es/OrgTree/index.js +6 -5
  8. package/es/WorkerFlow/Demo.d.ts +2 -0
  9. package/es/WorkerFlow/Demo.js +34 -0
  10. package/es/WorkerFlow/Form/Approver.d.ts +2 -0
  11. package/es/WorkerFlow/Form/Approver.js +7 -0
  12. package/es/WorkerFlow/Form/Condition.d.ts +2 -0
  13. package/es/WorkerFlow/Form/Condition.js +7 -0
  14. package/es/WorkerFlow/Form/FormAuth.d.ts +7 -0
  15. package/es/WorkerFlow/Form/FormAuth.js +116 -0
  16. package/es/WorkerFlow/Form/Handle.d.ts +8 -0
  17. package/es/WorkerFlow/Form/Handle.js +19 -0
  18. package/es/WorkerFlow/Form/UserSelect.d.ts +7 -0
  19. package/es/WorkerFlow/Form/UserSelect.js +253 -0
  20. package/es/WorkerFlow/Form/UserSet.d.ts +9 -0
  21. package/es/WorkerFlow/Form/UserSet.js +124 -0
  22. package/es/WorkerFlow/Form/UsersHandleType.d.ts +6 -0
  23. package/es/WorkerFlow/Form/UsersHandleType.js +30 -0
  24. package/es/WorkerFlow/Nodes/Add.d.ts +7 -0
  25. package/es/WorkerFlow/Nodes/Add.js +81 -0
  26. package/es/WorkerFlow/Nodes/AddOption.d.ts +9 -0
  27. package/es/WorkerFlow/Nodes/AddOption.js +23 -0
  28. package/es/WorkerFlow/Nodes/AddOptionList.d.ts +6 -0
  29. package/es/WorkerFlow/Nodes/AddOptionList.js +44 -0
  30. package/es/WorkerFlow/Nodes/Approver.d.ts +11 -0
  31. package/es/WorkerFlow/Nodes/Approver.js +53 -0
  32. package/es/WorkerFlow/Nodes/Condition.d.ts +9 -0
  33. package/es/WorkerFlow/Nodes/Condition.js +154 -0
  34. package/es/WorkerFlow/Nodes/Constants.d.ts +34 -0
  35. package/es/WorkerFlow/Nodes/Constants.js +110 -0
  36. package/es/WorkerFlow/Nodes/End.d.ts +6 -0
  37. package/es/WorkerFlow/Nodes/End.js +16 -0
  38. package/es/WorkerFlow/Nodes/Handle.d.ts +11 -0
  39. package/es/WorkerFlow/Nodes/Handle.js +53 -0
  40. package/es/WorkerFlow/Nodes/Node.d.ts +7 -0
  41. package/es/WorkerFlow/Nodes/Node.js +26 -0
  42. package/es/WorkerFlow/Nodes/Notifier.d.ts +11 -0
  43. package/es/WorkerFlow/Nodes/Notifier.js +58 -0
  44. package/es/WorkerFlow/Nodes/Render.d.ts +7 -0
  45. package/es/WorkerFlow/Nodes/Render.js +16 -0
  46. package/es/WorkerFlow/Nodes/Start.d.ts +11 -0
  47. package/es/WorkerFlow/Nodes/Start.js +26 -0
  48. package/es/WorkerFlow/Nodes/TitleElement.d.ts +9 -0
  49. package/es/WorkerFlow/Nodes/TitleElement.js +92 -0
  50. package/es/WorkerFlow/Nodes/Wrap.d.ts +13 -0
  51. package/es/WorkerFlow/Nodes/Wrap.js +29 -0
  52. package/es/WorkerFlow/OperatorContext.d.ts +4 -0
  53. package/es/WorkerFlow/OperatorContext.js +3 -0
  54. package/es/WorkerFlow/Tools.d.ts +8 -0
  55. package/es/WorkerFlow/Tools.js +80 -0
  56. package/es/WorkerFlow/XML/CanvasTag.d.ts +3 -0
  57. package/es/WorkerFlow/XML/CanvasTag.js +126 -0
  58. package/es/WorkerFlow/XML/EndEvent.d.ts +1 -0
  59. package/es/WorkerFlow/XML/EndEvent.js +14 -0
  60. package/es/WorkerFlow/XML/ExclusiveGateway.d.ts +8 -0
  61. package/es/WorkerFlow/XML/ExclusiveGateway.js +120 -0
  62. package/es/WorkerFlow/XML/Root.d.ts +1 -0
  63. package/es/WorkerFlow/XML/Root.js +5 -0
  64. package/es/WorkerFlow/XML/StartEvent.d.ts +5 -0
  65. package/es/WorkerFlow/XML/StartEvent.js +28 -0
  66. package/es/WorkerFlow/XML/UserTask.d.ts +5 -0
  67. package/es/WorkerFlow/XML/UserTask.js +45 -0
  68. package/es/WorkerFlow/XML/index.d.ts +3 -0
  69. package/es/WorkerFlow/XML/index.js +97 -0
  70. package/es/WorkerFlow/XML/utils.d.ts +4 -0
  71. package/es/WorkerFlow/XML/utils.js +47 -0
  72. package/es/WorkerFlow/api.d.ts +8 -0
  73. package/es/WorkerFlow/api.js +49 -0
  74. package/es/WorkerFlow/bpmn-mock.bpmn +103 -0
  75. package/es/WorkerFlow/data.json +83 -0
  76. package/es/WorkerFlow/index.css +728 -0
  77. package/es/WorkerFlow/index.d.ts +8 -0
  78. package/es/WorkerFlow/index.js +223 -0
  79. package/es/WorkerFlow/interface.d.ts +58 -0
  80. package/es/WorkerFlow/useDrawer.d.ts +14 -0
  81. package/es/WorkerFlow/useDrawer.js +77 -0
  82. package/es/WorkerFlow/useModal.d.ts +14 -0
  83. package/es/WorkerFlow/useModal.js +79 -0
  84. package/es/core.d.ts +16 -0
  85. package/es/index.d.ts +1 -0
  86. package/es/index.js +2 -1
  87. package/package.json +7 -2
  88. package/tsconfig.json +1 -0
  89. package/es/InitialConfig/index.css +0 -0
  90. package/es/InitialRequest/index.css +0 -0
@@ -0,0 +1,45 @@
1
+ import { createId } from './utils';
2
+ export function createUserTask(xml, node, pids, stopId) {
3
+ var _a;
4
+
5
+ var data = {
6
+ prevId: '',
7
+ eles: []
8
+ };
9
+ var userTask = xml.createElement('bpmn:userTask');
10
+ userTask.setAttribute('id', node.id);
11
+ userTask.setAttribute('name', node.nodeName);
12
+ userTask.setAttribute('camunda:candidateUsers', '${users}'); // 子节点创建输入节点
13
+
14
+ pids.forEach(function (prevId) {
15
+ var userTaskIn = xml.createElement('bpmn:incoming');
16
+ userTaskIn.innerHTML = prevId;
17
+ userTask.appendChild(userTaskIn);
18
+ });
19
+ data.eles.push(userTask);
20
+ var sequenceFlowId = createId('SequenceFlow'); //预先生成startSequenceId 辅助创建下一个节点或者连线
21
+
22
+ if (node.childNode) {
23
+ // 子节点存在需要创建输出节点
24
+ var userTaskOut = xml.createElement('bpmn:outgoing');
25
+ userTaskOut.innerHTML = sequenceFlowId;
26
+ userTask.appendChild(userTaskOut);
27
+ } // 添加camunda:collection
28
+
29
+
30
+ var multiInstanceLoopCharacteristics = xml.createElement('bpmn:multiInstanceLoopCharacteristics');
31
+ multiInstanceLoopCharacteristics.setAttribute('camunda:collection', 'assigneeList');
32
+ multiInstanceLoopCharacteristics.setAttribute('camunda:elementVariable', 'users');
33
+ userTask.appendChild(multiInstanceLoopCharacteristics); //创建连线
34
+
35
+ if (node.childNode || stopId) {
36
+ var sequenceFlow = xml.createElement('bpmn:sequenceFlow');
37
+ sequenceFlow.setAttribute('id', sequenceFlowId);
38
+ sequenceFlow.setAttribute('sourceRef', node.id);
39
+ sequenceFlow.setAttribute('targetRef', ((_a = node === null || node === void 0 ? void 0 : node.childNode) === null || _a === void 0 ? void 0 : _a.id) ? node.childNode.id : stopId);
40
+ data.prevId = sequenceFlowId;
41
+ data.eles.push(sequenceFlow);
42
+ }
43
+
44
+ return data;
45
+ }
@@ -0,0 +1,3 @@
1
+ import { WorkerFlowRequest } from '../interface';
2
+ export declare function transformJsonToXML(data: WorkerFlowRequest): string;
3
+ export declare function exportBpmnFile(data: WorkerFlowRequest): void;
@@ -0,0 +1,97 @@
1
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
2
+
3
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
4
+
5
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
6
+
7
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
8
+
9
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
10
+
11
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
12
+
13
+ import { createEndEvent } from './EndEvent';
14
+ import { createConditionNode, createExclusiveGateway } from './ExclusiveGateway';
15
+ import { createRootElement } from './Root';
16
+ import { createStartEvent } from './StartEvent';
17
+ import { createUserTask } from './UserTask';
18
+ import { getEndEventId } from './utils';
19
+ import { createEdges, createShape } from './CanvasTag';
20
+ export function transformJsonToXML(data) {
21
+ var eles = [];
22
+ var xml = createRootElement(data.id, data.name);
23
+ var process = xml.getElementsByTagName('bpmn:process')[0];
24
+ var BPMNPlane = xml.getElementsByTagName('bpmndi:BPMNPlane')[0];
25
+ var pIds = [];
26
+ var gatwayId = '';
27
+ var stopId = getEndEventId(data); // 根据节点数据成次bpmn XML元素
28
+
29
+ var createElement = function createElement(node) {
30
+ switch (node.bpmnType) {
31
+ case 'startEvent':
32
+ var startEvent = createStartEvent(xml, node);
33
+ eles.push.apply(eles, _toConsumableArray(startEvent.eles));
34
+ pIds = [startEvent.pId];
35
+ break;
36
+
37
+ case 'userTask':
38
+ var userTask = createUserTask(xml, node, pIds, stopId);
39
+ eles.push.apply(eles, _toConsumableArray(userTask.eles));
40
+ pIds = userTask.prevId ? [userTask.prevId] : pIds;
41
+ break;
42
+
43
+ case 'exclusiveGateway':
44
+ var exclusiveGateway = createExclusiveGateway(xml, node, pIds);
45
+ eles.push.apply(eles, _toConsumableArray(exclusiveGateway.eles));
46
+ gatwayId = node.id;
47
+ break;
48
+
49
+ case 'endEvent':
50
+ eles.push(createEndEvent(xml, stopId, pIds));
51
+ break;
52
+ } //存储条件判断 递归生成内部元素
53
+
54
+
55
+ if (node.conditionNodes && node.conditionNodes.length > 0) {
56
+ var ids = [];
57
+ node.conditionNodes.forEach(function (item) {
58
+ var _a;
59
+
60
+ var data = createConditionNode(xml, item, gatwayId, ((_a = node.childNode) === null || _a === void 0 ? void 0 : _a.id) || stopId);
61
+ eles.push.apply(eles, _toConsumableArray(data.eles));
62
+ ids.push(data.prevId);
63
+ });
64
+ pIds = ids;
65
+ }
66
+
67
+ if (node.childNode) {
68
+ createElement(node.childNode);
69
+ }
70
+ };
71
+
72
+ createElement(data.nodeConfig);
73
+ var edgeEles = createEdges(xml, eles, data);
74
+ var shapeEles = createShape(xml, eles, data);
75
+ eles.forEach(function (item) {
76
+ process.appendChild(item);
77
+ });
78
+ [].concat(_toConsumableArray(edgeEles), _toConsumableArray(shapeEles)).forEach(function (item) {
79
+ BPMNPlane.appendChild(item);
80
+ });
81
+ var serializer = new XMLSerializer();
82
+ var xmlString = serializer.serializeToString(xml);
83
+ console.log(xmlString);
84
+ return xmlString;
85
+ }
86
+ export function exportBpmnFile(data) {
87
+ var text = transformJsonToXML(data);
88
+ var aTag = document.createElement('a');
89
+ var blob = new Blob([text], {
90
+ type: 'text/plain'
91
+ });
92
+ var href = URL.createObjectURL(blob);
93
+ aTag.setAttribute('href', href);
94
+ aTag.setAttribute('download', 'worker_flow.bpmn');
95
+ aTag.click();
96
+ URL.revokeObjectURL(href);
97
+ }
@@ -0,0 +1,4 @@
1
+ import { NodeItem, WorkerFlowRequest } from '../interface';
2
+ export declare function createId(type: string): string;
3
+ export declare function getEndEventId(data: WorkerFlowRequest): string;
4
+ export declare function getNodeById(data: WorkerFlowRequest, id: string): NodeItem;
@@ -0,0 +1,47 @@
1
+ export function createId(type) {
2
+ return "".concat(type, "_").concat(Math.random().toString(36).substr(2));
3
+ }
4
+ export function getEndEventId(data) {
5
+ var id = '';
6
+
7
+ var runGetId = function runGetId(node) {
8
+ if (!node || !!id) {
9
+ return;
10
+ }
11
+
12
+ if (node.type === 9) {
13
+ id = node.id;
14
+ } else {
15
+ runGetId(node.childNode);
16
+ }
17
+ };
18
+
19
+ runGetId(data.nodeConfig);
20
+ return id ? id : createId('EndEvent');
21
+ }
22
+ export function getNodeById(data, id) {
23
+ var nodeItem;
24
+
25
+ var runGetNode = function runGetNode(node) {
26
+ if (!node || !!nodeItem) {
27
+ return;
28
+ }
29
+
30
+ if (node.id === id) {
31
+ nodeItem = node;
32
+ } else {
33
+ if (node.conditionNodes && node.conditionNodes.length > 0) {
34
+ node.conditionNodes.forEach(function (item) {
35
+ runGetNode(item);
36
+ });
37
+ }
38
+
39
+ if (node.childNode) {
40
+ runGetNode(node.childNode);
41
+ }
42
+ }
43
+ };
44
+
45
+ runGetNode(data.nodeConfig);
46
+ return nodeItem;
47
+ }
@@ -0,0 +1,8 @@
1
+ import { OrgItemType } from '@cloud-app-dev/basic-components/es/Store/org';
2
+ import { UserInfo } from '@cloud-app-dev/basic-components/es/Store/app';
3
+ declare class Api {
4
+ getOrgs(): Promise<OrgItemType[]>;
5
+ getUsers(organizationId: string): Promise<UserInfo[]>;
6
+ }
7
+ declare const _default: Api;
8
+ export default _default;
@@ -0,0 +1,49 @@
1
+ import _Service from "@cloud-app-dev/basic-components/es/Service";
2
+
3
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
4
+
5
+ function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
6
+
7
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
8
+
9
+ var Api = /*#__PURE__*/function () {
10
+ function Api() {
11
+ _classCallCheck(this, Api);
12
+ }
13
+
14
+ _createClass(Api, [{
15
+ key: "getOrgs",
16
+ value: function getOrgs() {
17
+ return _Service.$http({
18
+ url: '/api/user/v1/organization/queryChildOrganizationsById',
19
+ method: 'post',
20
+ data: {
21
+ selectChildOrganization: true
22
+ }
23
+ }).then(function (res) {
24
+ return res.data;
25
+ });
26
+ }
27
+ }, {
28
+ key: "getUsers",
29
+ value: function getUsers(organizationId) {
30
+ return _Service.$http({
31
+ url: '/api/user/v1/queryUsers',
32
+ method: 'post',
33
+ data: {
34
+ containSubOrganization: 1,
35
+ limit: 10000,
36
+ offset: 0,
37
+ organizationId: organizationId,
38
+ validState: ['104406']
39
+ }
40
+ }).then(function (res) {
41
+ return res.data.list;
42
+ });
43
+ }
44
+ }]);
45
+
46
+ return Api;
47
+ }();
48
+
49
+ export default new Api();
@@ -0,0 +1,103 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <bpmn:definitions xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:camunda="http://camunda.org/schema/1.0/bpmn" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="Definitions_0vip0x3" targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Modeler" exporterVersion="1.16.2">
3
+ <bpmn:process id="Process_001" name="会签" processType="None" isClosed="false" isExecutable="true">
4
+ <bpmn:startEvent id="StartEvent_1111">
5
+ <bpmn:outgoing>SequenceFlow_8egr7jaemzp</bpmn:outgoing>
6
+ </bpmn:startEvent>
7
+ <bpmn:sequenceFlow id="SequenceFlow_8egr7jaemzp" sourceRef="StartEvent_1111" targetRef="UserTask_2222" />
8
+ <bpmn:userTask id="UserTask_2222" name="审核人1" camunda:candidateUsers="${users}">
9
+ <bpmn:incoming>SequenceFlow_8egr7jaemzp</bpmn:incoming>
10
+ <bpmn:outgoing>SequenceFlow_ibe0rux8yy</bpmn:outgoing>
11
+ <bpmn:multiInstanceLoopCharacteristics camunda:collection="assigneeList" camunda:elementVariable="users" />
12
+ </bpmn:userTask>
13
+ <bpmn:sequenceFlow id="SequenceFlow_ibe0rux8yy" sourceRef="UserTask_2222" targetRef="ExclusiveGateway_3333" />
14
+ <bpmn:exclusiveGateway id="ExclusiveGateway_3333">
15
+ <bpmn:incoming>SequenceFlow_ibe0rux8yy</bpmn:incoming>
16
+ <bpmn:outgoing>SequenceFlow_4444</bpmn:outgoing>
17
+ <bpmn:outgoing>SequenceFlow_6666</bpmn:outgoing>
18
+ </bpmn:exclusiveGateway>
19
+ <bpmn:sequenceFlow id="SequenceFlow_4444" sourceRef="ExclusiveGateway_3333" targetRef="UserTask_5555">
20
+ <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">${blank === 1}</bpmn:conditionExpression>
21
+ </bpmn:sequenceFlow>
22
+ <bpmn:userTask id="UserTask_5555" name="审核人2" camunda:candidateUsers="${users}">
23
+ <bpmn:incoming>SequenceFlow_4444</bpmn:incoming>
24
+ <bpmn:multiInstanceLoopCharacteristics camunda:collection="assigneeList" camunda:elementVariable="users" />
25
+ </bpmn:userTask>
26
+ <bpmn:sequenceFlow id="SequenceFlow_6pgxa49y1qp" sourceRef="UserTask_5555" targetRef="UserTask_7777" />
27
+ <bpmn:sequenceFlow id="SequenceFlow_6666" sourceRef="ExclusiveGateway_3333" targetRef="UserTask_6677">
28
+ <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">${blank === 0}</bpmn:conditionExpression>
29
+ </bpmn:sequenceFlow>
30
+ <bpmn:userTask id="UserTask_6677" name="审核人3" camunda:candidateUsers="${users}">
31
+ <bpmn:incoming>SequenceFlow_6666</bpmn:incoming>
32
+ <bpmn:multiInstanceLoopCharacteristics camunda:collection="assigneeList" camunda:elementVariable="users" />
33
+ </bpmn:userTask>
34
+ <bpmn:sequenceFlow id="SequenceFlow_q127y1p10r9" sourceRef="UserTask_6677" targetRef="UserTask_7777" />
35
+ <bpmn:userTask id="UserTask_7777" name="审核人4" camunda:candidateUsers="${users}">
36
+ <bpmn:incoming>SequenceFlow_6pgxa49y1qp</bpmn:incoming>
37
+ <bpmn:incoming>SequenceFlow_q127y1p10r9</bpmn:incoming>
38
+ <bpmn:outgoing>SequenceFlow_z82ag6oyzx</bpmn:outgoing>
39
+ <bpmn:multiInstanceLoopCharacteristics camunda:collection="assigneeList" camunda:elementVariable="users" />
40
+ </bpmn:userTask>
41
+ <bpmn:sequenceFlow id="SequenceFlow_z82ag6oyzx" sourceRef="UserTask_7777" targetRef="EndEvent_7777" />
42
+ <bpmn:endEvent id="EndEvent_7777">
43
+ <bpmn:incoming>SequenceFlow_z82ag6oyzx</bpmn:incoming>
44
+ </bpmn:endEvent>
45
+ </bpmn:process>
46
+ <bpmndi:BPMNDiagram id="BPMNDiagram_Process_001">
47
+ <bpmndi:BPMNPlane id="BPMNPlane_Process_001" bpmnElement="Process_001">
48
+ <bpmndi:BPMNEdge id="SequenceFlow_8egr7jaemzp_di" bpmnElement="SequenceFlow_8egr7jaemzp">
49
+ <di:waypoint x="1023" y="255.5" />
50
+ <di:waypoint x="1023" y="338.5" />
51
+ </bpmndi:BPMNEdge>
52
+ <bpmndi:BPMNEdge id="SequenceFlow_ibe0rux8yy_di" bpmnElement="SequenceFlow_ibe0rux8yy">
53
+ <di:waypoint x="1023" y="416.5" />
54
+ <di:waypoint x="1023" y="500.5" />
55
+ </bpmndi:BPMNEdge>
56
+ <bpmndi:BPMNEdge id="SequenceFlow_4444_di" bpmnElement="SequenceFlow_4444">
57
+ <di:waypoint x="989" y="515.5" />
58
+ <di:waypoint x="853" y="515.5" />
59
+ <di:waypoint x="853" y="736.5" />
60
+ </bpmndi:BPMNEdge>
61
+ <bpmndi:BPMNEdge id="SequenceFlow_6pgxa49y1qp_di" bpmnElement="SequenceFlow_6pgxa49y1qp">
62
+ <di:waypoint x="963" y="775.5" />
63
+ <di:waypoint x="1023" y="775.5" />
64
+ <di:waypoint x="1023" y="982.5" />
65
+ </bpmndi:BPMNEdge>
66
+ <bpmndi:BPMNEdge id="SequenceFlow_6666_di" bpmnElement="SequenceFlow_6666">
67
+ <di:waypoint x="1057" y="515.5" />
68
+ <di:waypoint x="1193" y="515.5" />
69
+ <di:waypoint x="1193" y="736.5" />
70
+ </bpmndi:BPMNEdge>
71
+ <bpmndi:BPMNEdge id="SequenceFlow_q127y1p10r9_di" bpmnElement="SequenceFlow_q127y1p10r9">
72
+ <di:waypoint x="1083" y="775.5" />
73
+ <di:waypoint x="1023" y="775.5" />
74
+ <di:waypoint x="1023" y="982.5" />
75
+ </bpmndi:BPMNEdge>
76
+ <bpmndi:BPMNEdge id="SequenceFlow_z82ag6oyzx_di" bpmnElement="SequenceFlow_z82ag6oyzx">
77
+ <di:waypoint x="1023" y="1060.5" />
78
+ <di:waypoint x="1023" y="1143.5" />
79
+ </bpmndi:BPMNEdge>
80
+ <bpmndi:BPMNShape id="StartEvent_1111_di" bpmnElement="StartEvent_1111">
81
+ <dc:Bounds x="913" y="177.5" width="220" height="78" />
82
+ </bpmndi:BPMNShape>
83
+ <bpmndi:BPMNShape id="UserTask_2222_di" bpmnElement="UserTask_2222">
84
+ <dc:Bounds x="913" y="338.5" width="220" height="78" />
85
+ </bpmndi:BPMNShape>
86
+ <bpmndi:BPMNShape id="ExclusiveGateway_3333_di" bpmnElement="ExclusiveGateway_3333" isMarkerVisible="true">
87
+ <dc:Bounds x="989" y="500.5" width="68" height="30" />
88
+ </bpmndi:BPMNShape>
89
+ <bpmndi:BPMNShape id="UserTask_5555_di" bpmnElement="UserTask_5555">
90
+ <dc:Bounds x="743" y="736.5" width="220" height="78" />
91
+ </bpmndi:BPMNShape>
92
+ <bpmndi:BPMNShape id="UserTask_6677_di" bpmnElement="UserTask_6677">
93
+ <dc:Bounds x="1083" y="736.5" width="220" height="78" />
94
+ </bpmndi:BPMNShape>
95
+ <bpmndi:BPMNShape id="UserTask_7777_di" bpmnElement="UserTask_7777">
96
+ <dc:Bounds x="913" y="982.5" width="220" height="78" />
97
+ </bpmndi:BPMNShape>
98
+ <bpmndi:BPMNShape id="EndEvent_7777_di" bpmnElement="EndEvent_7777">
99
+ <dc:Bounds x="1018" y="1143.5" width="10" height="10" />
100
+ </bpmndi:BPMNShape>
101
+ </bpmndi:BPMNPlane>
102
+ </bpmndi:BPMNDiagram>
103
+ </bpmn:definitions>
@@ -0,0 +1,83 @@
1
+ {
2
+ "code": "200",
3
+ "msg": "success",
4
+ "data": {
5
+ "id": "Process_001",
6
+ "name": "会签",
7
+ "nodeConfig": {
8
+ "id": "StartEvent_1111",
9
+ "nodeName": "发起人",
10
+ "type": 0,
11
+ "bpmnType": "startEvent",
12
+ "owner": "系统发起",
13
+ "nodeUserList": [],
14
+ "childNode": {
15
+ "id": "UserTask_2222",
16
+ "nodeName": "审核人1",
17
+ "error": false,
18
+ "type": 5,
19
+ "nodeUserList": [],
20
+ "owner": "",
21
+ "form": [{ "key": "blank", "type": "number", "options": [] }],
22
+ "bpmnType": "userTask",
23
+ "childNode": {
24
+ "id": "ExclusiveGateway_3333",
25
+ "nodeName": "路由",
26
+ "type": 4,
27
+ "nodeUserList": [],
28
+ "bpmnType": "exclusiveGateway",
29
+ "conditionNodes": [
30
+ {
31
+ "id": "SequenceFlow_4444",
32
+ "nodeName": "条件1",
33
+ "type": 3,
34
+ "priorityLevel": 1,
35
+ "conditionList": [{ "blank": 1 }],
36
+ "bpmnType": "sequenceFlow",
37
+ "expression": "${blank == 1}",
38
+ "childNode": {
39
+ "id": "UserTask_5555",
40
+ "nodeName": "审核人2",
41
+ "type": 1,
42
+ "nodeUserList": [],
43
+ "bpmnType": "userTask"
44
+ }
45
+ },
46
+ {
47
+ "id": "SequenceFlow_6666",
48
+ "nodeName": "条件2",
49
+ "bpmnType": "sequenceFlow",
50
+ "type": 3,
51
+ "priorityLevel": 2,
52
+ "conditionList": [{ "blank": 0 }],
53
+ "nodeUserList": [{ "label": "陈六", "value": "chenniu", "key": "userId" }],
54
+ "expression": "${blank == 0}",
55
+ "childNode": {
56
+ "id": "UserTask_6677",
57
+ "nodeName": "审核人3",
58
+ "type": 1,
59
+ "nodeUserList": [],
60
+ "bpmnType": "userTask"
61
+ }
62
+ }
63
+ ],
64
+ "childNode": {
65
+ "id": "UserTask_7777",
66
+ "nodeName": "审核人4",
67
+ "bpmnType": "userTask",
68
+ "type": 1,
69
+ "ccSelfSelectFlag": 1,
70
+ "nodeUserList": [],
71
+ "error": false,
72
+ "childNode": {
73
+ "id": "EndEvent_7777",
74
+ "nodeName": "流程结束",
75
+ "bpmnType": "endEvent",
76
+ "type": 9
77
+ }
78
+ }
79
+ }
80
+ }
81
+ }
82
+ }
83
+ }