Browse Source

添加预热状态上报

master
zhaohe 2 years ago
parent
commit
168c02b879
  1. 8
      src/db/db_service.cpp
  2. 10
      src/main_control_service.cpp
  3. 18
      src/service/disinfection_ctl_service.cpp
  4. 2
      src/service/disinfection_ctl_service.hpp

8
src/db/db_service.cpp

@ -136,16 +136,16 @@ id setting_name setting_name_ch val_upper_limit val_lower_limi
storage.sync_schema();
if (storage.get_all<Setting>(where(c(&Setting::id) == 1)).size() == 0) //
storage.insert(Setting{1, "stoped_gs", "消毒停止过氧化氢溶度", 0, 2000, 1, 300});
storage.insert(Setting{1, "stoped_gs", "消毒停止过氧化氢溶度", 0, 2000, 1, 1800});
if (storage.get_all<Setting>(where(c(&Setting::id) == 2)).size() == 0)
storage.insert(Setting{2, "continued_gs", "消毒继续过氧化氢溶度", 0, 2000, 1, 260});
storage.insert(Setting{2, "continued_gs", "消毒继续过氧化氢溶度", 0, 2000, 1, 1500});
if (storage.get_all<Setting>(where(c(&Setting::id) == 3)).size() == 0)
storage.insert(Setting{3, "stoped_satur", "消毒停止过氧化氢相对饱和度", 0, 100, 1, 70});
storage.insert(Setting{3, "stoped_satur", "消毒停止过氧化氢相对饱和度", 0, 100, 1, 85});
if (storage.get_all<Setting>(where(c(&Setting::id) == 4)).size() == 0)
storage.insert(Setting{4, "continued_satur", "消毒继续过氧化氢相对饱和度", 0, 100, 1, 60});
storage.insert(Setting{4, "continued_satur", "消毒继续过氧化氢相对饱和度", 0, 100, 1, 70});
if (storage.get_all<Setting>(where(c(&Setting::id) == 5)).size() == 0) //
storage.insert(Setting{5, "max_humidity", "允许消毒最大湿度", 0, 100, 1, 90});

10
src/main_control_service.cpp

@ -151,7 +151,7 @@ json MainControlService::createSensorDataJson() {
report["h2o2_1"] = m_deviceIoControlService->getH2O2SenSorData1().h2o2;
report["temp_1"] = m_deviceIoControlService->getH2O2SenSorData1().temp;
report["humid_1"] = m_deviceIoControlService->getH2O2SenSorData1().humid;
report["saturation_1"] = m_deviceIoControlService->getH2O2SenSorData1().saturation;
report["saturation_1"] = m_deviceIoControlService->getH2O2SenSorData1().saturation + 1; //为了让曲线不重叠
// logger->info("m_deviceIoControlService->getH2O2SenSorData1().h2o2 {}", m_deviceIoControlService->getH2O2SenSorData1().h2o2);
@ -325,7 +325,13 @@ void MainControlService::processFrontEndMessage(weak_ptr<WebSocket> webSocket, j
receipt["state"]["estimatedRemainingTimeS"] = m_disinfectionCtrlService->getEstimatedRemainingTimeS();
receipt["state"]["disinfection_id"] = m_disinfectionCtrlService->getDisinfectionID();
receipt["state"]["sensor_data"] = createSensorDataJson();
// receipt["state"]["preHeat"] = m_disinfectionCtrlService->processPreheatState
// getPreHeatRaminTimeS
// isPreheatState
receipt["state"]["preHeat"] = m_disinfectionCtrlService->isPreheatState();
receipt["state"]["preHeatRaminTimeS"] = m_disinfectionCtrlService->getPreHeatRaminTimeS(); // 预热剩余时间
receipt["state"]["sensor_data"] = createSensorDataJson();
return;
}

18
src/service/disinfection_ctl_service.cpp

@ -405,10 +405,28 @@ int32_t DisinfectionCtrlService::getEstimatedRemainingTimeS() {
lock_guard<recursive_mutex> lock(lock_);
return m_context.m_remaintime;
}
int32_t DisinfectionCtrlService::getPreHeatRaminTimeS() {
lock_guard<recursive_mutex> lock(lock_);
int32_t remaintime = 0;
if (m_context.m_preheatFlag) {
remaintime = PRE_HEAT_TIME - zsteady_clock().elapsedTimeS(m_context.m_starttp);
if (remaintime < 0) {
remaintime = 0;
}
return remaintime;
} else {
return 0;
}
}
string DisinfectionCtrlService::getDisinfectionID() {
lock_guard<recursive_mutex> lock(lock_);
return m_context.m_disinfectionID;
}
bool DisinfectionCtrlService::isPreheatState() {
lock_guard<recursive_mutex> lock(lock_);
return m_context.m_preheatFlag;
}
int DisinfectionCtrlService::getReplenishingFluidsWorkState() { return m_replenishingFluidsWorkState; }
int DisinfectionCtrlService::getDrainingWorkState() { return m_drainingWorkState; }

2
src/service/disinfection_ctl_service.hpp

@ -113,6 +113,8 @@ class DisinfectionCtrlService : public enable_shared_from_this<DisinfectionCtrlS
bool isDisinfectionRunning();
int32_t getEstimatedRemainingTimeS();
string getDisinfectionID();
bool isPreheatState();
int32_t getPreHeatRaminTimeS();
private:
string createDisinfectionID();

Loading…
Cancel
Save