Этикетка
Структура
data class JsonLabelTemplate (
val labelFormatType: Int?, //Формат этикетки
val width: String?, //Штрина этикетки
val height: String?, //Высота этикетки
val barcodeItems: List<JsonBarcodeItem>?, //Список штрихкодов
val textItems: List<JsonTextItem>?, //Список текстовых элементов
val imageItems: List<JsonImageItem>?, //Список изображений
val graphicItems: List<JsonGraphicItem>? //Список графических элементов
)
data class JsonBarcodeItem(
val type: LabelBarcodeItems?, //Тип штрихкода
val number: Int? = null, //Номер штрихкода (1-5)
val x: Int?, //Координата X
val y: Int?, //Координата Y
val width: Int?, //Ширина штрихкода
val height: Int?, //Высота штрихкода. Необходимо добавить +7 к фактическому значению
val lineVerification: Boolean?, //Наличие проверочной линии
val orientation: Int? = null, //Значение поворота элемента
)
data class JsonTextItem(
val type: LabelTextItems?, //Тип текстового элемента
val x: Int?, //Координата X
val y: Int?, //Координата Y
val align: Int?, //Позиционирование 0 - слева, 1 - по центру, 2 - справа
val font: Int?, //Номер шрифта. Значения 0-6
val orientation: Int? = null, //Значение поворота элемента
)
data class JsonImageItem(
val imageNumber: Int?, //Номер изображения. Значения 0-4. 0 - Лента Мёбиуса
val x: Int?, //Координата X
val y: Int?, //Координата Y
val width: Int?, //Ширина изображения. Только на получение
val height: Int? //Высота изображения. Только на получение
val orientation: Int? = null, //Значение поворота элемента
)
data class JsonGraphicItem(
val x: Int?, //Координата X верхнего левого угла прямоугольника
val y: Int?, //Координата Y верхнего левого угла прямоугольника
val xEnd: Int?, //Координата X нижнего правого угла прямоугольника
val yEnd: Int? //Координата Y нижнего правого угла прямоугольника
)
enum class LabelBarcodeItems(){
DATAMATRIX, //Датаматрикс для вывода кодов маркировки
BARCODE, //Штрихкод товара
}
enum class LabelTextItems(){
NAME_PRODUCT, //Название товара
NAME_SHOP, //Название магазина
SHOP_ADDRESS, //Адрес магазина
NUMBER_PLU, //ПЛУ товара
CODE_PRODUCT, //Код товара
GROUP_CODE, //Код категории
MESSAGES, //Сообщение
TEXT_LABEL_NUMBER, //Надпись "Номер этикетки"
NUMBER_LABEL, //Номер этикетки
TEXT_SCALES_NUMBER, //Надпись "Номер весов"
NUMBER_SCALES, //Номер весов
PACKER_NAME, //Имя фасовщика
TEXT_PACKED, //Надпись "Упаковано"
DATE, //Дата упаковки
TIME, //Время упаковки
TEXT_DATE_SHELF_LIFE, //Надпись "Годен до"
DATE_SHELF_LIFE, //Дата срока годности
TIME_SHELF_LIFE, //Время срока годности
TEXT_EXPIRATION_DATE, //Надпись "Срок годности"
DATE_SHELF_LIFE_IN_DAYS, //Срок годности в днях
TEXT_DATE_CREATE, //Надпись "Изготовлено"
DATE_MANUFACTURING, //Дата изготовления
TIME_MANUFACTURING, //Время изготовления
TEXT_WEIGHT, //Надпись "МАССА"
WEIGHT, //Масса
TEXT_TARE, //Надпись "Тара"
TARE, //Тара
TEXT_GROSS_WEIGHT, //Надпись "Масса брутто"
GROSS_WEIGHT, //Масса брутто
CALCULATED_NET_WEIGHT, //Масса нетто
TEXT_PRICE, //Надпись "Цена, руб/кг"
PRICE_PRODUCT, //Цена
TEXT_DISCOUNT_PRICE, //Надпись "Цена со скидкой"
DISCOUNT_PRICE, //Цена со скидкой
TEXT_COST, //Надпись "Сумма"
COST, //Сумма
TEXT_DISCOUNT_COST, //Надпись "Сумма со скидкой"
DISCOUNT_COST, //Сумма со скидкой
QUANTITY_OPERATIONS_SUM, //Кол-во операций суммирования
CURRENCY_EQUIVALENT_COST, //Валютный эквивалент стоимости (не используется)
TEXT_GLOBAL_1, //Пользовательский текст 1
TEXT_GLOBAL_2, //Пользовательский текст 2
TEXT_GLOBAL_3, //Пользовательский текст 3
TEXT_GLOBAL_4, //Пользовательский текст 4
TEXT_GLOBAL_5, //Пользовательский текст 5
}
Значения поворота элемента:
0 - 0 градусов по часовой 1 - 90 градусов по часовой 2 - 180 градусов по часовой 3 - 270 градусов по часовой
Пример
{
"width": "58"
"height": "30",
"labelFormatType": 0,
"imageItems": [],
"barcodeItems": [
{
"height": 15,
"number": 1,
"lineVerification": true,
"type": "BARCODE",
"width": 25,
"x": 0,
"y": 12,
"orientation": "0"
}
],
"graphicItems": [
{
"x": 37,
"xEnd": 53,
"y": 13,
"yEnd": 18
}
],
"textItems": [
{
"align": 0,
"font": 2,
"type": "NAME_PRODUCT",
"x": 2,
"y": 2,
"orientation": "0"
},
{
"align": 0,
"font": 0,
"type": "TEXT_PACKED",
"x": 0,
"y": 7,
"orientation": "0"
},
{
"align": 0,
"font": 0,
"type": "TEXT_DATE_SHELF_LIFE",
"x": 11,
"y": 7,
"orientation": "0"
},
{
"align": 0,
"font": 0,
"type": "TEXT_DATE_CREATE",
"x": 21,
"y": 7,
"orientation": "0"
},
{
"align": 1,
"font": 0,
"type": "TEXT_WEIGHT",
"x": 46,
"y": 7,
"orientation": "0"
},
{
"align": 0,
"font": 0,
"type": "DATE",
"x": 0,
"y": 9,
"orientation": "0"
},
{
"align": 0,
"font": 0,
"type": "DATE_SHELF_LIFE",
"x": 11,
"y": 9,
"orientation": "0"
},
{
"align": 0,
"font": 0,
"type": "DATE_MANUFACTURING",
"x": 21,
"y": 9,
"orientation": "0"
},
{
"align": 1,
"font": 2,
"type": "WEIGHT",
"x": 46,
"y": 9,
"orientation": "0"
},
{
"align": 1,
"font": 2,
"type": "PRICE_PRODUCT",
"x": 31,
"y": 16,
"orientation": "0"
},
{
"align": 1,
"font": 0,
"type": "TEXT_PRICE",
"x": 31,
"y": 19,
"orientation": "0"
},
{
"align": 1,
"font": 2,
"type": "TARE",
"x": 31,
"y": 12,
"orientation": "0"
},
{
"align": 2,
"font": 5,
"type": "COST",
"x": 53,
"y": 14,
"orientation": "0"
},
{
"align": 1,
"font": 0,
"type": "TEXT_COST",
"x": 46,
"y": 19,
"orientation": "0"
},
{
"align": 0,
"font": 2,
"type": "NAME_SHOP",
"x": 2,
"y": 21,
"orientation": "0"
}
]
}