Browse Source

V 3.0.2 | 1. 修改D值修正系数到setting中

master
zhaohe 4 weeks ago
parent
commit
f760ee65da
  1. 3
      .gitignore
  2. 5
      README.md
  3. 43
      appsrc/appbase/appbean/setting_id.hpp
  4. 2
      appsrc/appconfig/basic/zappversion.hpp
  5. 2
      appsrc/baseservice/db/device_ext_setting_dao.cpp
  6. 4
      appsrc/baseservice/db/device_ext_setting_dao.hpp
  7. 7
      appsrc/baseservice/db/setting_db_dao.cpp
  8. 10
      appsrc/service/app/disinfection_ctrl/disinfection_ctrl_service.cpp
  9. 11
      appsrc/service/app_core.cpp
  10. 2
      appsrc/service/app_core.hpp
  11. 7
      appsrc/service/setting/ext_setting_mgr_service.cpp
  12. 1
      appsrc/service/setting/ext_setting_mgr_service.hpp
  13. 1
      appsrc/service/setting_mgr_service.cpp

3
.gitignore

@ -1,6 +1,7 @@
release/*
release/
build
out
.cache
buildpc
buildhost
./release/*

5
README.md

@ -172,6 +172,11 @@ V 2.5.0
2. 修改AppCore中loginUsr字段为 loginUser
3. 修改消毒服务状态上报相关字段。
V 3.0.1
1.修复设置设备ID格式错误的BUG
V 3.0.2
1. 修改D值修正系数到setting中
TODO:
1.添加用户增加用户查重检查

43
appsrc/appbase/appbean/setting_id.hpp

@ -2,27 +2,26 @@
#include "iflytop/core/components/zenum_template/zenum_template.hpp"
#define SettingId_ZENUM_IMPL ZENUM_IMPL(SettingId, SettingId_LIST)
#define SettingId_LIST(type, marco) /**/ \
marco(type, stoped_gs) /**/ \
marco(type, continued_gs) /**/ \
marco(type, stoped_satur) /**/ \
marco(type, continued_satur) /**/ \
marco(type, max_humidity) /**/ \
marco(type, drainage_pump_speed) /**/ \
marco(type, injection_pump_speed) /**/ \
marco(type, pre_heat_time_s) /**/ \
marco(type, stoped_humi) /**/ \
marco(type, continued_humi) /**/ \
marco(type, record_period_min) /**/ \
marco(type, record_printer_period_min) /**/ \
marco(type, loglevel) /*消毒等级*/ \
marco(type, enable_bd_dehumidify) /*是否启用BD除湿*/ \
marco(type, bd_dehumidify_threshold) /*BD除湿阈值*/ \
marco(type, enable_ad_dehumidify) /*是否启用AD除湿*/ \
marco(type, ad_dehumidify_threshold) /*AD除湿阈值*/ \
marco(type, enable_ad_degrade) /*是否启用AD降解*/ \
marco(type, ad_degrade_threshold) /*AD降解阈值*/
#define SettingId_LIST(type, marco) /**/ \
marco(type, stoped_gs) /**/ \
marco(type, continued_gs) /**/ \
marco(type, stoped_satur) /**/ \
marco(type, continued_satur) /**/ \
marco(type, max_humidity) /**/ \
marco(type, drainage_pump_speed) /**/ \
marco(type, injection_pump_speed) /**/ \
marco(type, pre_heat_time_s) /**/ \
marco(type, stoped_humi) /**/ \
marco(type, continued_humi) /**/ \
marco(type, record_period_min) /**/ \
marco(type, record_printer_period_min) /**/ \
marco(type, loglevel) /*消毒等级*/ \
marco(type, enable_bd_dehumidify) /*是否启用BD除湿*/ \
marco(type, bd_dehumidify_threshold) /*BD除湿阈值*/ \
marco(type, enable_ad_dehumidify) /*是否启用AD除湿*/ \
marco(type, ad_dehumidify_threshold) /*AD除湿阈值*/ \
marco(type, enable_ad_degrade) /*是否启用AD降解*/ \
marco(type, ad_degrade_threshold) /*AD降解阈值*/ \
marco(type, dvalue_correct_coefficient) /*D值修正倍数*/
ZENUM_DECLAR(SettingId, SettingId_LIST);

