НазначениеОбновить состав заказа в ресторане по идентификатору заказа и objectId
Тип запросаАсинхронный/синхронный
Поддерживаемая версия агентаv2
PluggetSystemTypeRKMid

Формат запроса

{
  "taskType": "UpdateOrder",
  "params": {
    "async": {
      "objectId": number,
       "timeout": number
    },
    "sync": {
      "objectId": number,
       "timeout": number
    },
    "orderGuid": "uuid",
    "products": [
        { // простой вариант
            "id": number,
            "name": "string",
            "price": number, // в кассе смотрят на цену из кассы, параметр не обязателен
            "quantity": number,
            "discountIds": [
                {
                    "id": number,
                    "value":number
                }
            ]
        },
        { // вариант с модификаторами или комбо
            "id": number,
            "name": "string",
            "price": number, // в кассе смотрят на цену из кассы, параметр не обязателен
            "quantity": number,
            "ingredients": [ //массив модификаторов или элементов комбо
             {
                "id": number,
                "name": "string",
                "quantity": number,
                "price":  number, // в кассе смотрят на цену из кассы, параметр не обязателен
                "ingredients": [ //массив модификаторов для комбо-компонентов. Только с версии агента 2.7.9.1
                   {
                     "id": number,
                     "name": "string",
                     "quantity": number,
                     "price": number // в кассе смотрят на цену из кассы, параметр не обязателен
                   }    
                ]
             }
            ]
        }
    ],
    "delivery": {
       "address": {
           "comment": "string",
           "fullAddress": "string"
       }
    },    
    "discountIds": [
           number,
           number
        ],
// или
        "discountIds": [
            {
                "id": number,
                "value":number
            }
        ],
   }
}
JSON

Параметр

Тип

Обязательный

Описание

async

Асинхронный вызов метода: либо синхронный, либо асинхронный
sync

Синхронный вызов метода: либо синхронный, либо асинхронный
timeoutintнетВремя ожидания ответа от агента в секундах. По умолчанию — 120 секунд
objectIdintдаКод ресторана в системе лицензирования
orderGuiduuidдаУникальный идентификатор заказа
productsarrayнетСостав заказа. Если не указано, обновление состава не происходит
- idintдаИдентификатор блюда
- namestring
Название блюда
- pricemoney
Цена за одно блюдо. Разделителем целой и дробной части суммы должна быть точка
- quantitymoneyдаКоличество блюд
- ingredientsarray
Ингредиенты или состав комбо-блюда
– idintдаИдентификатор ингредиента
- discountIds

Массив идентификаторов кассовых скидок для блюда. Скидку надо задавать обязательно, иначе произойдет удаление
  - id

Идентификатор скидки
  - value

Значение скидки. Указывается сумма или процент. 0 – полное применение скидки. Можно задавать как положительное, так и отрицательные значения




discountIds

int[]/

object[]

нетМассив идентификаторов кассовых скидок GetRefData(DISCOUNTS).Ident. Если скидка была указана при создании заказа, то при UpdateOrder обязательно нужно её указать, иначе произойдет удаление скидки
- idintдаИдентификатор скидки
- valuedecimalнетЗначение скидки. Указывается сумма или процент. 0 – полное применение скидки. Можно задавать как положительное, так и отрицательные значения
deliveryobject?нетДоставка курьером ресторана
 |- addressobject?нетАдрес
   |- commentstring?нетКомментарий к адресу. Если не указано или null, обновление не происходит
   |- fullAddressstring?нетАдрес доставки. Если не указано или null, обновление не происходит

Формат ответа

{ 
   "responseCommon":{ 
      "taskGuid":"guid",
      "taskType":"UpdateOrderProducts",
      "objectId":number
   },
   "error":{ 
      "wsError":{ 
         "code":"string",
         "desc":"string"
      }
   }
}
JSON

Параметр

Тип

Описание

-taskGuidguidУникальный код этой задачи. Используется при получении задачи через очередь
-taskTypestring enumТип задачи
-objectIdintКод ресторана в системе лицензирования
error
Контейнер ошибок, подробнее читайте в статье Описание ошибок