Товари

Список товарів

Отримати список товарів

GET /api/goods{?id_group,immediate_parent,order,ids_list,filters,active,type_goods,offset,limit,unprotect_keys}

Отримання списку товарів. Якщо не вказувати код групи, повертаються всі товари, якщо immediate_parent не дорівнює “true”, будуть повернуті також товари, які входять до підпорядкованих груп указаної групи товарів

Параметри

Параметр

Тип

Обов’язковий

Опис

id_group

integer

ні

Код групи товарів, до якої належить товар

immediate_parent

string

ні

Якщо параметр дорівнює “true”, то повертаються товари, які належать безпосередньо до цієї групи

order

string

ні

Список полів сортування через кому без пробілів. Для зворотного сортування поставити - перед іменем поля.

ids_list

string

ні

Список значень ключового поля записів, які потрібно повернути. Зазначається через кому без пробілу

filters

string

ні

Текстові фільтри у форматі: field_name:: |field_name1::

active

string

ні

Якщо параметр дорівнює “true”, то повертаються лише активні товари.

offset

integer

ні

Повертати дані, починаючи з указаного номера запису

limit

integer

ні

Повертати вказану кількість записів

Відповідь 200 (application/json)

[
  {
    "id_group": 1,
    "id_tax": 1,
    "name_goods": "Чашка обычная",
    "sort_order": "7",
    "id_printer": 1,
    "type_goods": 0,
    "active": true,
    "id_goods": 7,
    "control_rest": false,
    "permission_type": 0,
    "extern_service_id": 1,
    "print_name_goods": "Чашка обычная",
    "free_price": false,
    "only_bar_code": false,
    "control_showcase": false,
    "min_order": 0,
    "id_client": 1,
    "use_series": false,
    "id_text": 1,
    "id_modificator_group": 1
  }
]

Додати товар

POST /api/goods{?id_group,immediate_parent,order,ids_list,filters,active,type_goods,offset,limit,unprotect_keys}

Додавання нового товару.

  • Атрибут id_goods у JSON-і запиту ігнорується (значення буде встановлено автоматично), якщо не вказано параметр unprotect_keys=true

  • До таблиці front.series буде додано запис із серією за замовчуванням для цього товару (“-”)

Параметри

Параметр

Тип

Обов’язковий

Опис

unprotect_keys

string

ні

Якщо параметр існує і дорівнює “true”, в операціях створення/редагування значення ключового поля не ігноруються

Заголовки запиту:

  • Content-Type: application/json

Тіло запиту:

{
  "id_group": 1,
  "id_tax": 1,
  "name_goods": "Чашка обычная",
  "sort_order": "7",
  "id_printer": 1,
  "type_goods": 0,
  "active": true,
  "id_goods": 7,
  "control_rest": false,
  "permission_type": 0,
  "extern_service_id": 1,
  "print_name_goods": "Чашка обычная",
  "free_price": false,
  "only_bar_code": false,
  "control_showcase": false,
  "min_order": 0,
  "id_client": 1,
  "use_series": false,
  "id_text": 1,
  "id_modificator_group": 1
}

Відповідь 201 (application/json)

{
  "id_group": 1,
  "id_tax": 1,
  "name_goods": "Чашка обычная",
  "sort_order": "7",
  "id_printer": 1,
  "type_goods": 0,
  "active": true,
  "id_goods": 7,
  "control_rest": false,
  "permission_type": 0,
  "extern_service_id": 1,
  "print_name_goods": "Чашка обычная",
  "free_price": false,
  "only_bar_code": false,
  "control_showcase": false,
  "min_order": 0,
  "id_client": 1,
  "use_series": false,
  "id_text": 1,
  "id_modificator_group": 1
}

Схема:

