1
0
forked from BRT/arc
arc/services/net/NetworkService.h
slava a506bca01d Refactor and enhance transaction handling and logging
Introduced new logging system with QInstallMessageHandler. Refactored NetworkService for better modularity and added new methods to handle transaction data. Updated database schema and TransactionDAO to support external transaction ID. Cleaned up and streamlined transaction processing in GetLastDaysHistoryScript.
2025-05-21 16:06:18 +07:00

46 lines
901 B
C++

#pragma once
#include <qhttpmultipart.h>
#include <QObject>
#include <QMap>
class NetworkService final : public QObject {
Q_OBJECT
public:
explicit NetworkService(QObject *parent = nullptr);
~NetworkService() override;
void setPayload(const QByteArray &json) { m_json = json; }
void setDeviceData(const QString &desktopId, const QString &deviceId) {
m_desktopId = desktopId;
m_deviceId = deviceId;
}
void addExtra(const QString &key, const QVariant &value);
public slots:
void postAccountsData();
void insertTransactionData();
void updateTransactionData();
void stop();
signals:
void finished();
private:
QByteArray m_json;
QString m_deviceId;
QString m_desktopId;
QMap<QString, QVariant> m_extraData = {};
bool m_running = true;
QJsonValue post(QHttpMultiPart *multiPart, const QString &path);
};