VAT_18 и VAT_18_118 (класс TaxNumber) могут указывать как на 18%, так и на 20% ставку НДС. Наименования значений (VAT_18 и VAT_18_118), при этом не меняются.Класс InventoryApi содержит методы, описанные ниже.
fun getAllBarcodesForProduct(context: Context, productUuid: String): List<String>
Где:
context – контекст приложения.productUuid – идентификатор товара в формате uuid4.List<String> – список всех штрихкодов товара.fun getAlcoCodesForProduct(context: Context, productUuid: String): List<String>?
Где:
context – контекст приложения.productUuid – идентификатор товара в формате uuid4.List<String> – список кодов алкогольной продукции в ЕГАИС.fun getProductByUuid(context: Context, uuid: String): ProductItem?
Где:
context – контекст приложения.productUuid – идентификатор товара в формате uuid4ProductItem – абстракция над товарами и товарными группами.Поля, одинаковые для товара и группы:
uuid – идентификатор товара или группы в формате uuid4.parentUuid – идентификатор родительской группы в формате uuid4.code – код товара из 1С, если нет, то null.name – наименование товара или группы.taxNumber – налоговая ставка.Поля, уникальные для товаров:
type – тип товара. Допустимые значения:
price – цена товара.quantity – количество товара.description – описание товара.measureName – единицы измерения товара.measurePrecision – точность измерения.alcoholByVolume – крепость алкоголя. Если указан обычный товар, используется значение null.alcoholProductKindCode – идентификатор алкогольной продукции в формате uuid4.tareVolume – объём тары алкогольной продукции.classificationCode — номенклатурный код. Если поле заполнено, то значение передаётся в тег 1162 при продаже и возврате.fun getProductsByAlcoCode(context: Context, alcoCode: String): List<ProductItem.Product?>?
Где:
context – контекст приложения;alcoCode – код алкогольной продукции в ЕГАИС. Длина строго 19 символов;List<ProductItem.Product?> – результат поиска. Содержит список подходящих товаров.fun getField(context: Context, fieldUuid: String): Field?
Где:
context - контекст приложенияproductUuid - uuid товараField – результат. Может быть одного из двух типов: TextField и DictionaryField.
Независимо от типа, содержит поля:
name – имя поля.
fieldUUID – идентификатор поля в формате uuid4.
title – заголовок, который отображается в интерфейсе смарт-терминала.
type – тип поля: TEXT_FIELD или DICTIONARY_FIELD.
Поля, уникальные для типа TEXT_FIELD:
data – Валидный JSON-объект, который содержит данные, отображаемые с помощью JavaScript в интерфейсе смарт-терминала.Поля, уникальные для типа DICTIONARY_FIELD:
multiple – включает или выключает возможность выбора нескольких значений.items – массив возможных значений. Массив содержит поля title – заголовок элемента управления, который отображается пользователю и value – идентификатор элемента управления.fun getProductExtras(context: Context, productUuid: String): List<ProductExtra>
Где:
context - контекст приложенияproductUuid - uuid товараList<ProductExtra> – в качестве результата будет возвращен список значений дополнительных полей товараОбъект ProductExtra содержит в себе следующие данные:
uuid – uuid значения дополнительного поля товара.name – имя дополнительного поля товара.fieldUUID – uuid дополнительного поля товара.fieldValue – строка содержащая значение дополнительного поля в определенном формате:
data - дополнительные данные от приложения.Пример работы с Inventory API в демонстрационном приложении.