get_order
1 Описание
Назначение | Получить заказ по QR |
Тип запроса | Асинхронный |
2 Формат запросов
2.1 Формат запроса
<?xml version="1.0" encoding="utf-8"?> <RQ cmd="get_order" callback="http://ya.ru" guid="guid" timeout="int"> <CHECK qrid="QRid" /> </RQ>
Описание параметров
Параметр | Тип | Обязательный | Описание | Значение по умолчанию |
---|
callback | string | + | HTTP адрес, по которому WhiteServer отправит запрос после выполнения команды | |
CHECK qrid | string | + | Qrid заказа, который нужно получить |
2.2 Формат ответа
<?xml version="1.0" encoding="utf-8"?> <RP taskguid="6774b0bc-dd5e-4eca-a1f9-d982607feb2e" code="0" version="1.5.0.7155" />
Описание параметров
Параметр | Тип | Описание |
---|---|---|
taskguid | guid | Уникальный код этой задачи. При отправке callback будет использован этот код, чтобы вызывающий сервис мог сопоставить запрос и ответ |
2.3 Формат callback (асинхронного ответа)
<?xml version="1.0" encoding="utf-8"?> <RP taskguid="guid"> <CHECK total_summ="money" qrid="qrid" order_guid="guid" generateddatetime="xmlDateTime"> <STATE finished="int" paid="int" locked="int" precheck="int"/> <ExtInfo> <Item key="string" value="string" /> <Item key="string" value="string" /> </ExtInfo> <CHECKDATA guests="int" tablename="string"> <CHECKPERSONS count="int"> <PERSON role="int" name="string" code="int"/> </CHECKPERSONS> <CHECKLINES count="int"> <LINE id="uuid" name="string" code="int" quantity="float" price="money" sum="money"/> </CHECKLINES> </CHECKDATA> </CHECK> </RP>
Описание параметров
Параметр | Тип параметра | Обязательный | Описание | Значение по умолчанию |
---|---|---|---|---|
CHECK | ||||
ext_id | guid | guid заказа, переданного в запросе | ||
qrid | qrid | qrid заказа | ||
order_guid | guid | guid заказа, созданного в rKeeper | ||
ERROR | ||||
code | int | Код ошибки | ||
text | string | Текстовое описание ошибки | ||
STATE | ||||
finished | int | Закрыт ли заказ (0 - нет, 1 - да ) | ||
paid | int | Оплачен и заказ (0 - нет, 1 - да ) | ||
locked | int | Заблокирован ли заказ (0 - нет, 1 - да ) | ||
precheck | int | Сформирован ли пречек по заказу (0 - нет, 1 - да ) | ||
ExtInfo | ||||
Item | ||||
key | string | Идентификатор дополнительной информации | ||
value | string | Значение дополнительной информации | ||
CHECKDATA | ||||
guests | int | Количество гостей | ||
tablename | string | Название стола | ||
CHECKPERSONS | ||||
PERSON | ||||
role | int | Идентификатор роли сотрудника | ||
name | string | Имя сотрудника | ||
code | int | Код сотрудника | ||
CHECKLINES | ||||
LINE | ||||
id | uuid | uuid блюда | ||
name | string | Название блюда | ||
code | int | Код блюда | ||
quantity | float | Количество | ||
price | money | Цена блюда | ||
sum | money | Сумма |
3 Примеры вызовов
3.1 Пример
3.1.1 Запрос
<RQ cmd="get_order" callback="http://ya.ru" guid="e905df76-029b-4834-943e-fb375648df99" timeout="120"> <CHECK qrid="EA1F9E70912347ECA860392C7FB23FA2BE766A3D8F7C48BE9A4DB283F80EFDCCC7BDBB82"> </CHECK> </RQ>
4.1.2 Ответ
<?xml version="1.0" encoding="utf-8"?> <RP taskguid="0a85447e-f4da-4424-8c36-d20c63fe6b89" code="0" version="1.7.0.8215" />
4.1.3 Callback (асинхронный ответ) успешный
<?xml version="1.0" encoding="utf-8"?> <RP taskguid="c789fe9e-8287-40f8-ad33-68e5425af936" cmdguid="c789fe9e-8287-40f8-ad33-68e5425af936" posid="2bb71473-5ad4-4470-b161-7a1322613007" code="0"> <CHECK qrid="ED1F9E70912347ECA860392C7FB23FA2BE766A3D8F7C48BE9A4DB283F80EFDCCC7BDBB85" order_guid="be766a3d-8f7c-48be-9a4d-b283f80efdcc" generateddatetime="05/24/2019 04:31:05"> <STATE finished="0" paid="0" locked="0" precheck="1" /> <CHECKDATA tablename="2" guests="1"> <CHECKPERSONS> <PERSON role="9" name="9" code="9" /> </CHECKPERSONS> <CHECKLINES> <LINE id="309c934f-c864-4b7f-9dfe-5788b7c6127e" name="coffee" code="4" quantity="1.000" price="50" sum="50" /> <LINE id="1e9d6617-27ac-46e3-8727-15b4944e4b96" name="tea" code="3" quantity="1.000" price="30" sum="30" /> </CHECKLINES> </CHECKDATA> <ExtInfo /> </CHECK> </RP>
4.1.4 Callback (асинхронный ответ) с ошибкой
<RP taskguid="0a85447e-f4da-4424-8c36-d20c63fe6b89"> <ERROR code="101" text="Заказ не найден"/> </RP>