Платформа 3V/Формы/Источники данных/Согласование/Выполнение действий при изменении статуса согласования: различия между версиями
G.kalin (обсуждение | вклад) |
м (O.kozhevnikova переименовал страницу Платформа 3V/Карточка/Выполнение действий при изменении статуса согласования в Платформа 3V/Карточка/Действия/Выполнение действий при изменении статуса согласования) |
Версия 07:55, 1 апреля 2021
Коллекция действий выполняемых при изменении статуса согласования (StateChangeActions)
StateChangeActions - это коллекция идентификаторов действий по условию ConditionalAction, которые выполняются при изменении состояния согласования.
1 {
2 ...
3 "entryDataSources": [
4 {
5 ...
6 "StateChangeActions": [
7 111,
8 222
9 ],
10 "discriminator": "WorkflowDataSource"
11 }
12 ],
13 ...
14 }
BinaryConditionWorkflowContainsStates
BinaryConditionWorkflowContainsStates - Условие для вычисления вхождение текущего состояния процесса согласования WorkflowSourceId в коллекцию состояний WorkflowStateIds.
WorkflowSourceId - Идентификатор источника согласования.
WorkflowStateIds - Коллекция идентификаторов состояний согласования при которых результат проверки будет положительным.
1 {
2 ...
3 "BinaryConditionsRules": [
4 {
5 "id": 1,
6 "BinaryCondition": {
7 "WorkflowSourceId": 2,
8 "WorkflowStateIds": [
9 4
10 ],
11 "discriminator": "BinaryConditionWorkflowContainsStates"
12 }
13 }
14 ]
15 ...
16 }
Пример
В данном примере при выполнении шага согласования с идентификатором 3 в справочник будет добавлена запись с наименованием "Переход в состояние 4" (т.к. Шаг 3 - это переход из статуса 2 в 4, смотри пример согласования), а при выполнении шага с идентификатором 4 будет добавлена запись с наименованием "Переход в состояние 2", при условии что описанные условия BinaryConditionWorkflowContainsStates будут возвращать положительный результат.
1 {
2 "template": {
3 "schema": {
4 "states": [
5 {
6 "icon": {
7 "type": "svg",
8 "data": "<svg width='10' height='10' viewBox='0 0 10 10' fill='none' xmlns='http://www.w3.org/2000/svg'><path d='M0 10L1.19249e-07 0L10 1.19249e-07L6 5L10 10L0 10Z' fill='#F08513'/></svg>"
9 },
10 "id": 1,
11 "name": "Черновик"
12 },
13 {
14 "icon": {
15 "type": "svg",
16 "data": "<svg width='10' height='10' viewBox='0 0 10 10' fill='none' xmlns='http://www.w3.org/2000/svg'><path d='M0 10L1.19249e-07 0L10 1.19249e-07L6 5L10 10L0 10Z' fill='#0066DD'/></svg>"
17 },
18 "id": 2,
19 "name": "На согласовании"
20 },
21 {
22 "icon": {
23 "type": "svg",
24 "data": "<svg width='10' height='10' viewBox='0 0 10 10' fill='none' xmlns='http://www.w3.org/2000/svg'><path d='M0 10L1.19249e-07 0L10 1.19249e-07L6 5L10 10L0 10Z' fill='#05C19F'/></svg>"
25 },
26 "id": 3,
27 "name": "Согласовано"
28 },
29 {
30 "icon": {
31 "type": "svg",
32 "data": "<svg width='10' height='10' viewBox='0 0 10 10' fill='none' xmlns='http://www.w3.org/2000/svg'><path d='M0 10L1.19249e-07 0L10 1.19249e-07L6 5L10 10L0 10Z' fill='#8053DF'/></svg>"
33 },
34 "id": 4,
35 "name": "На доработке"
36 }
37 ],
38 "steps": [
39 {
40 "fromStateId": 1,
41 "toStateId": 2,
42 "id": 1,
43 "name": "Отправить на согласование"
44 },
45 {
46 "fromStateId": 2,
47 "toStateId": 3,
48 "id": 2,
49 "name": "Согласовать"
50 },
51 {
52 "fromStateId": 2,
53 "toStateId": 4,
54 "id": 3,
55 "name": "Вернуть на доработку"
56 },
57 {
58 "fromStateId": 4,
59 "toStateId": 2,
60 "id": 4,
61 "name": "Вернуть на согласование"
62 }
63 ],
64 "startStateId": 1
65 },
66 "permissions": [],
67 "parameters": {
68 "definitions": [
69 {
70 "id": 1,
71 "name": "Сценарии",
72 "discriminator": "SimpleParameterModel"
73 }
74 ],
75 "defaultValues": [
76 {
77 "parameterId": 1,
78 "value": 5
79 }
80 ]
81 }
82 }
83 }
1 {
2 "name": "Карточка",
3 "actions": [
4 {
5 "instanceId": 1,
6 "id": 11,
7 "comment": null,
8 "discriminator": "RebuildSourceInstanceAction"
9 },
10 {
11 "DictionarySourceId": 1,
12 "id": 22,
13 "defaultValues": [
14 {
15 "attributeId": 2,
16 "value": "Переход в состояние 4"
17 }
18 ],
19 "dictionaryId": 750,
20 "discriminator": "CreateNewElementInDictionaryAction"
21 },
22 {
23 "DictionarySourceId": 1,
24 "id": 44,
25 "defaultValues": [
26 {
27 "attributeId": 2,
28 "value": "Переход в состояние 2"
29 }
30 ],
31 "dictionaryId": 750,
32 "discriminator": "CreateNewElementInDictionaryAction"
33 },
34 {
35 "instanceId": 1,
36 "id": 33,
37 "DataSourcesIds": [
38 1
39 ],
40 "discriminator": "SaveDataSourceAction"
41 }
42 ],
43 "conditionalActions": [
44 {
45 "id": 111,
46 "binaryConditionRuleId": 1,
47 "actions": [
48 22,
49 33,
50 11
51 ]
52 },
53 {
54 "id": 222,
55 "binaryConditionRuleId": 2,
56 "actions": [
57 44,
58 33,
59 11
60 ]
61 }
62 ],
63 "BinaryConditionsRules": [
64 {
65 "id": 1,
66 "BinaryCondition": {
67 "WorkflowSourceId": 2,
68 "WorkflowStateIds": [
69 4
70 ],
71 "discriminator": "BinaryConditionWorkflowContainsStates"
72 }
73 },
74 {
75 "id": 2,
76 "BinaryCondition": {
77 "WorkflowSourceId": 2,
78 "WorkflowStateIds": [
79 2
80 ],
81 "discriminator": "BinaryConditionWorkflowContainsStates"
82 }
83 }
84 ],
85 "uiSources": [
86 {
87 "id": 1,
88 "DataSourceId": 1,
89 "caption": "Справочник",
90 "enable": true,
91 "visible": true,
92 "discriminator": "DictionarySourceEntry"
93 },
94 {
95 "id": 2,
96 "WorkflowSourceId": 2,
97 "caption": "Согласование",
98 "enable": true,
99 "visible": true,
100 "discriminator": "WorkflowSourceEntry"
101 }
102 ],
103 "entryDataSources": [
104 {
105 "Id": 1,
106 "dictionaryId": Идентификатор справочника,
107 "name": "Справочник",
108 "isReadOnly": false,
109 "filter": null,
110 "discriminator": "DictionaryDataSource"
111 },
112 {
113 "Id": 2,
114 "WorkflowId": Идентификатор согласования,
115 "name": "Согласование",
116 "isReadOnly": false,
117 "parameters": [
118 {
119 "id": 1,
120 "expressionId": null,
121 "value": 5
122 }
123 ],
124 "StateChangeActions": [
125 111,
126 222
127 ],
128 "discriminator": "WorkflowDataSource"
129 }
130 ],
131 "expressions": [],
132 "parameters": [
133 {
134 "defaultValue": [
135 5
136 ],
137 "id": 1,
138 "name": "Элемент справочника"
139 }
140 ]
141 }