{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id_group": {
      "type": "number"
    },
    "id_tax": {
      "type": "number"
    },
    "name_goods": {
      "type": "string"
    },
    "sort_order": {
      "type": "string"
    },
    "id_printer": {
      "type": "number"
    },
    "type_goods": {
      "type": "number"
    },
    "active": {
      "type": "boolean"
    },
    "id_goods": {
      "type": "number"
    },
    "control_rest": {
      "type": "boolean"
    },
    "permission_type": {
      "type": "number"
    },
    "extern_service_id": {
      "type": [
        "number",
        "null"
      ]
    },
    "print_name_goods": {
      "type": "string"
    },
    "free_price": {
      "type": "boolean"
    },
    "only_bar_code": {
      "type": "boolean"
    },
    "control_showcase": {
      "type": "boolean"
    },
    "min_order": {
      "type": "number"
    },
    "id_client": {
      "type": [
        "number",
        "null"
      ]
    },
    "use_series": {
      "type": "boolean"
    },
    "id_text": {
      "type": [
        "number",
        "null"
      ]
    },
    "id_modificator_group": {
      "type": [
        "number",
        "null"
      ]
    }
  },
  "required": [
    "id_goods",
    "id_group",
    "id_tax",
    "name_goods",
    "id_goods",
    "control_rest",
    "permission_type",
    "extern_service_id",
    "print_name_goods",
    "free_price",
    "only_bar_code",
    "control_showcase",
    "min_order",
    "id_client",
    "use_series",
    "id_text",
    "id_modificator_group"
  ]
}

Кількість товарів

Отримати кількість товарів

GET /api/goods/count{?id_group,immediate_parent,ids_list,filters,active,type_goods}

Повертає кількість записів

Параметри

Параметр

Тип

Обов’язковий

Опис

id_group

integer

ні

Код групи товарів, до якої належить товар

immediate_parent

string

ні

Якщо параметр дорівнює “true”, то повертаються товари, які належать безпосередньо до цієї групи

ids_list

string

ні

Список значень ключового поля записів, які потрібно повернути. Зазначається через кому без пробілу

filters

string

ні

Текстові фільтри у форматі: field_name:: |field_name1::

active

string

ні

Якщо параметр дорівнює “true”, то повертаються лише активні товари.

Відповідь 200 (application/json)

{
  "count": 10
}

Схема:

{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "count": {
      "type": "number"
    }
  },
  "required": [
    "count"
  ]
}

Товар

Отримати товар

GET /api/goods/{id_goods}{?unprotect_keys}

Отримання товару за кодом

Параметри

Параметр

Тип

Обов’язковий

Опис

id_goods

integer

так

Код товару

Відповідь 200 (application/json)

{
  "id_group": 1,
  "id_tax": 1,
  "name_goods": "Чашка обычная",
  "sort_order": "7",
  "id_printer": 1,
  "type_goods": 0,
  "active": true,
  "id_goods": 7,
  "control_rest": false,
  "permission_type": 0,
  "extern_service_id": 1,
  "print_name_goods": "Чашка обычная",
  "free_price": false,
  "only_bar_code": false,
  "control_showcase": false,
  "min_order": 0,
  "id_client": 1,
  "use_series": false,
  "id_text": 1,
  "id_modificator_group": 1
}

Схема:

{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id_group": {
      "type": "number"
    },
    "id_tax": {
      "type": "number"
    },
    "name_goods": {
      "type": "string"
    },
    "sort_order": {
      "type": "string"
    },
    "id_printer": {
      "type": "number"
    },
    "type_goods": {
      "type": "number"
    },
    "active": {
      "type": "boolean"
    },
    "id_goods": {
      "type": "number"
    },
    "control_rest": {
      "type": "boolean"
    },
    "permission_type": {
      "type": "number"
    },
    "extern_service_id": {
      "type": [
        "number",
        "null"
      ]
    },
    "print_name_goods": {
      "type": "string"
    },
    "free_price": {
      "type": "boolean"
    },
    "only_bar_code": {
      "type": "boolean"
    },
    "control_showcase": {
      "type": "boolean"
    },
    "min_order": {
      "type": "number"
    },
    "id_client": {
      "type": [
        "number",
        "null"
      ]
    },
    "use_series": {
      "type": "boolean"
    },
    "id_text": {
      "type": [
        "number",
        "null"
      ]
    },
    "id_modificator_group": {
      "type": [
        "number",
        "null"
      ]
    }
  },
  "required": [
    "id_goods",
    "id_group",
    "id_tax",
    "name_goods",
    "id_goods",
    "control_rest",
    "permission_type",
    "extern_service_id",
    "print_name_goods",
    "free_price",
    "only_bar_code",
    "control_showcase",
    "min_order",
    "id_client",
    "use_series",
    "id_text",
    "id_modificator_group"
  ]
}

