#pragma once #include #include enum class EventStatus { Wait, InProgress, Complete, Error, Unknown }; enum class EventType { Phone, Card, Balance, History, Unknown }; inline QString eventStatusToString(const EventStatus status) { switch (status) { case EventStatus::Wait: return "wait"; case EventStatus::Error: return "error"; case EventStatus::Complete: return "complete"; case EventStatus::InProgress: return "iPprogress"; default: return "unknown"; } } inline EventStatus eventStatusFromString(const QString &str) { if (str == "error") return EventStatus::Error; if (str == "wait") return EventStatus::Wait; if (str == "complete") return EventStatus::Complete; if (str == "iPprogress") return EventStatus::InProgress; return EventStatus::Unknown; } inline QString eventTypeToString(const EventType type) { switch (type) { case EventType::Phone: return "phone"; case EventType::Card: return "card"; case EventType::Balance: return "balance"; case EventType::History: return "history"; default: return "unknown"; } } inline EventType eventTypeFromString(const QString &str) { if (str == "phone") return EventType::Phone; if (str == "card") return EventType::Card; if (str == "balance") return EventType::Balance; if (str == "history") return EventType::History; return EventType::Unknown; } struct EventInfo { int id = -1; int externalId = -1; int accountId = -1; QString deviceId; double amount = 0; QString phone; QString bankName; QString comment; EventStatus status = EventStatus::Unknown; EventType type = EventType::Unknown; QDateTime updateTime; QDateTime completeTime; QDateTime timestamp; };