Kotlin¶
Способы интеграции Kotlin
Создание объекта
val driver = MertechPrintScalesDriver()
Добавление и получение параметров
Добавление и получение параметров возможно через специальные функции, учитывающие тип данных этих параметров:
fun setIntParam(paramType: DriverParams, value: Int): Int
fun setStringParam(paramType: DriverParams, value: String): Int
fun setUTF8StringParam(paramType: DriverParams, value: String): Int
fun setBytesArrayParam(paramType: DriverParams, value: ByteArray): Int
fun getIntParam(paramType: DriverParams, value: ArrayList<Int>): Int
fun getStringParam(paramType: DriverParams, value: ArrayList<String>): Int
fun getBytesArrayParam(paramType: DriverParams, value: ArrayList<Byte>): Int
Подсказка
Список типов параметров приведён в разделе с общими принципами работы с драйвером.
Выполнение команд
Для отправки любой поддерживаемой команды на весы нужно воспользоваться универсальной функцией выполнения команды и указать в качестве аргумента значение DriverCommands, соответствующее команде.
fun executeCommand(commandType: DriverCommands): Int
После успешного выполнения команды функция вернёт значение «0». В противном случае вернётся код ошибки.
Пример работы
fun main(){
val driver = MertechPrintScalesDriver()
//Подключение
driver.setStringParam(DriverParams.IP, "192.168.1.111")
driver.setStringParam(DriverParams.PORT, "1111")
driver.setStringParam(DriverParams.PASSWORD, "0000")
driver.setIntParam(DriverParams.CONNECT_TIMEOUT, 4)
driver.executeCommand(DriverCommands.CONNECT)
//Получение названия магазина
driver.setIntParam(DriverParams.STRING_NUMBER, 1)
var result = driver.executeCommand(DriverCommands.GET_NAME_SHOP)
if(result == 0){
val shopName = arrayListOf<String>()
result = driver.getStringParam(DriverParams.SHOP_NAME, shopName)
}
//Запись нового названия магазина
driver.setIntParam(DriverParams.STRING_NUMBER, 1)
driver.setStringParam(DriverParams.SHOP_NAME, "Пример названия")
driver.executeCommand(DriverCommands.SET_NAME_SHOP)
}