Управление template¶
В API v2 значительно расширена функциональность управления template товаров для распознавания. Добавлены новые методы для работы с template, включая импорт/экспорт данных и более гибкое управление жизненным циклом template.
Добавление template товара¶
Добавить новый регистрационный template, связав id с текущим изображением камеры. Если функция add_item_template отключена режимом обучения, будет возвращена ошибка -6217.
URL интерфейса:
http://172.22.0.6/api/add_item_templateМетод запроса:
POSTContent-Type:
application/json
Параметры тела запроса:
{
"id": "001"
}
Параметр |
Пример значения |
Тип |
Обязательность |
Описание |
|---|---|---|---|---|
id |
001 |
String |
Да |
PLU код товара |
Пример успешного ответа:
{
"code": 0,
"data": {
"image": "example_base64",
"sid": "20250409172600091096974"
}
}
Параметр |
Пример значения |
Тип |
Описание |
|---|---|---|---|
code |
0 |
Number |
Код результата: 0 — успех |
data.image |
example_base64 |
String |
Base64 кодирование шаблонного изображения |
data.sid |
20250527142038229039451 |
String |
Уникальный идентификатор template |
Получение списка template товара¶
Получить все зарегистрированные template для id товара.
URL интерфейса:
http://172.22.0.6/api/get_item_template_listМетод запроса:
POSTContent-Type:
application/json
Параметры тела запроса:
{
"id": "001"
}
Параметр |
Пример значения |
Тип |
Обязательность |
Описание |
|---|---|---|---|---|
id |
001 |
String |
Да |
PLU код товара |
Пример успешного ответа:
{
"code": 0,
"data": [
"20250325182631900286512",
"20250325182635248390972",
"center"
],
"max": 30
}
Параметр |
Пример значения |
Тип |
Описание |
|---|---|---|---|
code |
0 |
Number |
Код результата: 0 — успех |
data |
— |
Array |
Список ID template этого товара |
max |
30 |
Number |
Максимальное количество template |
Удаление template товара¶
Удалить зарегистрированный template sid товара id. Если функция delete_item_template отключена режимом обучения, будет возвращена ошибка -6217.
URL интерфейса:
http://172.22.0.6/api/delete_item_templateМетод запроса:
POSTContent-Type:
application/json
Параметры тела запроса:
{
"id": "001",
"sid": "20250325182635248390972"
}
Параметр |
Пример значения |
Тип |
Обязательность |
Описание |
|---|---|---|---|---|
id |
001 |
String |
Да |
PLU код товара |
sid |
20250325182635248390972 |
String |
Да |
Уникальный ID шаблона |
Пример успешного ответа:
{
"code": 0,
"data": null
}
Параметр |
Пример значения |
Тип |
Описание |
|---|---|---|---|
code |
0 |
Number |
Код результата: 0 — успех |
data |
— |
Null |
— |
Получение списка товаров для распознавания¶
Получить id товаров и количество template для каждого товара.
URL интерфейса:
http://172.22.0.6/api/get_item_listМетод запроса:
GETContent-Type:
none
Пример успешного ответа:
{
"code": 0,
"data": [
{
"count": 3,
"id": "001"
},
{
"count": 1,
"id": "002"
},
{
"count": 1,
"id": "003"
},
{
"count": 1,
"id": "004"
}
]
}
Параметр |
Пример значения |
Тип |
Описание |
|---|---|---|---|
code |
0 |
Number |
Код результата: 0 — успех |
data[].id |
001 |
String |
PLU код товара |
data[]. count |
1 |
Number |
Количество template товара |
Удаление всех template товара¶
Удалить все template указанного товара. Если включена синхронизация загрузки, шаблоны будут загружены снова после удаления.
URL интерфейса:
http://172.22.0.6/api/delete_itemМетод запроса:
POSTContent-Type:
application/json
Параметры тела запроса:
{
"id": "001"
}
Параметр |
Пример значения |
Тип |
Обязательность |
Описание |
|---|---|---|---|---|
id |
001 |
String |
Да |
PLU код товара |
Пример успешного ответа:
{
"code": 0,
"data": null
}
Параметр |
Пример значения |
Тип |
Описание |
|---|---|---|---|
code |
0 |
Number |
Код результата: 0 — успех |
data |
— |
Null |
— |
Очистка всех template¶
Очистить все template всех товаров. Если включена синхронизация загрузки, template будут загружены снова после удаления.
URL интерфейса:
http://172.22.0.6/api/clear_all_templateМетод запроса:
POSTContent-Type:
none
Пример успешного ответа:
{
"code": 0,
"data": null
}
Параметр |
Пример значения |
Тип |
Описание |
|---|---|---|---|
code |
0 |
Number |
Код результата: 0 — успех |
data |
— |
Null |
— |
Экспорт данных template¶
Экспортировать данные template. Если передан список ids, будут экспортированы только указанные товары. Если список ids не передан, будут экспортированы все товары. Этот интерфейс возвращает ответ немедленно, используйте export_template_status для получения результата.
URL интерфейса:
http://172.22.0.6/api/export_templateМетод запроса:
POSTContent-Type:
application/json
Параметры тела запроса:
{
"ids": ["002", "003"]
}
Параметр |
Пример значения |
Тип |
Обязательность |
Описание |
|---|---|---|---|---|
ids |
[«002», «003»] |
Array |
Нет |
Список товаров |
Пример успешного ответа:
{
"code": 0,
"data": null
}
Параметр |
Пример значения |
Тип |
Описание |
|---|---|---|---|
code |
0 |
Number |
Код результата: 0 — успех |
data |
— |
Null |
— |
Статус экспорта template¶
Запрос статуса экспорта template. Если пакет готовится, нужно проверять каждую секунду до завершения. Если пакет готов, ссылка для загрузки файла: {host}/download/filename
Коды статуса:
0 — нет задачи экспорта;
1 — пакет готовится;
3 — пакет готов;
6 — ошибка генерации.
URL интерфейса:
http://172.22.0.6/api/export_template_statusМетод запроса:
GETContent-Type:
none
Пример успешного ответа:
{
"code": 0,
"filename": "12067_20250409.evo",
"msg": "Export completed",
"status": 3
}
Параметр |
Пример значения |
Тип |
Описание |
|---|---|---|---|
code |
0 |
Number |
Код результата: 0 — успех |
msg |
Export completed |
String |
Информация о статусе |
filename |
12067_20250409.evo |
String |
Имя файла (опционально) |
status |
3 |
Number |
Код статуса |
Импорт данных template¶
Импортировать указанный пакет данных template. Этот интерфейс возвращает ответ немедленно, используйте import_template_status для получения результата.
URL интерфейса:
http://172.22.0.6/api/import_templateМетод запроса:
POSTContent-Type:
form-data
Параметры тела запроса:
Параметр |
Пример значения |
Тип |
Обязательность |
Описание |
|---|---|---|---|---|
file |
D:\12067_20250409.evo |
File |
Да |
Файл для импорта |
Пример url:
curl --location 'http://{host}/api/import_template' \
--form 'file=@"/D:/12067_20250409.evo"'
Пример успешного ответа:
{
"code": 0,
"data": null
}
Параметр |
Пример значения |
Тип |
Описание |
|---|---|---|---|
code |
0 |
Number |
Код результата: 0 — успех |
data |
— |
Null |
— |
Статус импорта template¶
Запрос статуса импорта template.
Коды статуса:
0 — нет задачи импорта;
2 — импорт;
3 — проверка целостности пакета;
4 — завершен;
5 — ошибка импорта;
7 — ошибка проверки.
URL интерфейса:
http://172.22.0.6/api/import_template_statusМетод запроса:
GETContent-Type:
none
Пример успешного ответа:
{
"code": 0,
"msg": "Import successful",
"status": 4
}
Параметр |
Пример значения |
Тип |
Описание |
|---|---|---|---|
code |
0 |
Number |
Код результата: 0 — успех |
msg |
Import successful |
String |
Информация о статусе |
status |
4 |
Number |
Код статуса |
Установка на товар отметки «Удалить со всех устройств»¶
Удаление данных товара на Master-устройстве и всех подчиненных (slave-устройствах).
Примечание
Данный интерфейс доступен для вызова только на Master-устройстве.
На Master-устройстве для указанного товара устанавливается отметка «Удалить со всех устройств». При последующей синхронизации модулей распознавания (slave-устройствах) информация об удалении передается на них, и это запускает процесс локального удаления данных на стороне каждого подключенного устройства.
В ходе этого процесса функция синхронизации для данного конкретного товара отключается, при этом остальные товары обновляются в штатном режиме. Установленные отметки и удаления автоматически сбрасываются после перезагрузки Master-устройства.
URL:
http://172.22.0.6/api/set_deletion_all_flagRequest Method:
POSTContent-Type:
application/json
Параметры тела запроса:
Параметр |
Пример |
Тип |
Обязательность |
Описание |
|---|---|---|---|---|
id |
«001» |
String |
Да |
Идентификатор товара (PLU) |
Пример:
{
"id": "001"
}
Пример успешного ответа:
Параметр |
Пример |
Тип |
Описание |
|---|---|---|---|
code |
0 |
Number |
Успешное выполнение |
data |
— |
Null |
— |
{
"code": 0,
"data": null
}
Сброс отметки «Удалить со всех устройств»¶
Отметка «Удалить со всех устройств» для данного товара снимается. Распространение данных при синхронизации для данного товара возобновляется в штатном режиме.
URL:
http://172.22.0.6/api/clear_deletion_all_flagMethod:
POSTContent-Type:
application/json
Параметры тела запроса:
Параметр |
Пример |
Тип |
Обязательность |
Описание |
|---|---|---|---|---|
id |
«001» |
String |
Да |
Идентификатор товара (PLU) |
Пример:
{
"id": "001"
}
Пример успешного ответа:
Параметр |
Пример |
Тип |
Описание |
|---|---|---|---|
code |
0 |
Number |
Успешное выполнение |
data |
Null |
{
"code": 0,
"data": null
}
Получение прогресса для товаров с отметкой «Удалить со всех устройств»¶
Проверка прогресса для всех удаляемых товаров.
URL:
http://172.22.0.6/api/get_deletion_all_progressMethod:
GETContent-Type:
application/json
Параметры тела запроса:
Параметр |
Пример |
Tип |
Описание |
|---|---|---|---|
code |
0 |
Number |
Успешное выполнение |
data.id |
«001» |
String |
Удаляемый элемент (товар) |
data.SNs |
[«10180062»,»10180063»] |
Array |
Список серийных номеров (SN) устройств, на которых данный товар уже был удален |
Пример:
{
"code": 0,
"data": {
"id": "001",
"SNs": [
"10180062",
"10180063"
]
}
}