global.cpp 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. #include "global.h"
  2. #include <QSettings>
  3. #include "logger.h"
  4. QUrl apiBackendUrl; // 定义并初始化全局变量
  5. QString labLat("未知");
  6. QString labLon("未知");
  7. QString globalAuthority;
  8. QString firewidgetPort; // 4 for dev; 1: 爆破装置
  9. QString gpsPort;
  10. QString databaseHost;
  11. QString mqttClientId;
  12. QString MQTT_TOPIC_COMPANY_PROJECTS; // 接受爆破器的topic
  13. QString MQTT_TOPIC_COMPANY_PROJECTS_PUBLISH; // 发布工程的topic
  14. QString COMPANY_CODE;
  15. QString DET_PARAM_XMBH;
  16. QString DET_PARAM_DWDM;
  17. QString DET_PARAM_HTID;
  18. QString DET_PARAM_SBBH;
  19. bool isShowTriggeringWidget;
  20. void loadConfig() {
  21. QSettings settings("config.ini", QSettings::IniFormat);
  22. // Remove local variable declarations and assign directly to global variables
  23. apiBackendUrl = QUrl(settings.value("api_backend_url", "http://192.168.0.241:8000/api/v1/").toString());
  24. firewidgetPort = settings.value("Ports/firewidget_port", "COM1").toString();
  25. gpsPort = settings.value("Ports/gps_port", "COM3").toString();
  26. databaseHost = settings.value("Database/host", "127.0.0.1").toString();
  27. mqttClientId = settings.value("MQTT/client_id", "mqttclient_PC").toString();
  28. MQTT_TOPIC_COMPANY_PROJECTS = settings.value("MQTT/topic", "hxgc/companycode/pro/P").toString();
  29. MQTT_TOPIC_COMPANY_PROJECTS_PUBLISH = settings.value("MQTT/publish_topic", "hxgc/companycode/pro/B").toString();
  30. COMPANY_CODE = settings.value("Company/code", "cc_hxgc").toString();
  31. isShowTriggeringWidget = settings.value("UI/show_triggering_widget", false).toBool();
  32. // Load det parameters
  33. DET_PARAM_XMBH = settings.value("DetParams/xmbh", "").toString();
  34. DET_PARAM_DWDM = settings.value("DetParams/dwdm", "").toString();
  35. DET_PARAM_HTID = settings.value("DetParams/htid", "").toString();
  36. DET_PARAM_SBBH = settings.value("DetParams/sbbh", "").toString();
  37. qDebug() << "Loaded configuration:" << "detparams" << DET_PARAM_XMBH << DET_PARAM_DWDM << DET_PARAM_HTID
  38. << DET_PARAM_SBBH;
  39. }
  40. QMutex globalMutex; // 全局操作锁
  41. MqttClient* mainMqttClient = nullptr; // 定义全局 MQTT 客户端