138 lines
3.8 KiB
C++
138 lines
3.8 KiB
C++
#ifndef ISMASDATA_H
|
|
#define ISMASDATA_H
|
|
|
|
#include <QJsonObject>
|
|
#include <QJsonArray>
|
|
|
|
|
|
|
|
|
|
namespace ISMAS {
|
|
|
|
struct TransferData : public QJsonObject {
|
|
struct : public QJsonObject {
|
|
QJsonValue tariffId;
|
|
QJsonValue group;
|
|
QJsonValue zone;
|
|
} device;
|
|
|
|
struct : public QJsonObject {
|
|
QJsonValue state;
|
|
QJsonValue uid;
|
|
QJsonValue seq_tick_number;
|
|
QJsonValue timestamp;
|
|
QJsonValue userText;
|
|
QJsonValue userTextType;
|
|
} transaction;
|
|
|
|
struct : public QJsonObject {
|
|
// TODO: check what is really used at the moment
|
|
QJsonValue id; // unique article id
|
|
QJsonValue name; // name
|
|
QJsonValue price; // price in cent
|
|
QJsonValue currency; //
|
|
QJsonValue startTime; // start time
|
|
QJsonValue endTime; // end time
|
|
QJsonValue userText; // additional info
|
|
QJsonValue parkingTime;
|
|
QJsonValue printText;
|
|
// QJsonValue discount;
|
|
} item;
|
|
|
|
struct : public QJsonObject {
|
|
struct : public QJsonObject {
|
|
QJsonValue coins; // total amount of coins value
|
|
// QJsonValue notes; // total amount of notes value
|
|
QJsonValue overpaid; // in cent
|
|
QJsonValue currency;
|
|
QJsonValue change;
|
|
} cash;
|
|
|
|
struct : public QJsonObject {
|
|
QJsonValue cardNumber;
|
|
QJsonValue value; // buchungsbetrag
|
|
QJsonValue cardType;
|
|
QJsonValue currency;
|
|
QJsonValue tid;
|
|
QJsonValue tresult;
|
|
} card;
|
|
|
|
struct : public QJsonObject {
|
|
QJsonValue cardNumber;
|
|
QJsonValue cardType;
|
|
QJsonValue value;
|
|
QJsonValue valueOld;
|
|
QJsonValue valueNew;
|
|
QJsonValue time;
|
|
QJsonValue timeOld;
|
|
QJsonValue timeNew;
|
|
} prePaidCard;
|
|
} payment;
|
|
|
|
struct : public QJsonObject {
|
|
QJsonValue delivery; // PRINT, OnlineTicket
|
|
QJsonValue result; // SUCCESS, ERROR
|
|
QJsonValue errorCode; // 0=OK, 1=...
|
|
QJsonValue errorMsg;
|
|
} result;
|
|
};
|
|
|
|
|
|
struct AccountData : public QJsonObject {
|
|
struct : public QJsonObject {
|
|
QJsonValue UID;
|
|
QJsonValue ChangeNumber;
|
|
QJsonValue Process; // Vorgang
|
|
QJsonValue startDateTime;
|
|
QJsonValue endDateTime;
|
|
QJsonValue startHash;
|
|
QJsonValue endHash;
|
|
|
|
struct : public QJsonObject {
|
|
QJsonValue value; // coin value
|
|
QJsonValue numberOfCoins; // number of coins
|
|
QJsonValue currency;
|
|
} coin;
|
|
|
|
} coinBox; // Münzkasse
|
|
};
|
|
|
|
|
|
struct EventData : public QJsonObject {
|
|
struct : public QJsonObject {
|
|
QJsonValue eventID;
|
|
QJsonValue deviceName;
|
|
QJsonValue reason;
|
|
QJsonValue event;
|
|
QJsonValue eventState;
|
|
QJsonValue timeStamp;
|
|
QJsonValue parameter;
|
|
QJsonValue secondLevelInfo;
|
|
} machineEvent; //
|
|
};
|
|
|
|
struct StateData : public QJsonObject {
|
|
QJsonValue Timestamp;
|
|
QJsonArray HW_States;
|
|
struct : public QJsonObject {
|
|
QJsonValue name;
|
|
QJsonValue value;
|
|
QJsonValue unit;
|
|
} machineState; //
|
|
};
|
|
|
|
|
|
enum class REQUEST : quint8 {
|
|
NO_REQUEST,
|
|
START,
|
|
STOP,
|
|
PING,
|
|
SELF,
|
|
ISMAS_PARAMETER
|
|
};
|
|
}
|
|
|
|
|
|
|
|
#endif // ISMASDATA_H
|