#include "datamanager.h" DataManager::DataManager() { db = new DatabaseManager("192.168.1.94", "deloitte", "postgres", "34rjkciea12"); } void DataManager::localSaveSubjects(QString response) { QJsonDocument doc = QJsonDocument::fromJson(response.toUtf8()); QJsonArray items = doc.object()["items"].toArray(); for (QJsonValueRef item : items) { auto subject = new Subject(); subject->fromJSON(item.toObject()); subjects.append(subject); } } void DataManager::localSaveTokens(QString response) { QJsonDocument doc = QJsonDocument::fromJson(response.toUtf8()); QJsonArray items = doc.object()["items"].toArray(); for (QJsonValueRef item : items) { auto token = new Token(); token->fromJSON(item.toObject()); tokens.append(token); } } void DataManager::pushDataToDB() { QSqlDatabase::database().transaction(); qDebug() << "In progress..."; int counter = 0; for (auto subject : subjects) { if (db->saveSubject(subject, "subject")) counter++; db->saveSubjectAttribute(subject, "subject_attribute"); } qDebug() << counter << " subjects has been updated"; counter = 0; for (auto token : tokens) { if (db->saveToken(token, "token")) counter++; } QSqlDatabase::database().commit(); qDebug() << counter << " tokens has been updated"; }