...
Далее мы видим в списке авторизующих лиц такую запись:
...
После того, как подпись согласующего лица на первом уровне была получена, осуществляется обращение ко внешней системе через API в рамках настроенного выше процесса:
...
Мы видим, что обращение к сервису произошло ровно в том момент, когда согласующее лицо согласовало командировку, если бы вместо этого произошло отклонение командировки, то обращение во внешюю систему не было бы отправлено и заказ вернулся бы в состояние черновика.
...
В указанном примере мы видим параметры, которые Кортеос передал во внешнюю систему, далее их следует использовать в веб-сервисе согласования.
Пример полученных в callback данных:
Code Block | ||
---|---|---|
| ||
{
"id_Complex": 766711,
"hash": "74829afd1d451bb43b3c5d299bd5411c",
"id_Auth": 417303
} |
Info |
---|
После получения данного уведомления можно выгрузить детали командировки при помощи метода API: Универсальный метод выгрузки заказа или командировки |
Веб-сервис для согласования
Для согласования используется веб-сервис: /PortableViews/ModComplexAuthViews/API/ComplexAuthAPI.asmx
WSDL: https://jv3.corteos.ru/PortableViews/ModComplexAuthViews/API/ComplexAuthAPI.asmx?WSDL
В сервис необходимо передать следующие поля:
...
id_Authorization - int, первичный ключ согласования, получаем из коллбэка на авторизацию(см. выше)
IsSucceed - bool, статус согласования, true - согласовать, false - отклонить
Comment - string, текстовое пояснение к операции, будет выведено в деталях командировки в таблице согласований
Hash - string, подпись запроса, также получаем из коллбэка(см.выше)
В ответе на этот запрос мы получаем XML такого вида:
Code Block | ||
---|---|---|
| ||
<ComplexAuthAPIResponse xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="https://corteos.ru/" id_ComplexReserve="766711" State="Finished" AuthorizationSucceed="true">
<ComplexReserveName>Тест авторизации</ComplexReserveName>
</ComplexAuthAPIResponse> |
В случае ошибки согласования мы получим SOAP Exception:
Code Block |
---|
JavelinBL2.Exceptions.UserFriendlyException: В настоящий момент по данной командировке авторизация не проводится, поэтому Вы не можете её авторизовать. |
Внешний вид таблицы согласований для согласованной через API командировки:
...