#include "GetUiConfigFormDB.h" #include "Src/common/JLogAllOutput.h" bool GetMainUiConfigFormDB::checkDatabase() { QSqlDatabase db = QSqlDatabase::database(); if (!db.isOpen()) { JLogAllOutput::cmd_Warning("数据库未打开"); return false; } return true; } QJsonObject GetMainUiConfigFormDB::getInfofromDb() { QJsonObject data; if (!checkDatabase()) { return data; } QSqlQuery query; query.prepare("SELECT Function, Description, setValue FROM systemConfig"); if (query.exec()) { QJsonArray fieldsArray; while (query.next()) { QJsonObject field; field["Function"] = query.value("Function").toString(); field["Description"] = query.value("Description").toString(); field["setValue"] = query.value("setValue").toInt(); fieldsArray.append(field); } data["systemConfig"] = fieldsArray; } else { JLogAllOutput::cmd_Warning("查询 systemConfig 失败:" + query.lastError().text().toStdString()); } return data; } int GetMainUiConfigFormDB::getConfigValue(const QString& function) { if (!checkDatabase()) { return -1; } QSqlQuery query; query.prepare("SELECT setValue FROM systemConfig WHERE Function = :function"); query.bindValue(":function", function); if (query.exec() && query.next()) { return query.value("setValue").toInt(); } JLogAllOutput::cmd_Warning("查询 systemConfig 失败:" + query.lastError().text().toStdString()); return -1; } bool GetMainUiConfigFormDB::setConfigValue(const QString& function, int value) { if (!checkDatabase()) { return false; } QSqlQuery query; query.prepare("UPDATE systemConfig SET setValue = :value WHERE Function = :function"); query.bindValue(":value", value); query.bindValue(":function", function); if (query.exec()) { JLogAllOutput::cmd_debug("Update successful"); return true; } JLogAllOutput::cmd_debug("Update failed:" + query.lastError().text().toStdString()); return false; } int GetMainUiConfigFormDB::getLanguageValue() { return getConfigValue("language"); } int GetMainUiConfigFormDB::getThemeValue() { return getConfigValue("theme"); } void GetMainUiConfigFormDB::setLanguageValue(int data) { setConfigValue("language", data); } void GetMainUiConfigFormDB::setThemeValue(int data) { setConfigValue("theme", data); }