NewOrder (POST)


Сформировать новый заказ.

Внимание!


Для формирования новых тестовых заказов необходимо чтобы комментарий к заказу начинался словом Test. (с точкой)

В этом случае новый заказ будет автоматически отменен.


Если комментарий к заказу НЕ начинается словом Test. (с точкой), то такой новый заказ поступит в дальнейшую автоматическую обработку без возможности отмены.


Пример входных данных:

{
  'PriceCheck'   : '0',          //Если=1, то при увеличении цены товара исключить его из заказа.
  'DeliveryCheck': '1',          //Если=1, то при увеличении срока доставки товара исключить его из заказа.
  'QuantityCheck': '1',          //Если=1, то при уменьшении количества в позиции исключить товар из заказа.
                                 //Количество автоматически уменьшаеся до кратного значения минимальной партии товара.  
  'Mode'         : '1',          //Если=1, то при исключении товаров из заказа не формировать новый заказ.   
  'ContractCode' : 'ПЛ00001234', //Код договора полученный через Contracts.
  'ShipCode'     : 'ПЛ00005555', //Код адреса доставки полученный через Shipping.
  'Comment'      : 'Test. Прошу сообщить о готовности заказа к отправке',  //Комментарий к заказу.
                  //Если комментарий к заказу начинается с слова Test. (с точкой), то заказ будет автоматически отменен.
  'ID_List' : [                                                      //Список товаров.
                {
                  'ID'   : '19f06129-85dd-4224-beb1-06bcfb5e59fb',   //ID товара полученные через (StockByArticle).
                  'Price': '598.34',                                 //Цена товара.  
                  'Delivery_Period':'10',                            //Срок доставки (дней). 
                  'Quantity' : '3',                                  //Количество позиций в заказе.    
                  'Comment'  : 'Прошу упаковать в картонную коробку' //Комментарий к позиции.
                },
                {
                  'ID'   : '25c393f4-b64b-407f-a062-1bb22ad195b0',
                  'Price': '235.76',
                  'Delivery_Period':'15',  
                  'Quantity' : '3', 
                  'Comment'  : '' 
              }
  ]
}

Пример выходных данных:

{ 
 'Code'   : '0000000',  //Код возврата. 
                        //Количество разрядов кода возврата может быть увеличено. 
                        //Разряды кода возврата необходимо считывать справа. 
                        //Например, если первый символ кода возврата справа =0, то заказ оформлен. 
                        //Если=0000000 , то Заказ оформлен без изменений.  
                        //Если=0010000 , то Заказ оформлен. Изменилась цена. 
                        //Если=0001000 , то Заказ оформлен. Изменился срок доставки товара. 
                        //Если=0000100 , то Заказ оформлен. Уменьшилось количество в некоторых позициях товара. 
                        //Если=0000010 , то Заказ оформлен. Отсутствую некоторые позиции в заказе. 
                        //Если=0010001 , то Заказ НЕ оформлен. Изменилась цена. 
                        //Если=0001001 , то Заказ НЕ оформлен. Изменился срок доставки товара. 
                        //Если=0000101 , то Заказ НЕ оформлен. Уменьшилось количество в некоторых позициях товара. 
                        //Если=0000011 , то Заказ НЕ оформлен. Отсутствую некоторые позиции в заказе. 

 'Comment': 'Заказ оформлен',                               //Комментарий к заказу.
 'Price  ': '1235.76',                                      //Общая сумма всех подзаказов.  

 'Orders' : [                                               //Заказ будет автоматически разбит на список из одного или нескольких заказов. 
             {
              'ID' : '7f9b287c-735b-11e6-1234-3ca82a1f45f6' //ID заказа.
             },                                                     
             {                                              //Для получения информации по новому заказу использовать Orders
              'ID' : '0000000c-735b-11e6-1234-3ca82a1f45f6' //Для получения списка позиций к заказу использовать OrderItems
             }
            ],

 'Changed_Items': [        //Список ID товаров которые отсутствуют или по которым изменилась цена, наличие или срок доставки.
                   {
                    'ID'      : '7f9b287c-735b-11e6-1234-3ca82a1f45f6', //ID товара.
                    'Price'   : '789.56',              //Цена на момент заказа товара. Может отличаться от переданной в заказ.
                    'Delivery_Period': '15',           //Срок доставки на момент заказа товара. Может отличаться от переданного в заказ. 
                    'Quantity': '1',                   //Количество в позиции товара. Может отличаться от переданного в заказ.  
                                                       //Количество автоматически уменьшаеся до кратного значения минимальной партии товара.                                                                
                    'Code'    : '0011100'              //Код возврата. Изменилась цена, срок доставки и уменьшилось количество.  
                    'Comment' : 'Повреждена упаковка.' //Комментарий к позиции.   
                   } 
                 ]
}



Параметр Значение Пример
JSONparameter
{
 'PriceCheck'   : '1',   
 'DeliveryCheck': '1',   
 'QuantityCheck': '1',  
 'Mode'         : '1',         
 'ContractCode' : '0000004108',
 'ShipCode'     : 'ПЛ00006944',
 'Comment'      : 'Test. Заказ Апи.', 
 'ID_List' : [                                                     
              {
               'ID'   : '1c6f8f77-39ec-4efc-b71b-00cb000d2634', 
               'Price': '1457.04',                               
               'Delivery_Period':'10',                          
               'Quantity' : '2'                                 
              },
              {
               'ID'   : '0aa99d91-c121-414b-b884-01d414093f2f',
               'Price': '1676.25',
               'Delivery_Period':'15',
               'Quantity' : '1'
              }
             ]
}



$.ajax({
    type: 'POST',
                url        : '/api/NewOrder',
                data       : JSON.stringify(""),  // data - Входные данные
                contentType: 'application/json; charset=utf-8',
                dataType   : 'json',
                headers    : { 'Authorization': 'Bearer ' }
}).done(function (data) {                // data - Выходные данные
            document.getElementById('result').innerText=JSON.stringify(data, null, '\t');        
}).fail(showError);