© Tillypad, 2004-2023

© Tillypad, 2004-2023
POST
/post-guest
{ "gest_ID": "BFA83CA6-A5C9-8945-94FD-32CB40880933" }
В секции BODY
запроса содержимое гостевого счета в иерархическом виде. В секции HEADER
необходимо указать "Content-Type: application/json"
.
curl \ -H "Content-Type: application/json" \ -d @guest_in.json \-o out.json \
--url "http://89.22.216.169:8090/post-guest"
Гостевой счет на входе:
{ "gest_gsst_ID": 0, "gest_Comment": ", Сдача с суммы:3000, К 12-00 часам ", "gest_DateOpen": "2020-10-12T12:00:00", "gest_Count": "20", "gest_dvsn_ID": "274013BE-AA55-294F-ADC6-99DE44BEA4E1", "gest_ClientPhone": "999999999", "gest_Name": "S404095", "gest_ClientAddress": "<?xml version='1.0'?>\n<Address>\n <Village Caption='Населенный пункт' Key='True'>Санкт-Петербург</Village>\n <Street Caption='Улица' Key='True'>Ткачей</Street>\n <House Caption='Дом' Key='True'>101</House>\n <Building Caption='Корпус' Key='True'>А</Building>\n <Apartment Caption='Квартира' Key='True'></Apartment>\n <Entrance Caption='Подъезд' Key='True'></Entrance>\n <Floor Caption='Этаж' Key='True'></Floor>\n <Intercom Caption='Домофон' Key='True'></Intercom>\n <Comment Caption='Комментарий'></Comment>\n</Address>", "gest_ClientName": "Евгения", "gest_IsDelivery": "1", "guestDeliveries": { "gsdlv_dlvrst_ID": 0, "gsdlv_dlvrmt_ID": 1, "gsdlv_pytp_ID_Prepaid": "0789C108-6C80-BC47-BB39-A13C7CDDD030", "gsdlv_CashAmount": "3000", "gsdlv_cncpt_ID": "15761EEA-AD73-BA46-AE1E-5F288CB9BE97", "gsdlv_Date": "2020-10-12T10:20:14", "gsdlv_IsAutoStart": 0, "gsdlv_SendSooner": 0, "gsdlv_NeedConfirmation": 1, "gsdlv_GeoRegionID": "606", "gsdlv_GeoCoordinates": "59.892383, 30.421824" }, "orders": [ { "ordr_orst_ID": 0, "ordr_Date": "2020-10-12T10:20:14", "ordr_Name": "S404095", "orderItems": [ { "orit_mitm_ID": "708E39BB-F1E6-E546-B7A2-4568A30B3FA4", "orit_mvtp_ID": "2FD4FA63-12A1-4FAD-B215-607460886D82", "orit_Volume": 1, "orit_Count": "1", "orit_Price": "480", "orit_VAT": 0, "orit_PriceVat": 0 }, { "orit_mitm_ID": "6D572995-2636-194D-ADEF-CFD2A87E288F", "orit_mvtp_ID": "2FD4FA63-12A1-4FAD-B215-607460886D82", "orit_Volume": 1, "orit_Count": "1", "orit_Price": "490", "orit_VAT": 0, "orit_PriceVat": 0 }, { "orit_mitm_ID": "0702420B-F65C-BA49-B099-D1870855F990", "orit_mvtp_ID": "2FD4FA63-12A1-4FAD-B215-607460886D82", "orit_Volume": 1, "orit_Count": "1", "orit_Price": "490", "orit_VAT": 0, "orit_PriceVat": 0 }, { "orit_mitm_ID": "88F17CAB-4B47-294D-AAFE-D760B47A1540", "orit_mvtp_ID": "2FD4FA63-12A1-4FAD-B215-607460886D82", "orit_Volume": 1, "orit_Count": "1", "orit_Price": "450", "orit_VAT": 0, "orit_PriceVat": 0 }, { "orit_mitm_ID": "025D6A2F-9136-FF4E-93D3-912936643268", "orit_mvtp_ID": "2FD4FA63-12A1-4FAD-B215-607460886D82", "orit_Volume": 1, "orit_Count": "1", "orit_Price": "470", "orit_VAT": 0, "orit_PriceVat": 0 }, { "orit_mitm_ID": "289066B9-823F-6D4E-A1FA-987BBCEEAAA5", "orit_mvtp_ID": "2FD4FA63-12A1-4FAD-B215-607460886D82", "orit_Volume": 1, "orit_Count": "1", "orit_Price": "420", "orit_VAT": 0, "orit_PriceVat": 0 } ] } ] }
Ответ:
{"gest_ID":"0AF8BD5C-2C23-B54A-9A6A-B64ECA8CEED9"}
Если приходит заказ со статусом «Зарегистрирован» (ordr_orst_ID = 1), то заказу прописывается ссылка на текущий торговый день подразделения и создается пречек.
Если у подразделения не оказалось открытого торгового дня, функция возвращает ошибку и клиентское приложение может:
или сохранить гостевой счет в качестве черновика,
или переопределить подразделение.
Пример ошибки:
{{ "timestamp": 1501692189085, "status": 500, "error": "Internal Server Error", "exception": "com.tillypad.lib.client.SQLException", "message": "[Microsoft][ODBC SQL Server Driver][SQL Server]Проверка что у завершаемого заказа проставлен торговый день и подразделение ", "path": "/post-guest", "errorcode": 130228}
Любое время, которое передается в счет, будет записано в базу данных, как передано, без каких-либо изменений. Если время не передано, будет использовано время сервера приложений, с которым работает сервис.
Чтобы заказ приходил сразу на подразделение, минуя кол-центр, и был в статусе «Ждет начала приготовления» нужно:
Чтобы с сайта он приходил в статусе «Ждет подтверждения исполнителя».
Чтобы на подразделении-исполнителе была запущена задача обработки статуса «Ждет начала приготовления», которая автоматически переводит счет в статус «Ждет начала приготовления».
Чтобы на подразделении-исполнителе была запущена задача обработки статуса «Начали готовить», которая в нужный момент автоматически переводит статус счета в «Начали готовить».
В свою очередь, чтобы с сайта заказ приходил в статусе «Ждет подтверждения исполнителя» нужно:
Выставить gsdlv_dlvrst_ID = 2
Не допустить попадания элементов стоп-листа в заказ.
Если заказ – доставка, а не самовывоз, должно быть заполнено поле gsdlv_GeoCoordinates.
Заказ должен идти не на подразделение кол-центра.