colnod-connector/src/colnod/databasemanager.h

59 lines
1.2 KiB
C++

#ifndef DATABASEMANAGER_H
#define DATABASEMANAGER_H
#include <QSql>
#include <QSqlDatabase>
#include <QSqlQuery>
#include <QSqlError>
#include <QVariant>
#include <QDebug>
#include "subject.h"
#include "token.h"
#include <QDateTime>
class DatabaseManager : public QObject
{
Q_OBJECT
public:
DatabaseManager(QString host, QString dbName, QString user, QString password);
void saveSubject(Subject* subject, QString table);
void saveToken(Token* token, QString table);
void saveSubjectAttribute(Subject* subject, QString table);
void deleteItem(QString id, QString table);
QString getTestMessage(int id);
int createTestRecord(QString msg);
//
void makeTestingLast_sync();
//
void dropTables();
void createTables();
bool getOpened() {return opened;}
uint64_t getLastUpdate();
void updateLastSync();
QSqlQuery* getTokensToAdd();
QSqlQuery* getTokensToDelete();
QUuid getId(QString name);
private:
bool checkIfExists(QString id, QString table);
private:
QSqlDatabase db;
QSqlQuery query;
bool opened;
};
#endif // DATABASEMANAGER_H