Node.js обертка для драйвера торгового оборудования (ДТО) версии 10 от компании АТОЛ
Реализованы следующие методы работы с драйвером
create()
- Инициализация драйвераdestroy()
- Деинициализация драйвераgetSettings()
- Выгрузка настроек
Возвращает json-объект настроек, который затем можно передать в функцию setSettings
{ AccessPassword: '',
AutoDisableBluetooth: false,
AutoEnableBluetooth: true,
BaudRate: 115200,
Bits: 8,
ComFile: '1',
IPAddress: '192.168.1.10',
IPPort: 5555,
LibraryPath: '',
MACAddress: 'FF:FF:FF:FF:FF:FF',
Model: 500,
OfdChannel: 0,
Parity: 0,
Port: 0,
StopBits: 0,
UsbDevicePath: 'auto',
UserPassword: '' }
setSettings(settings)
- Настройка драйвера
Принимает settings json-объект настроек полученных на предыдущем шаге и модифицированых по необходимости.
open()
- Соединение с ККТclose()
- Завершение соединения с ККТprocessJson(task)
- Выполнение JSON-задания. Синхронная версия функции.
Здесь task - json-объект описание задания для ККТ. Например, задание для открытия смены:
{
type: 'openShift',
operator: {
name: 'Иванов',
vatin: '123654789507'
}
}
Более подробную информацию по видам json-задании можно получить из документации к ДТО 10
processJsonAsync(task, callback)
(от @maxvgi) - Выполнение JSON-задания асинхронно. После завершения вызывает функцию callback в порядке error-first. Вызывать функциюclose()
необходимо только после завершения всех асинхронных заданий.
При возникновении ошибки во время выполнения функций ДТО, она обрабатывается и выбрасывается Error c текстом ошибки,
например, Error: Ошибка - 4 [ Порт недоступен ]
. При работе с асинхронными функциями объекты Error возвращаются
первым аргументом при вызове функции callback.
- Widows, Linux, MacOS
Пример использования обертки можно посмотреть в файле index.js