на главную страницу программы "Водяной"

Инструменты пользователя

Инструменты сайта


rest_d

Различия

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

Ссылка на это сравнение

Следующая версия
Предыдущая версия
Последняя версия Следующая версия справа и слева
rest_d [2020/03/23 17:01]
timofeev создано
rest_d [2022/12/14 13:01]
timofeev
Строка 1: Строка 1:
 +===Работа с документами через рест-интерфейс===
 В запросах чтения журналов документов можно использовать отборы:​\\ В запросах чтения журналов документов можно использовать отборы:​\\
 offset (int) - сдвиг\\ offset (int) - сдвиг\\
Строка 11: Строка 12:
  
  
-==Журнал накладных== +===Получение накладных=== 
-GET /orders +[[rest_rn|получение списка накладных (GET /​orders)]] 
-Возможен фильтр по формам расчетов, задаваемый в массиве form_payments. В указанном массиве указываются ​коды или наименования во внешней системе. Слова CASH и CASHLESS всегда интерпретируются как формы расчетов наличными и платежной картой (первые формы, ​имеющие соответствующие названия и настройки), ​другие ​наименования или коды во внешней системе должны быть указаны в справочнике Водяного "​маркетинг - формы расчетов (нал., безнал.)"​.\\. ​+ 
 +[[rest_rnakl_num|Накладная ​по номеру и дате]] 
 + 
 +[[rest_rnakl_id|Накладная по идентификатору]] 
 + 
 + 
 + 
 +==Создание накладной (заявки)== 
 +POST /orders
 <​code>​ <​code>​
-http://​127.0.0.1:​10400/​api/​orders?​date_gte='​23.03.2020 08.00'&​form_payments=[“CASHLESS”,​ “CHARITY”]+POST http://​127.0.0.1:​10400/​api/​orders
 </​code>​ </​code>​
-Ответ+Тело запроса
 <​code>​ <​code>​
 +{"​datadoc":"​22.03.2020 10:​05:​00",​
 +"​planvrem":"​22.03.2020 12:​05:​00",​
 +"​POLPLATKART":​500,​
 +"​kontragent":​1000000000001,​
 +"​adres":​1000000000001,​
 +"​comment":"​Оставить в кв. 22",
 +"​TOVARY":​[{"​tovar":​1000000000001,"​kolvo":​3},​
 +{"​tovar":​1000000000002,"​kolvo":"​1.25",​ "​cena":"​20","​summa":"​25.00"​}],​
 +"​USLUGI":​[{"​usluga":​1000000000001,"​kolvo":​1,​ "​cena":"​400.00","​summa":"​400.00"​}],​
 +"​ZTARA":​[{"​tara":​1000000000001,"​kolvo":​1,​ "​cena":"​350.00","​summa":"​350.00"​}],​
 +"​PRDTARA":​[{"​tara":​1000000000001,"​kolvo":​1,​ "​cena":"​300.00","​summa":"​300.00"​}]
 +}
 +Здесь POLPLATKART - сумма платежа картой. Если заполнена,​ будет создан документ "​Платёж банковской картой"​ на выбранную сумму.\\
 +Массивы TOVARY, USLUGI, ​ ZTARA, PRDTARA содержат,​ соответственно товары,​ услуги,​ тару выданную под залог и проданную по документу,​ при отсутствии,​ например,​ залоговой тары, соответствующий массив передавать не надо. ​
 +</​code>​
  
 +Ответ ​
 +<​code>​
 +{"​result":​ 1000000000298}
 </​code>​ </​code>​
 +Создана накладная с кодом 1000000000298.
  
  
-==Список товаров== +==Создание ведомости доставки (назначение экипажа автомобиля на смену доставки)== 
-GET /products+Запрос
 <​code>​ <​code>​
 +POST http://​127.0.0.1:​10400/​api/​crew
 </​code>​ </​code>​
-Ответ+Тело запроса
 <​code>​ <​code>​
 +{"​avtomob":​1000000000001, ​
 +"​smena":​1000000000002, ​
 +"​vod":​1000000000005,​
 +"​eksp":​1000000000005, ​
 +"​pomeksp":​1000000000005, ​
 +"​datadoc":"​22.03.2020 16:​02:​04.0"​}
 </​code>​ </​code>​
 +Ответ ​
 +<​code>​
 +ОК
 +</​code>​
 +
 +
 +==Изменение накладной (присоединение к ведомости доставки)==
 +PATCH /orders/:id
 +Запрос
 +<​code>​
 +http://​127.0.0.1:​10400/​api/​orders/​1000000000299
 +</​code>​
 +Тело запроса
 +<​code>​
 +{"​crew":​1000000000140, ​
 +"​planvrem":"​22.03.2020 21:​05:​00"​
 +}
 +</​code>​
 +Здесь crew - код ведомости доставки\\
 +Будут созданы строки ​ указанной ведомости доставки,​ соответствующие этой накладной.
 +planvrem - расчетное время прибытия.\\
 +В запросе редактирования допустимы любые поля, кроме служебных (идентификатор,​ дата создания,​ изменения,​ автор и проч.).\\
 +ВАЖНО!!! НЕДОПУСТИМО передавать массивы табличных частей,​ эти параметры будут проигнорированы. При необходимости редактирования состава накладной ее следует удалить и создать заново.
 + 
 +Ответ ​
 +<​code>​
 +ОК
 +</​code>​
 +
 +==Удаление накладной ==
 +<​code>​
 +http://​127.0.0.1:​10400/​api/​orders/​1000000000294
 +</​code>​
 +
 +Ответ ​
 +<​code>​
 +ОК
 +</​code>​
 +При удалении накладной будут удалены строки ведомости доставки,​ соответствующие этой накладной.
 +
 +==Недоставленный заказ==
 +POST /​orders/:​id/​cancel
 +
 +<​code>​
 +POST http://​127.0.0.1:​10400/​api/​orders/​1000000000298/​cancel
 +</​code>​
 +тело запроса ​
 +<​code>​
 +{"​comment":"​звонили на все телефоны","​prob":​1}
 +</​code>​
 +Здесь comment- пояснение водителя,​ prob - код причины невыполнения заказа во внешней системе (эти коды должны быть указаны в справочнике "​маркетинг - проблемные ситуации",​ в поле "​код в мобильном приложении"​).\\
 +Ответ <​code>​
 +ОК
 +</​code>​
 +Накладная переведена в состояние "не удалось выполнить",​ в поле "​проблема"​ указана причина,​ соответствующая переданному коду, в поле "​пояснение к проблеме"​ - текст поля "​comment"​ из тела запроса.
 +
 +==Выполненный заказ==
 +POST /​orders/:​id/​complete
 +
 +<​code>​
 +POST  http://​127.0.0.1:​10400/​api/​orders/​1000000000298/​complete
 +</​code>​
 +тело запроса ​
 +<​code>​
 +{"​POLUCH":"​200.00",​
 +"​tara":​1000000000001,​
 +"​vztary":​2}
 +</​code>​
 +Здесь poluch - сумма, полученная наличными,​ tara- код оборотной тары, vztary - количество возвращенной оборотной тары
 +<​code>​
 +ОК
 +</​code>​
 +Накладная переведена в состояние "​выполнена"​
 +
  
 +[[rest|REST-интерфейс для внешних систем]]
  
rest_d.txt · Последние изменения: 2022/12/14 13:05 — timofeev