From 99ad7398901421144d103461765edbdf16811dbd Mon Sep 17 00:00:00 2001 From: zhaohe Date: Mon, 12 Aug 2024 15:51:28 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E9=85=8D=E7=BD=AE=E9=A1=B5?= =?UTF-8?q?=E9=9D=A2=E5=89=8D=E7=AB=AF=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- appsrc/baseservice/db/db_service.cpp | 36 +++++++++++++++++--------------- appsrc/service/setting_mgr_service.cpp | 38 +++++++++++++++++----------------- appsrc/service/setting_mgr_service.hpp | 1 + 3 files changed, 39 insertions(+), 36 deletions(-) diff --git a/appsrc/baseservice/db/db_service.cpp b/appsrc/baseservice/db/db_service.cpp index 76650e2..b59ad29 100644 --- a/appsrc/baseservice/db/db_service.cpp +++ b/appsrc/baseservice/db/db_service.cpp @@ -81,23 +81,23 @@ using namespace nlohmann; // int,float,bool,string static Setting config_settings_table[] = { - SETTING_ITEM(1, "stoped_gs", /*********************/ "int", "消毒停止过氧化氢溶度", /**********/ "0", "2000", "300", true), // - SETTING_ITEM(2, "continued_gs", /******************/ "int", "消毒继续过氧化氢溶度", /**********/ "0", "2000", "200", true), // - SETTING_ITEM(3, "stoped_satur", /******************/ "int", "消毒停止过氧化氢相对饱和度", /*****/ "0", "100", "85", true), // - SETTING_ITEM(4, "continued_satur", /***************/ "int", "消毒继续过氧化氢相对饱和度", /*****/ "0", "100", "60", true), // - SETTING_ITEM(5, "max_humidity", /******************/ "int", "允许消毒最大湿度", /*************/ "0", "100", "90", true), // - SETTING_ITEM(6, "drainage_pump_speed", /***********/ "int", "排液蠕动泵最大转速", /************/ "0", "400", "400", true), // - SETTING_ITEM(7, "injection_pump_speed", /**********/ "int", "喷射蠕动泵转速", /***************/ "0", "0", "0", true), // - SETTING_ITEM(8, "pre_heat_time_s", /***************/ "int", "预热时间", /*******************/ "0", "1200", "120", true), // - SETTING_ITEM(9, "stoped_humi", /*******************/ "int", "消毒停止相对湿度", /************/ "0", "100", "85", true), // - SETTING_ITEM(10, "continued_humi", /***************/ "int", "消毒继续相对湿度", /************/ "0", "100", "60", true), // - SETTING_ITEM(11, "proportional_valve_default_value", "int", "正负压默认开合比例", "0", "100", "10", true), // - SETTING_ITEM(12, "record_period_min", "int", "消毒日志记录间隔", "1", "10", "1", true), // - SETTING_ITEM(13, "record_printer_period_min", "int", "消毒日志打印间隔", "1", "10", "3", true), // - SETTING_ITEM(14, "test_string", "string", "字符串类型测试", "", "", "12345", true), // - SETTING_ITEM(13, "test_float", "float", "floag类型测试", "1", "10", "3.4", true), // - SETTING_ITEM(14, "test_string", "string", "字符串类型测试", "", "", "12345", false), // - SETTING_ITEM(14, "test_bool", "bool", "bool类型测试", "false", "true", "false", false), // + SETTING_ITEM(1, "stoped_gs", /*********************/ "消毒停止过氧化氢溶度", "int", /**********/ "0", "2000", "300", true), // + SETTING_ITEM(2, "continued_gs", /******************/ "消毒继续过氧化氢溶度", "int", /**********/ "0", "2000", "200", true), // + SETTING_ITEM(3, "stoped_satur", /******************/ "消毒停止过氧化氢相对饱和度", "int", /*****/ "0", "100", "85", true), // + SETTING_ITEM(4, "continued_satur", /***************/ "消毒继续过氧化氢相对饱和度", "int", /*****/ "0", "100", "60", true), // + SETTING_ITEM(5, "max_humidity", /******************/ "允许消毒最大湿度", "int", /*************/ "0", "100", "90", true), // + SETTING_ITEM(6, "drainage_pump_speed", /***********/ "排液蠕动泵最大转速", "int", /************/ "0", "400", "400", true), // + SETTING_ITEM(7, "injection_pump_speed", /**********/ "喷射蠕动泵转速", "int", /***************/ "0", "0", "0", true), // + SETTING_ITEM(8, "pre_heat_time_s", /***************/ "预热时间", "int", /*******************/ "0", "1200", "120", true), // + SETTING_ITEM(9, "stoped_humi", /*******************/ "消毒停止相对湿度", "int", /************/ "0", "100", "85", true), // + SETTING_ITEM(10, "continued_humi", /***************/ "消毒继续相对湿度", "int", /************/ "0", "100", "60", true), // + SETTING_ITEM(11, "proportional_valve_default_value", "正负压默认开合比例", "int", "0", "100", "10", true), // + SETTING_ITEM(12, "record_period_min", "消毒日志记录间隔", "int", "1", "10", "1", true), // + SETTING_ITEM(13, "record_printer_period_min", "消毒日志打印间隔", "int", "1", "10", "3", true), // + SETTING_ITEM(14, "test_string", "字符串类型测试", "string", "", "", "12345", true), // + SETTING_ITEM(15, "test_float", "floag类型测试", "float", "1", "10", "3.4", true), // + SETTING_ITEM(16, "test_string", "字符串类型测试", "string", "", "", "12345", false), // + SETTING_ITEM(17, "test_bool", "bool类型测试", "bool", "false", "true", "false", false), // }; @@ -338,6 +338,8 @@ json DBService::getAllSettingJson() { j_setting["val_upper_limit"] = s.val_upper_limit; j_setting["val"] = s.val; j_setting["default_val"] = s.default_val; + j_setting["val_type"] = s.val_type; + j_setting["is_editable"] = s.is_editable; j_settings.push_back(j_setting); } return j_settings; diff --git a/appsrc/service/setting_mgr_service.cpp b/appsrc/service/setting_mgr_service.cpp index 9579e9d..21cee9b 100644 --- a/appsrc/service/setting_mgr_service.cpp +++ b/appsrc/service/setting_mgr_service.cpp @@ -12,7 +12,7 @@ void SettingMgrService::initialize() { REGFN(SettingMgrService, getAllSetting); REGFN(SettingMgrService, setSettingVal); REGFN(SettingMgrService, getAllFormula); - REGFN(SettingMgrService, addFormula); + REGFN(SettingMgrService, addNewFormula); REGFN(SettingMgrService, delFormula); REGFN(SettingMgrService, updateFormula); REGFN(SettingMgrService, updateFormulaIterm); @@ -26,20 +26,23 @@ void SettingMgrService::setSettingVal(shared_ptr cxt) { bool suc = m_db->setSettingVal(settingName, settingVal); APPCHECK(suc, err::kappe_db_operate_error, "setSettingVal failed"); } -void SettingMgrService::getAllFormula(shared_ptr cxt) { cxt->receipt["content"] = m_db->getAllFormulaJson(); } -void SettingMgrService::addFormula(shared_ptr cxt) { - string formula_id = cxt->cmd["param"]["formula_id"]; - m_db->addFormula(cxt->cmd["formula_id"], // - jsonGet(cxt->cmd["loglevel"]), // - jsonGet(cxt->cmd["stoped_gs"]), // - jsonGet(cxt->cmd["continued_gs"]), // - jsonGet(cxt->cmd["stoped_satur"]), // - jsonGet(cxt->cmd["continued_satur"]), // - jsonGet(cxt->cmd["stoped_humi"]), // - jsonGet(cxt->cmd["continued_humi"]), // - jsonGet(cxt->cmd["injection_pump_speed"])); - return; +void SettingMgrService::getAllFormula(shared_ptr cxt) { cxt->content = m_db->getAllFormulaJson(); } + +void SettingMgrService::addNewFormula(shared_ptr cxt) { + string formula_id = "新建配方"; + int loglevel = 3; + int stoped_gs = m_db->getSettingVal("stoped_gs"); + int continued_gs = m_db->getSettingVal("continued_gs"); + int stoped_satur = m_db->getSettingVal("stoped_satur"); + int continued_satur = m_db->getSettingVal("continued_satur"); + int stoped_humi = m_db->getSettingVal("stoped_humi"); + int continued_humi = m_db->getSettingVal("continued_humi"); + int injection_pump_speed = m_db->getSettingVal("injection_pump_speed"); + m_db->addFormula(formula_id, loglevel, stoped_gs, continued_gs, stoped_satur, continued_satur, stoped_humi, continued_humi, injection_pump_speed); + + cxt->content = m_db->getAllFormulaJson(); } + void SettingMgrService::delFormula(shared_ptr cxt) { m_db->delFormula(jsonGet(cxt->cmd["param"]["id"])); } void SettingMgrService::updateFormula(shared_ptr cxt) { auto param = cxt->cmd["param"]; @@ -81,12 +84,9 @@ void SettingMgrService::updateFormulaIterm(shared_ptr cxt) { formula->injection_pump_speed = std::to_string(injection_pump_speed); m_db->updateFormula(formula); - - return; + cxt->content = m_db->getAllFormulaJson(); } void SettingMgrService::factoryResetSettings(shared_ptr cxt) { m_db->settingfactoryReset(); - auto dbval = m_db->getAllSettingJson(); - cxt->content = dbval; - return; + cxt->content = m_db->getAllSettingJson(); } diff --git a/appsrc/service/setting_mgr_service.hpp b/appsrc/service/setting_mgr_service.hpp index bb275ae..d1f810a 100644 --- a/appsrc/service/setting_mgr_service.hpp +++ b/appsrc/service/setting_mgr_service.hpp @@ -24,6 +24,7 @@ class SettingMgrService : public enable_shared_from_this { private: void getAllSetting(shared_ptr cxt); void setSettingVal(shared_ptr cxt); + void addNewFormula(shared_ptr cxt); void getAllFormula(shared_ptr cxt); void addFormula(shared_ptr cxt); void delFormula(shared_ptr cxt);