2
appsrc/appconfig/basic/zappversion.hpp

@ -1,3 +1,3 @@
#pragma once
#define VERSION "3.0.0"
#define VERSION "3.0.2"
#define PROJECT_NAME "TRANSMIT_DM"

2
appsrc/baseservice/db/device_ext_setting_dao.cpp

@ -39,7 +39,6 @@ DeviceExtSetting DeviceExtSettingDAO::getDeviceExtSetting() { //
setting.canIF = get("canIF", "can0");
setting.deviceId = get("deviceId", "");
setting.printerUartPath = get("printerUartPath", "/dev/ttyS5");
setting.dvalueCoefficient = get("dvalueCoefficient", 2);
setting.projectType = get("projectType", "");
setting.h2o2SensorExpireTimeMonth = get("h2o2SensorExpireTimeMonth", 12);
setting.deviceType = get("deviceType", "");
@ -62,7 +61,6 @@ void DeviceExtSettingDAO::setprojectType(string projectType) { set("projectType"
void DeviceExtSettingDAO::setCanIF(string canIF) { set("canIF", canIF); }
void DeviceExtSettingDAO::setCanBitrate(int32_t canBitrate) { set("canBitrate", to_string(canBitrate)); }
void DeviceExtSettingDAO::setPrinterUartPath(string printerUartPath) { set("printerUartPath", printerUartPath); }
void DeviceExtSettingDAO::setDvalueCoefficient(float dvalueCoefficient) { set("dvalueCoefficient", to_string(dvalueCoefficient)); }
void DeviceExtSettingDAO::setH2o2SensorExpireTimeMonth(int32_t h2o2SensorExpireTimeMonth) { set("h2o2SensorExpireTimeMonth", to_string(h2o2SensorExpireTimeMonth)); }
void DeviceExtSettingDAO::setDeviceType(string deviceType) { set("deviceType", deviceType); }
void DeviceExtSettingDAO::setEmptyThePipeLineTimeS(int32_t val) { set("emptyThePipeLineTimeS", val); }

4
appsrc/baseservice/db/device_ext_setting_dao.hpp

@ -46,7 +46,6 @@ class DeviceExtSetting {
string printerUartPath; // 打印机串口路径
float dvalueCoefficient; // 消毒系数,数值越小,相对消毒时间越长
int32_t h2o2SensorExpireTimeMonth; // h2o2传感器过期时间,单位月
@ -58,7 +57,7 @@ class DeviceExtSetting {
int32_t leakTestInflationTimeMs; // 默认 充气时间,单位毫秒
int32_t leakTestStabilizationTimeS; // 默认 充气时间,单位秒
NLOHMANN_DEFINE_TYPE_INTRUSIVE(DeviceExtSetting, deviceId, projectType, deviceType, canIF, canBitrate, printerUartPath, dvalueCoefficient, h2o2SensorExpireTimeMonth, emptyThePipeLineTimeS,
NLOHMANN_DEFINE_TYPE_INTRUSIVE(DeviceExtSetting, deviceId, projectType, deviceType, canIF, canBitrate, printerUartPath, h2o2SensorExpireTimeMonth, emptyThePipeLineTimeS,
emptyingLiquidStorageTankCondtionG, h2o2Sensorh2o2MinVal, leakTestInflationTimeMs, leakTestStabilizationTimeS);
};
@ -96,7 +95,6 @@ class DeviceExtSettingDAO : public KeyValDBV2Dao {
void setCanIF(string canIF);
void setCanBitrate(int32_t canBitrate);
void setPrinterUartPath(string printerUartPath);
void setDvalueCoefficient(float dvalueCoefficient);
void setH2o2SensorExpireTimeMonth(int32_t h2o2SensorExpireTimeMonth);
void setDeviceType(string deviceType);
void setH2o2Sensorh2o2MinVal(int32_t h2o2Sensorh2o2MinVal);

7
appsrc/baseservice/db/setting_db_dao.cpp

@ -74,6 +74,7 @@ static Setting settingInitTable[] = {
{.setting_id = SettingId::kad_dehumidify_threshold},
{.setting_id = SettingId::kenable_ad_degrade},
{.setting_id = SettingId::kad_degrade_threshold},
{.setting_id = SettingId::dvalue_correct_coefficient},
};
void SettingDBDao::initSettingDefaultValTable() {
@ -195,6 +196,12 @@ void SettingDBDao::initSettingDefaultValTable() {
setting.setVisibleRangeConfig(true, false, false, false);
break;
}
case SettingId::kdvalue_correct_coefficient: {
setting.name_ch = "D值修正系数";
setting.setValConfig("float", "1.5", "0.5", "3");
setting.setVisibleRangeConfig(true, true, false, false);
break;
}
default:
break;
}

10
appsrc/service/app/disinfection_ctrl/disinfection_ctrl_service.cpp

@ -412,7 +412,13 @@ void DisinfectionCtrlService::processStateInit(DisinfectionEvent* event) {
AppEventBus::ins()->push(make_shared<AppDisinfectionStartEvent>(s_sessionId));
GET_SERVICE(WarningLightControler)->setworkFlag(true);
changeToNextState();
auto coefficient = getSettingAsFloat(SettingId::dvalue_correct_coefficient);
// auto m_tlog = getSettingAsFloat(SettingId::loglevel);
logger->info("start disinfection {}", s_sessionId);
logger->info(" dvalue correct coefficient :{}", coefficient);
logger->info(" target log level :{}", m_tlog);
}
}
@ -508,7 +514,9 @@ void DisinfectionCtrlService::processStateDisinfection(DisinfectionEvent* event)
*
*
*/
auto coefficient = DeviceExtSettingDAO::ins()->getDeviceExtSetting().dvalueCoefficient;
// auto coefficient = DeviceExtSettingDAO::ins()->getDeviceExtSetting().dvalueCoefficient;
auto coefficient = getSettingAsFloat(SettingId::dvalue_correct_coefficient);
s_dvalue = DValueComputer().computeDValue(coefficient, s_h2o2Snapshot->minH2O2);

11
appsrc/service/app_core.cpp

@ -220,7 +220,10 @@ void AppCore::initialize() {
return;
}
if (dynamic_pointer_cast<AppLoginOutEvent>(event)) {
initHardwareState();
initHardwareState(false);
}
if (dynamic_pointer_cast<AppLoginEvent>(event)) {
initHardwareState(true);
}
});
@ -243,9 +246,9 @@ void AppCore::initialize() {
}
}));
initHardwareState();
// initHardwareState();
};
void AppCore::initHardwareState() {
void AppCore::initHardwareState(bool reportEvent) {
auto deviceIoControlService = GET_SERVICE(DeviceIoControlService);
try {
if (PORT.isDT600B() || PORT.isDT600N() || PORT.isDT300N() || PORT.isDT300W()) {
@ -266,7 +269,7 @@ void AppCore::initHardwareState() {
}
} catch (const appexception& e) {
logger->error("initialize hardware error:{}", e.what());
AppEventBus::ins()->pushWarningPromptEvent(e);
if (reportEvent) AppEventBus::ins()->pushWarningPromptEvent(e);
}
}

2
appsrc/service/app_core.hpp

@ -60,7 +60,7 @@ class AppCore : public enable_shared_from_this<AppCore> {
void dosystem(string order, bool dump);
void loop();
int demofn(int a, int b);
void initHardwareState();
void initHardwareState(bool reportEvent);
private:
void onDeviceStateChange();

7
appsrc/service/setting/ext_setting_mgr_service.cpp

@ -64,9 +64,7 @@ void ExtSettingMgrService::setCanBitrate(shared_ptr<MsgProcessContext> cxt, int3
void ExtSettingMgrService::setPrinterUartPath(shared_ptr<MsgProcessContext> cxt, string printerUartPath) { //
DeviceExtSettingDAO::ins()->setPrinterUartPath(printerUartPath);
}
void ExtSettingMgrService::setDvalueCoefficient(shared_ptr<MsgProcessContext> cxt, float dvalueCoefficient) { //
DeviceExtSettingDAO::ins()->setDvalueCoefficient(dvalueCoefficient);
}
void ExtSettingMgrService::setH2o2SensorExpireTimeMonth(shared_ptr<MsgProcessContext> cxt, int32_t h2o2SensorExpireTimeMonth) { //
DeviceExtSettingDAO::ins()->setH2o2SensorExpireTimeMonth(h2o2SensorExpireTimeMonth);
}
@ -91,7 +89,7 @@ void ExtSettingMgrService::setLeakTestStabilizationTimeS(shared_ptr<MsgProcessCo
void ExtSettingMgrService::setDeviceInfo(shared_ptr<MsgProcessContext> cxt, ProjectTypeEnum type, int year, int month, int day, int index) {
DeviceExtSettingDAO::ins()->setprojectType(type);
DeviceExtSettingDAO::ins()->setDeviceType(type);
DeviceExtSettingDAO::ins()->setDeviceId(fmt::format("{}{:0>2d}{:0>2d}{:0>2d}{:0>3d}", type, year, month, day, index));
DeviceExtSettingDAO::ins()->setDeviceId(fmt::format("{}{:0>2d}{:0>2d}{:0>2d}{:0>3d}", type.toString(), year, month, day, index));
cxt->rely["extSettings"] = DeviceExtSettingDAO::ins()->getDeviceExtSettingAsJson();
}
@ -135,7 +133,6 @@ void ExtSettingMgrService::initialize() {
REG_EXTFN(setCanIF, void(string), canIF);
REG_EXTFN(setCanBitrate, void(int32_t), canBitrate);
REG_EXTFN(setPrinterUartPath, void(string), printerUartPath);
REG_EXTFN(setDvalueCoefficient, void(float), dvalueCoefficient);
REG_EXTFN(setH2o2SensorExpireTimeMonth, void(int32_t), h2o2SensorExpireTimeMonth);
REG_EXTFN(setEmptyThePipeLineTimeS, void(int32_t), emptyThePipeLineTimeS);
REG_EXTFN(setEmptyingLiquidStorageTankCondtionG, void(int32_t), emptyingLiquidStorageTankCondtionG);

1
appsrc/service/setting/ext_setting_mgr_service.hpp

@ -35,7 +35,6 @@ class ExtSettingMgrService : public enable_shared_from_this<ExtSettingMgrService
void setCanIF(shared_ptr<MsgProcessContext> cxt, string canIF);
void setCanBitrate(shared_ptr<MsgProcessContext> cxt, int32_t canBitrate);
void setPrinterUartPath(shared_ptr<MsgProcessContext> cxt, string printerUartPath);
void setDvalueCoefficient(shared_ptr<MsgProcessContext> cxt, float dvalueCoefficient);
void setH2o2SensorExpireTimeMonth(shared_ptr<MsgProcessContext> cxt, int32_t h2o2SensorExpireTimeMonth);
// void setTestMode(shared_ptr<MsgProcessContext> cxt, bool testMode);

1
appsrc/service/setting_mgr_service.cpp

@ -1,5 +1,4 @@
#include "setting_mgr_service.hpp"
using namespace iflytop;
using namespace std;
using namespace core;

Loading…
Cancel
Save