2023-04-19 16:26:12 +02:00
|
|
|
#include "src/ATBAPP/ATBDeviceControllerPlugin.h"
|
|
|
|
#include "src/ATBAPP/ATBHealthEvent.h"
|
|
|
|
|
|
|
|
|
|
|
|
ATBDeviceControllerPlugin::ATBDeviceControllerPlugin(QObject *parent) : QObject(parent),
|
|
|
|
pluginState(PLUGIN_STATE::NOT_INITIALIZED)
|
|
|
|
{
|
|
|
|
this->pluginInfo = QString::fromUtf8(pluginInfoString.c_str());
|
|
|
|
|
|
|
|
this->hw = new hwapi();
|
|
|
|
}
|
|
|
|
|
|
|
|
ATBDeviceControllerPlugin::~ATBDeviceControllerPlugin() {}
|
|
|
|
|
|
|
|
PLUGIN_STATE ATBDeviceControllerPlugin::initDCPlugin(QObject *healthEventReceiver, const QSettings & settings)
|
|
|
|
{
|
|
|
|
this->healthEventReceiver = healthEventReceiver;
|
|
|
|
|
|
|
|
// Read a sample variable from setting
|
|
|
|
QString sampleSetting = settings.value("DEVICE_CONTROLLER/sampleVariable", "defaultValue").toString();
|
|
|
|
|
|
|
|
this->pluginState = PLUGIN_STATE::INITIALIZED;
|
|
|
|
|
|
|
|
return pluginState;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// TASKS: Cash handling -------------------------------------------------------
|
|
|
|
void ATBDeviceControllerPlugin::requestStartCashInput(const QString & amount)
|
|
|
|
{
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
void ATBDeviceControllerPlugin::requestStopCashInput()
|
|
|
|
{
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
void ATBDeviceControllerPlugin::cashCollect()
|
|
|
|
{
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
void ATBDeviceControllerPlugin::cashAbort()
|
|
|
|
{
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// TASKS: printing ------------------------------------------------------------
|
|
|
|
void ATBDeviceControllerPlugin::requestPrintTicket(const QHash<QString, QVariant> & printingData)
|
|
|
|
{
|
|
|
|
struct T_dynDat *dynTicketData = new T_dynDat;
|
|
|
|
|
|
|
|
strncpy((char*)dynTicketData->licensePlate, printingData["licenseplate"].toByteArray().data(), 7);
|
|
|
|
strncpy((char*)dynTicketData->vendingPrice, printingData["amount"].toByteArray().data(), 7);
|
|
|
|
strncpy((char*)dynTicketData->parkingEnd, printingData["parkingend"].toByteArray().data(), 7);
|
|
|
|
strncpy((char*)dynTicketData->currentTime, printingData["currentTime"].toByteArray().data(), 7);
|
|
|
|
strncpy((char*)dynTicketData->currentDate, printingData["currentDate"].toByteArray().data(), 7);
|
|
|
|
|
|
|
|
this->hw->prn_printDocument(1, dynTicketData);
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/************************************************************************************************
|
|
|
|
* Mandatory plugin methods
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
|
|
|
|
PLUGIN_STATE ATBDeviceControllerPlugin::getState()
|
|
|
|
{
|
|
|
|
return this->pluginState;
|
|
|
|
}
|
|
|
|
|
2023-05-02 17:07:48 +02:00
|
|
|
QString & ATBDeviceControllerPlugin::getLastError()
|
2023-04-19 16:26:12 +02:00
|
|
|
{
|
|
|
|
return this->errorCode;
|
|
|
|
}
|
|
|
|
|
|
|
|
const QString & ATBDeviceControllerPlugin::getLastErrorDescription()
|
|
|
|
{
|
|
|
|
return this->errorDescription;
|
|
|
|
}
|
|
|
|
|
|
|
|
const QString & ATBDeviceControllerPlugin::getPluginInfo()
|
|
|
|
{
|
|
|
|
return this->pluginInfo;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
const QString ATBDeviceControllerPlugin::getString(nsDeviceControllerInterface::RESULT_STATE resultState)
|
|
|
|
{
|
|
|
|
QString str;
|
|
|
|
|
|
|
|
switch (resultState) {
|
|
|
|
case nsDeviceControllerInterface::RESULT_STATE::SUCCESS:
|
|
|
|
str = QString("RESULT_STATE::SUCCESS");
|
|
|
|
break;
|
|
|
|
case nsDeviceControllerInterface::RESULT_STATE::ERROR_BACKEND:
|
|
|
|
str = QString("RESULT_STATE::ERROR_BACKEND");
|
|
|
|
break;
|
|
|
|
case nsDeviceControllerInterface::RESULT_STATE::ERROR_TIMEOUT:
|
|
|
|
str = QString("RESULT_STATE::ERROR_TIMEOUT");
|
|
|
|
break;
|
|
|
|
case nsDeviceControllerInterface::RESULT_STATE::ERROR_PROCESS:
|
|
|
|
str = QString("RESULT_STATE::ERROR_PROCESS");
|
|
|
|
break;
|
|
|
|
case nsDeviceControllerInterface::RESULT_STATE::ERROR_RETRY:
|
|
|
|
str = QString("RESULT_STATE::ERROR_RETRY");
|
|
|
|
break;
|
|
|
|
case nsDeviceControllerInterface::RESULT_STATE::INFO:
|
|
|
|
str = QString("RESULT_STATE::INFO");
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
return str;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/************************************************************************************************
|
|
|
|
* ... end
|
|
|
|
*/
|
|
|
|
|
|
|
|
#if QT_VERSION < 0x050000
|
|
|
|
Q_EXPORT_PLUGIN2( ATBDeviceControllerPlugin, ATBDeviceControllerPlugin )
|
|
|
|
#endif
|