Распознавание ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. |br| raw:: html
Структура ---------------------------------------------------------------------------------------------------------------------------- .. code:: Kotlin data class PredictionJsonData( val sessionId: String? = null, //Идентификатор сессии val error: String? = null, //Ошибка val items: List = listOf(), //Распознанные элементы val weight:Double? = null, //Вес в момент распознавания val tare: Double? = null //Тара в момент распознавания ) data class PredictionJsonItemData( val itemCode: Int? = null, //Код товара из устройства распознавания val product: Product? = null, //Данные товара из БД, соответствующие коду выше val accuracyPercent: Double? = null, //Процент уверенности в правильности распознавания ) data class Product( val id: Int, //ID товара val code: Int = 0, //Код товара val pluNumber: Int?, //ПЛУ товара val name: String, //Название val price: Double, //Цена val labelTemplate: Int?, //Приоритетный шаблон этикетки val barcodeStructure: String?, //Приоритетная структура стрихкода val shelfLifeInDays: Int?, //Срок годности в днях val tare: Double?, //Тара val pieceWeight: Double?, //Вес 1 штуки val manufactureDate: String?, //Дата производства. Формат "DD-MM-YY" val information: String?, //не используется val type: Int?, //не используется val barcodePrefixType: String?, //Приоритетный тип префикса штрихкода. NUMBER_SCALES - номер весов, GROUP_CODE - ID категории, PRODUCT_TYPE - тип продукта val rostestCode: String?, //Код РОСТЕСТа val sellByDate: String?, //Дата срока годности. Формат "DD-MM-YY" val category: Int?, //ID категории val productType: String, //Тип продукта. WEIGHT - весовой, PIECE - штучный val deleted: Boolean, //Признак удалёного элемента val message: Int?, //ID сообщения val imageNumbers: Int?, //не используется val minWeight: Double?, //Минимальный вес для печати этикетки val maxWeight: Double?, //Максимальный вес для печати этикетки val staticBarcodeType: Int?, //Тип статического штрихкода val staticBarcodeValue: String?, //Значение статического штрихкода val discountPrice: Double?, //Цена со скидкой val labelDiscountTemplate: Int?, //Приоритетный шаблон этикетки, если указана цена со скидкой val wrappingType: Int?, //Тип упаковки для ленты Мёбиуса ) Пример ---------------------------------------------------------------------------------------------------------------------------- .. code:: JSON { "sessionId": "20230331214519469020000", "tare": 0, "weight": 0.336, "items": [ { "accuracyPercent": 0.72, "itemCode": 2 }, { "accuracyPercent": 0.14, "itemCode": 6 }, { "accuracyPercent": 0.12, "itemCode": 4, "product": { "barcodeStructure": "NNNNNNNQQQQQC", "code": 4, "deleted": false, "discountPrice": 678.99, "id": 24007, "labelTemplate": 11, "message": 70709, "name": "Мясо свежее ГОВЯДИНА УЗБЕКИСТАН", "pieceWeight": 0, "pluNumber": 70709, "price": 678.99, "productType": "WEIGHT", "shelfLifeInDays": 36, "staticBarcodeType": 8, "tare": 0 } }, ] }