/api/lite/purchase_orders
Запрос списка заказов поставщиков
/api/lite/purchase_orders
Метод возвращает список заказов с заданной фильтрацией.
Можно использовать как для получения списка, так и единичного заказа.
Фильтрация
Для фильтрации есть следующие возможности:
- id - по номеру заказа
- filter_tags - по меткам заказов (можно указывать несколько через зяпятую)
- filter_states - по статусам заказов (можно указывать несколько через зяпятую)
Пейджинация
Для пейджинации используются параметры page и size: size - записей на странице, page - номер страницы.
Пример: /api/lite/orders?page=0&size=200
Если параметры не переданы, то дефолтные значения page=0&size=100
Также для отображение пейджинации следует анализировать параметр recordsTotal, возвращающий общее количество записей (с учетом примененной фильтрации, если она есть).
Сортировка
Для сортировки задается параметр order, принимающий код поля для сортировки и направление сортировки (asc, desc), отделенное символом плюса.
Пример сортировки по дате (возрастание): /api/lite/orders?order=date+asc
Пример сортировки по дате (убывание): /api/lite/orders?order=date+desc
Доступные коды сортировки:
- date (дата заказа)
- id (номер заказа)
По умолчанию используется сортировка по дате заказа по убыванию.
Полный комплект данных по заказам будет передан только если в запросе будет параметр full_info=true
Пример запроса по одному заказу и полными данными:
GET api/lite/purchase_orders?id=1001&full_info=true
Пример результата запроса
{
"success": true,
"recordsTotal": 1,
"purchaseOrders": [
{
"id": "1001",
"externalId": "extId",
"externalId2": "extId2",
"externalId3": "extId3",
"externalId4": "extId4",
"externalId5": "extId5",
"date": "2021-04-02 15:50:41",
"updateTs": "2021-04-02 15:50:48.032",
"status": "COMPLETED",
"totalOrderSum": 0,
"comment": "",
"totalQuantity": 100,
"supplier": {
"id": "da1686cf-0551-db1d-57b9-c04120309fae",
"type": "PERSON",
"role": null,
"name": "Розничный покупатель",
"organization": null,
"person": {
"name": "",
"surname": "",
"patronymic": "",
"fullName": "Розничный Покупатель",
"phone": "",
"rawPhone": null,
"alternativePhone": "",
"email": null,
"post": null,
"personType": null,
"address": {
"country": null,
"countryCode": null,
"region": null,
"area": null,
"city": null,
"settlement": null,
"street": null,
"house": null,
"block": null,
"building": null,
"flat": null,
"fullAddress": null,
"fullCity": null,
"rawData": null,
"zip": null,
"regionFias": null,
"areaFias": null,
"cityFias": null,
"settlementFias": null
}
}
},
"items": [
{
"num": 1,
"variantId": "1001",
"productId": "1001",
"name": "товар тест 3",
"quantity": 100,
"quantityFact": 100,
"quantityRaw": 100,
"quantityDefective": 0,
"vatRate": "NO_VAT",
"price": 0,
"img": "https://storage.yandexcloud.net/images-k2c/05d7a992-1c61-4f39-87c6-1401405055e2.jpg",
"skuType": "SKU",
"barcode": ""
}
],
"files": [
{
"id": "43f79bac-0d82-2d82-f11d-abd1a53b26a0",
"fileType": "PDF",
"fileSource": "FULFILLMENT", //ESHOP | USER
"fileName": "МХ1",
"fileExt": "pdf",
"url": "https://yadi.sk/d/BzKXkRigQZtVnB",
"printWhenPacking": true,
"copiesQty": 1
}
],
"warehouseName": "Свой склад",
"warehouseCode": "373b1e28-a6d7-545f-9303-65af3a652d48",
"confirmStatus": "APPROVED",
"warehouseFFExported": false,
"warehouseFFSync": false,
"currency": "RUB"
}
]
}
Пример запроса по списку заказов:
GET /api/lite/purchase_orders
Пример результата запроса:
{
"success": true,
"recordsTotal": 2,
"purchaseOrders": [
{
"id": "1001",
"externalId": "extId",
"externalId2": "extId2",
"externalId3": "extId3",
"externalId4": "extId4",
"externalId5": "extId5",
"date": "2021-04-02 15:50:41",
"updateTs": "2021-04-02 15:50:48.032",
"status": "COMPLETED",
"totalOrderSum": 0,
"comment": "",
"totalQuantity": 100,
"supplier": {
"id": "da1686cf-0551-db1d-57b9-c04120309fae",
"type": "PERSON",
"role": null,
"name": "Розничный покупатель",
"organization": null,
"person": {
"name": "",
"surname": "",
"patronymic": "",
"fullName": "Розничный Покупатель",
"phone": "",
"rawPhone": null,
"alternativePhone": "",
"email": null,
"post": null,
"personType": null,
"address": {
"country": null,
"countryCode": null,
"region": null,
"area": null,
"city": null,
"settlement": null,
"street": null,
"house": null,
"block": null,
"building": null,
"flat": null,
"fullAddress": null,
"fullCity": null,
"rawData": null,
"zip": null,
"regionFias": null,
"areaFias": null,
"cityFias": null,
"settlementFias": null
}
}
},
"items": [
{
"num": 1,
"variantId": "1001",
"productId": "1001",
"name": "товар тест 3",
"quantity": 100,
"quantityFact": 100,
"quantityRaw": 100,
"quantityDefective": 0,
"vatRate": "NO_VAT",
"price": 0,
"img": "https://storage.yandexcloud.net/images-k2c/05d7a992-1c61-4f39-87c6-1401405055e2.jpg",
"skuType": "SKU",
"barcode": ""
}
],
"files": [
{
"id": "43f79bac-0d82-2d82-f11d-abd1a53b26a0",
"fileType": "PDF",
"fileSource": "FULFILLMENT", //ESHOP | USER
"fileName": "МХ1",
"fileExt": "pdf",
"url": "https://yadi.sk/d/BzKXkRigQZtVnB",
"printWhenPacking": true,
"copiesQty": 1
}
],
"warehouseName": "Свой склад",
"warehouseCode": "373b1e28-a6d7-545f-9303-65af3a652d48",
"confirmStatus": "APPROVED",
"warehouseFFExported": false,
"warehouseFFSync": false,
"currency": "RUB"
},
{
"id": "1002",
"date": "2021-04-03 15:50:41",
"updateTs": "2021-04-02 15:50:48.032",
"status": "COMPLETED",
"totalOrderSum": 0,
"comment": "",
"totalQuantity": 100,
"supplier": {
"id": "da1686cf-0551-db1d-57b9-c04120309fae",
"type": "PERSON",
"role": null,
"name": "Розничный покупатель",
"organization": null,
"person": {
"name": "",
"surname": "",
"patronymic": "",
"fullName": "Розничный Покупатель",
"phone": "",
"rawPhone": null,
"alternativePhone": "",
"email": null,
"post": null,
"personType": null,
"address": {
"country": null,
"countryCode": null,
"region": null,
"area": null,
"city": null,
"settlement": null,
"street": null,
"house": null,
"block": null,
"building": null,
"flat": null,
"fullAddress": null,
"fullCity": null,
"rawData": null,
"zip": null,
"regionFias": null,
"areaFias": null,
"cityFias": null,
"settlementFias": null
}
}
},
"items": [
{
"num": 1,
"variantId": "1001",
"productId": "1001",
"name": "товар тест 3",
"quantity": 100,
"quantityFact": 100,
"quantityRaw": 100,
"quantityDefective": 0,
"vatRate": "NO_VAT",
"price": 0,
"img": "https://storage.yandexcloud.net/images-k2c/05d7a992-1c61-4f39-87c6-1401405055e2.jpg",
"skuType": "SKU",
"barcode": ""
}
],
"files": [
{
"id": "43f79bac-0d82-2d82-f11d-abd1a53b26a0",
"fileType": "PDF",
"fileSource": "FULFILLMENT", //ESHOP | USER
"fileName": "МХ1",
"fileExt": "pdf",
"url": "https://yadi.sk/d/BzKXkRigQZtVnB",
"printWhenPacking": true,
"copiesQty": 1
}
],
"warehouseName": "Свой склад",
"warehouseCode": "373b1e28-a6d7-545f-9303-65af3a652d48",
"confirmStatus": "APPROVED",
"warehouseFFExported": false,
"warehouseFFSync": false,
"currency": "RUB"
}
]
}
Возможные статусы заказа:
NEW
READY_TO_TAKE_IN
TAKE_IN_PROCESS
COMPLETED
COMPLETED_WITH_DIFFERENCE
DIFFERENCE
CANCELED
Создание/редактирование заказа
/api/lite/purchase_orders
Создание/редактирование заказа для кабинета.
Если указан параметр id - то система будет пробовать найти заказ с указанным номером и отредактировать его, иначе - создаст новый с указанным id.
Если параметр id не указан - система создаст новый заказ и присвоит внутренний номер.
Пример запроса:
{
"items": [
{
"num": 1,
"variantId": "demo1024",
"productId": "demo1006",
"productExtId": null,
"name": "Компьютер (демо товар) ",
"quantity": 3,
"quantityRaw": 0,
"price": 20000,
"vatRate": "NO_VAT",
"article": "demo1024",
"skuType": "SKU"
}
],
"warehouseCode": "373b1e28-a6d7-545f-9303-65af3a652d48",
"warehouseName": "Свой склад",
"supplier": {
"id": "da1686cf-0551-db1d-57b9-c04120309fae"
},
"dateOfDeliveryPlan": null,
"comment": "",
"confirmStatus": "APPROVED",
"externalId": "extId",
"externalId2": "extId2",
"externalId3": "extId3",
"externalId4": "extId4",
"externalId5": "extId5"
}
В ответ возвращается:
{
"success": true,
"orderId": "111",
"c": "2b92b631-7f1b-c52a-897e-30bc628f87e5"
}
Ошибка:
{
"success": false,
"errors": [
{
"code": 0,
"message": "Текст ошибки"
}
]
}