1
0
forked from BRT/arc
arc/database/dao/MaterialDAO.h

40 lines
1.2 KiB
C++

#pragma once
#include <QSet>
#include "db/MaterialInfo.h"
class MaterialDAO {
public:
[[nodiscard]] static bool upsertAccount(const MaterialInfo &info);
[[nodiscard]] static bool updateAccountById(
int id,
const QString &status,
const QString &description,
const QString &currency
);
[[nodiscard]] static bool deleteAccount(int id);
[[nodiscard]] static bool updateCardNumber(int accountId, const QString &cardNumber);
[[nodiscard]] static bool updateMaterialId(int accountId, const QString &materialId);
[[nodiscard]] static QList<MaterialInfo> getAccounts(const QString &deviceId, const QString &appName);
[[nodiscard]] static MaterialInfo getAccountById(int accountId);
[[nodiscard]] static QList<MaterialInfo> getAccountsByAppCode(const QString &appCode);
[[nodiscard]] static MaterialInfo findAppAccount(
const QString &deviceId,
const QString &appName,
const QString &lastNumber
);
[[nodiscard]] static MaterialInfo findByMaterialId(const QString &materialId);
[[nodiscard]] static QStringList getActiveMaterialIds();
[[nodiscard]] static QStringList getActiveMaterialIdsExcludingDevices(const QSet<QString> &excludeDevices);
};