Змінити товар

PUT /api/goods/{id_goods}{?unprotect_keys}

Зміна товару.

  • Спроба змінити id_goods ігнорується

Параметри

Параметр

Тип

Обов’язковий

Опис

id_goods

integer

так

Код товару

Заголовки запиту:

  • Content-Type: application/json

Тіло запиту:

{
  "id_group": 1,
  "id_tax": 1,
  "name_goods": "Чашка обычная",
  "sort_order": "7",
  "id_printer": 1,
  "type_goods": 0,
  "active": true,
  "id_goods": 7,
  "control_rest": false,
  "permission_type": 0,
  "extern_service_id": 1,
  "print_name_goods": "Чашка обычная",
  "free_price": false,
  "only_bar_code": false,
  "control_showcase": false,
  "min_order": 0,
  "id_client": 1,
  "use_series": false,
  "id_text": 1,
  "id_modificator_group": 1
}

Відповідь 200 (application/json)

{
  "id_group": 1,
  "id_tax": 1,
  "name_goods": "Чашка обычная",
  "sort_order": "7",
  "id_printer": 1,
  "type_goods": 0,
  "active": true,
  "id_goods": 7,
  "control_rest": false,
  "permission_type": 0,
  "extern_service_id": 1,
  "print_name_goods": "Чашка обычная",
  "free_price": false,
  "only_bar_code": false,
  "control_showcase": false,
  "min_order": 0,
  "id_client": 1,
  "use_series": false,
  "id_text": 1,
  "id_modificator_group": 1
}

Схема:

{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id_group": {
      "type": "number"
    },
    "id_tax": {
      "type": "number"
    },
    "name_goods": {
      "type": "string"
    },
    "sort_order": {
      "type": "string"
    },
    "id_printer": {
      "type": "number"
    },
    "type_goods": {
      "type": "number"
    },
    "active": {
      "type": "boolean"
    },
    "id_goods": {
      "type": "number"
    },
    "control_rest": {
      "type": "boolean"
    },
    "permission_type": {
      "type": "number"
    },
    "extern_service_id": {
      "type": [
        "number",
        "null"
      ]
    },
    "print_name_goods": {
      "type": "string"
    },
    "free_price": {
      "type": "boolean"
    },
    "only_bar_code": {
      "type": "boolean"
    },
    "control_showcase": {
      "type": "boolean"
    },
    "min_order": {
      "type": "number"
    },
    "id_client": {
      "type": [
        "number",
        "null"
      ]
    },
    "use_series": {
      "type": "boolean"
    },
    "id_text": {
      "type": [
        "number",
        "null"
      ]
    },
    "id_modificator_group": {
      "type": [
        "number",
        "null"
      ]
    }
  },
  "required": [
    "id_goods",
    "id_group",
    "id_tax",
    "name_goods",
    "id_goods",
    "control_rest",
    "permission_type",
    "extern_service_id",
    "print_name_goods",
    "free_price",
    "only_bar_code",
    "control_showcase",
    "min_order",
    "id_client",
    "use_series",
    "id_text",
    "id_modificator_group"
  ]
}

Деактивувати товар

DELETE /api/goods/{id_goods}{?unprotect_keys}

Деактивація товару

Параметри

Параметр

Тип

Обов’язковий

Опис

id_goods

integer

так

Код товару

Відповідь 204

Типи товарів

Отримати список типів товарів

GET /api/typesGoods

Відповідь 200 (application/json)

[
  {
    "type_goods": 1,
    "name": "Обычный товар"
  }
]