#include "mainconfig.h" #include #include #define D_CONFIG_FILE_PATH "./setting.ini" QString MainConfig::token = ""; QString MainConfig::username = "fenzhentai"; QString MainConfig::password = "123456"; QString MainConfig::loginUrl = "http://test.tall.wiki/gateway/tall3/v3.0/users/signin"; QString MainConfig::sendUserInfoUrl = "https://test.tall.wiki/gateway/qcp/v3.0/button/idCardDiscern"; QString MainConfig::oneKeyStartUrl = "https://test.tall.wiki/gateway/qcp/v3.0/button/buttonStart"; QString MainConfig::serviceStatusChangedUrl = "https://test.tall.wiki/gateway/qcp/v3.0/button/updateStatus"; QString MainConfig::wsUrl = "wss://test.tall.wiki/websocket/message/v4.0/ws"; QString MainConfig::wsHeartInterval = "10"; QString MainConfig::maxPatientNum = "5"; QString MainConfig::switchPatientInterval = "5"; MainConfig::MainConfig(QObject *parent) : QObject(parent) { } /** * @brief 使用原生模式创建ini文件,QSetting模式无法写入注释 */ void MainConfig::createConfigFileWithDefaultValues() { //创建ini配置文件 // QSettings *iniFile = new QSettings(D_CONFIG_FILE_PATH, QSettings::IniFormat); // iniFile->beginGroup("MAIN"); // iniFile->setValue("videodir", videodir); // iniFile->setValue("videoNumInRow", videoNumInRow); // iniFile->setValue("videoAutoPlay", videoAutoPlay); // iniFile->setValue("videoAutoMode", videoAutoMode); // iniFile->endGroup(); // iniFile->beginGroup("USER"); // iniFile->setValue("username", username); // iniFile->setValue("password", password); // iniFile->endGroup(); QString content = "[MAIN]\n"; content.append(";最大患者数量\n").append("maxPatientNum = ").append(maxPatientNum).append("\n"); content.append(";切换病人时间(s)\n").append("switchPatientInterval = ").append(switchPatientInterval).append("\n"); content.append("\n"); content.append("[USER]\n"); content.append(";登录用户名\n").append("username = ").append(username).append("\n"); content.append(";登录密码\n").append("password = ").append(password).append("\n"); content.append("\n"); content.append("[HTTP]\n"); content.append(";登录请求URL\n").append("loginUrl = ").append(loginUrl).append("\n"); content.append(";发送身份证信息URL\n").append("sendUserInfoUrl = ").append(sendUserInfoUrl).append("\n"); content.append(";一键启动URL\n").append("oneKeyStartUrl = ").append(oneKeyStartUrl).append("\n"); content.append(";服务状态改变URL(rgb)\n").append("serviceStatusChangedUrl = ").append(serviceStatusChangedUrl).append("\n"); content.append("\n"); content.append("[WEBSOCKET]\n"); content.append(";Websocket URL\n").append("wsUrl = ").append(wsUrl).append("\n"); content.append(";Websocket心跳间隔(s)\n").append("wsHeartInterval = ").append(wsHeartInterval).append("\n"); QFile file(D_CONFIG_FILE_PATH); file.open(QIODevice::WriteOnly | QIODevice::Text); file.write(content.toUtf8()); file.close(); } void MainConfig::readConfigFile(){ //创建ini配置文件 QSettings *iniFile = new QSettings(D_CONFIG_FILE_PATH, QSettings::IniFormat); iniFile->setIniCodec("UTF-8"); //获取配置文件名 QString fileName = iniFile->fileName(); qDebug().noquote()<<"fileName:"<contains("MAIN/maxPatientNum")){ maxPatientNum = iniFile->value("MAIN/maxPatientNum").toString(); } if(iniFile->contains("MAIN/switchPatientInterval")){ switchPatientInterval = iniFile->value("MAIN/switchPatientInterval").toString(); } if(iniFile->contains("USER/username")){ username = iniFile->value("USER/username").toString(); } if(iniFile->contains("USER/password")){ password = iniFile->value("USER/password").toString(); } if(iniFile->contains("HTTP/loginUrl")){ loginUrl = iniFile->value("HTTP/loginUrl").toString(); } if(iniFile->contains("HTTP/sendUserInfoUrl")){ sendUserInfoUrl = iniFile->value("HTTP/sendUserInfoUrl").toString(); } if(iniFile->contains("HTTP/oneKeyStartUrl")){ oneKeyStartUrl = iniFile->value("HTTP/oneKeyStartUrl").toString(); } if(iniFile->contains("HTTP/serviceStatusChangedUrl")){ serviceStatusChangedUrl = iniFile->value("HTTP/serviceStatusChangedUrl").toString(); } if(iniFile->contains("WEBSOCKET/wsUrl")){ wsUrl = iniFile->value("WEBSOCKET/wsUrl").toString(); } if(iniFile->contains("WEBSOCKET/wsHeartInterval")){ wsHeartInterval = iniFile->value("WEBSOCKET/wsHeartInterval").toString(); } qDebug() << maxPatientNum << "\n" << username << password << "\n" << loginUrl << sendUserInfoUrl << oneKeyStartUrl << serviceStatusChangedUrl << "\n" << wsUrl << wsHeartInterval ; } void MainConfig::initConfig() { QFile file(D_CONFIG_FILE_PATH); if(!file.exists()){ qDebug() << D_CONFIG_FILE_PATH << " Not Exist. Create it by defalut values."; createConfigFileWithDefaultValues(); }else{ qDebug() << D_CONFIG_FILE_PATH << "Exists"; readConfigFile(); } }