#pragma execution_character_set("utf-8") #include "Application.h" #include #include #include #include #include "MessageHandle.h" #include "nlohmann/json.hpp" #include #include //#include #include #include "CmdDefine.h" #include "IniFileManager.h" #include "Error.h" #define BIND(func) std::bind(&ccsApplication::func, this, std::placeholders::_1) const QList> titleList = {}; ccsApplication::ccsApplication() { ccsMessageHandle::instance()->register_callback(BIND(exit), CMD_exit); ccsMessageHandle::instance()->register_callback(BIND(open_helppdf), CMD_application_open_helppdf); } ccsApplication::~ccsApplication() { } void ccsApplication::exit(const QString &message) { QString jsonMsg = ccsMessageHandle::instance()->createMsg(CMD_exit, EXECUTE_FAIL, "退出界面失败,请检查!"); if (!message.isEmpty()) { nlohmann::json myjson = nlohmann::json::parse(message.toStdString()); if (!myjson["value"].empty()) { int value = myjson["value"]; int iLanguage = IniFileManager::getInstance().getLanguage("common", "language"); switch (value) { case EXIT_applicationExit: QCoreApplication::quit(); jsonMsg = ccsMessageHandle::instance()->createMsg(CMD_exit, EXECUTE_SUCCESS, "一级界面退出成功!"); break; } } } ccsMessageHandle::instance()->qt2web(CMD_exit, jsonMsg); } void ccsApplication::open_helppdf(const QString& message) { } void ccsApplication::open_language(const QString &message) { } void ccsApplication::send_language(const QString &message) { //没有配置文件或没有设置语言时 默认为中文 //中文0 英文1 //int iLanguage = IniFileManager::getInstance().getLanguage("common","language"); //IniFileManager::setStaticLanguageValue(iLanguage); //nlohmann::json myjson; //myjson["language"] = iLanguage; //QString sendData = QString::fromStdString(myjson.dump()); //QString jsonMsg = ccsMessageHandle::instance()->createMsg(CMD_application_send_language,EXECUTE_SUCCESS,"", sendData); //ccsMessageHandle::instance()->qt2web(CMD_application_send_language, jsonMsg); } void ccsApplication::problem_feedback(const QString &message) { QUrl url("http://callcenter.ccs.org.cn/"); QDesktopServices::openUrl(url); }