1
0
forked from BRT/arc
arc/database/dao/TransactionDAO.h
trnsmkot 5878705ae0 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

31 lines
1017 B
C++

#pragma once
#include "db/TransactionInfo.h"
#include "rshb/GetLastDaysHistoryScript.h"
class TransactionDAO {
public:
[[nodiscard]] static bool insertTransactionIfNotExists(const TransactionInfo &info);
[[nodiscard]] static int insertTransaction(const TransactionInfo &info);
[[nodiscard]] static bool deleteTransaction(int id);
[[nodiscard]] static QList<TransactionInfo> getTransactions(int accountId);
[[nodiscard]] static bool updateTransaction(const TransactionInfo &info);
[[nodiscard]] static bool updateTransactionStatus(int id, TransactionStatus status);
[[nodiscard]] static TransactionInfo getTransactionById(int id);
[[nodiscard]] static QList<TransactionInfo> getTransactionsWithinHours(int accountId, int hours);
[[nodiscard]] static bool updateTransaction(
int id, TransactionStatus status,
const QString &oldDesc,
const QString &newDesc
);
[[nodiscard]] static bool updateExternalTransactionId(int id, int externalId);
};