Формулировка проблемы: необходимо передавать такое значение кнопки завершения для процессов, которое указано в конфигураторе.
Решение: необходимо доработать
API метод getWorkItems таким образом, что в
качестве значения поля label он будет возвращать
не "Ответить", а значение поля с переводом "Кнопка
завершения" в конфигураторе (Документооборот -> Настройки
документооборота -> Настройки процессов).
URL метода: rest/api/workflow/work_actions
Тип запроса: GET.
Метод принимает следующие входные параметры:
workID - UUID работы (обяз.);
locale (не обяз.) - код локали (при
отсутствии параметра используется
язык
системы по умолчанию).
В случае успешного выполнения метод возвращает массив объектов JSON, состоящий из следующих полей:
action - идентификатор действия, значение из
списка:
COMPLETE - завершение;
REASSIGN - перепоручение;
REGISTRY - реестр;
RESOLUTION - резолюция;
RESULT - результат;
SEND - отправка;
TRANSMIT - передача;
operation - идентификатор операции, значение
из списка (может отсутствовать):
ACQUAINTANCE - ознакомление;
AGREEMENT - согласование;
ANSWER - создание ответа;
APPROVAL - утверждение;
POINT_RESULT - завершение формой
завершения;
PROCESS - завершение
согласованием/утвержедием/ознакомлением;
PROGRESS - завершение прогрессом;
RESOLUTION_ACTION - резолюция;
RUN - запуск маршрута;
label - название действия;
color - идентификатор цвета, значение из
списка:
NEGATIVE - цвет негативного действия;
NOT_PREFERRED - цвет не предпочтительного
действия;
POSITIVE - цвет позитивного действия;
PREFERRED - цвет предпочтительного
действия.
Пример запроса: /rest/api/workflow/work_actions?workID=7fb464cc-f303-4f40-880f-37d3b5879581
Пример ответа:
[
{
"action":"COMPLETE",
"operation":"PROCESS",
"label":"Согласовать",
"color":"PREFERRED"
},
{
"action":"REASSIGN",
"label":"Перепоручить",
"color":"NOT_PREFERRED"
},
{
"action":"SEND",
"operation":"AGREEMENT",
"label":"На согласование/рассмотрение",
"color":"NOT_PREFERRED"
},
{
"action":"SEND",
"operation":"APPROVAL",
"label":"На утверждение",
"color":"NOT_PREFERRED"
},
{
"action":"SEND",
"operation":"ACQUAINTANCE",
"label":"На ознакомление",
"color":"NOT_PREFERRED"
},
{
"action":"SEND",
"operation":"ACQUAINTANCE",
"label":"Как служебную записку",
"color":"NOT_PREFERRED"
}
]
Альтернативные потоки событий.
Альтернативный поток №1. Не передан параметр
workID. Сервер возвращает следующий ответ (с
HTTP-кодом 200):
{
"errorCode": "13",
"errorMessage": "Не передан параметр workID"
}
действие не выполняется.
Альтернативный поток №2. Передан некорректный
параметр workID: работы с таким UUID не
существует. Сервер возвращает следующий ответ (с HTTP-кодом 200):
{
"errorCode": "13",
"errorMessage": "Некорректный параметр workID"
}
действие не выполняется.