10 changed files with 207 additions and 58 deletions
-
13app_protocols/apperrorcode/apperrorcode.hpp
-
98appsrc/baseservice/db/db_service.cpp
-
15appsrc/baseservice/db/db_service.hpp
-
6appsrc/baseservice/front_msg_processer/front_msg_processer.cpp
-
1appsrc/baseservice/front_msg_processer/front_msg_processer.hpp
-
0appsrc/service/device_info_mgr_service.cpp
-
0appsrc/service/device_info_mgr_service.hpp
-
3appsrc/service/main_control_service.cpp
-
92appsrc/service/setting_mgr_service.cpp
-
37appsrc/service/setting_mgr_service.hpp
@ -0,0 +1,92 @@ |
|||
#include "setting_mgr_service.hpp"
|
|||
|
|||
using namespace iflytop; |
|||
using namespace std; |
|||
using namespace core; |
|||
|
|||
SettingMgrService::SettingMgrService() {} |
|||
void SettingMgrService::initialize() { |
|||
GET_TO_SERVICE(m_db); |
|||
GET_TO_SERVICE(m_ds); |
|||
|
|||
REGFN(SettingMgrService, getAllSetting); |
|||
REGFN(SettingMgrService, setSettingVal); |
|||
REGFN(SettingMgrService, getAllFormula); |
|||
REGFN(SettingMgrService, addFormula); |
|||
REGFN(SettingMgrService, delFormula); |
|||
REGFN(SettingMgrService, updateFormula); |
|||
REGFN(SettingMgrService, updateFormulaIterm); |
|||
REGFN(SettingMgrService, factoryResetSettings); |
|||
} |
|||
|
|||
void SettingMgrService::getAllSetting(shared_ptr<MsgProcessContext> cxt) { cxt->receipt["content"] = m_db->getAllSettingJson(); } |
|||
void SettingMgrService::setSettingVal(shared_ptr<MsgProcessContext> cxt) { |
|||
string settingName = cxt->cmd["param"]["settingName"]; |
|||
string settingVal = cxt->cmd["param"]["settingVal"]; |
|||
bool suc = m_db->setSettingVal(settingName, settingVal); |
|||
APPCHECK(suc, err::kappe_db_operate_error, "setSettingVal failed"); |
|||
} |
|||
void SettingMgrService::getAllFormula(shared_ptr<MsgProcessContext> cxt) { cxt->receipt["content"] = m_db->getAllFormulaJson(); } |
|||
void SettingMgrService::addFormula(shared_ptr<MsgProcessContext> cxt) { |
|||
string formula_id = cxt->cmd["param"]["formula_id"]; |
|||
m_db->addFormula(cxt->cmd["formula_id"], //
|
|||
jsonGet<int>(cxt->cmd["loglevel"]), //
|
|||
jsonGet<int>(cxt->cmd["stoped_gs"]), //
|
|||
jsonGet<int>(cxt->cmd["continued_gs"]), //
|
|||
jsonGet<int>(cxt->cmd["stoped_satur"]), //
|
|||
jsonGet<int>(cxt->cmd["continued_satur"]), //
|
|||
jsonGet<int>(cxt->cmd["stoped_humi"]), //
|
|||
jsonGet<int>(cxt->cmd["continued_humi"]), //
|
|||
jsonGet<int>(cxt->cmd["injection_pump_speed"])); |
|||
return; |
|||
} |
|||
void SettingMgrService::delFormula(shared_ptr<MsgProcessContext> cxt) { m_db->delFormula(jsonGet<int>(cxt->cmd["param"]["id"])); } |
|||
void SettingMgrService::updateFormula(shared_ptr<MsgProcessContext> cxt) { |
|||
auto param = cxt->cmd["param"]; |
|||
string val_str; |
|||
if (param["val"].is_string()) { |
|||
val_str = param["val"]; |
|||
} else { |
|||
val_str = std::to_string(param["val"].get<int>()); |
|||
} |
|||
auto formula = m_db->updateFormula(jsonGet<int>(param["id"]), param["itemName"], val_str); |
|||
return; |
|||
} |
|||
void SettingMgrService::updateFormulaIterm(shared_ptr<MsgProcessContext> cxt) { |
|||
auto param = cxt->cmd["param"]; |
|||
|
|||
int id = jsonGet<int>(param["id"]); |
|||
string formula_id = param["formula_id"]; |
|||
int loglevel = jsonGet<int>(param["loglevel"]); |
|||
int stoped_gs = jsonGet<int>(param["stoped_gs"]); |
|||
int continued_gs = jsonGet<int>(param["continued_gs"]); |
|||
int stoped_satur = jsonGet<int>(param["stoped_satur"]); |
|||
int continued_satur = jsonGet<int>(param["continued_satur"]); |
|||
int stoped_humi = jsonGet<int>(param["stoped_humi"]); |
|||
int continued_humi = jsonGet<int>(param["continued_humi"]); |
|||
int injection_pump_speed = jsonGet<int>(param["injection_pump_speed"]); |
|||
|
|||
shared_ptr<Formula> formula = m_db->getFormula(id); |
|||
APPCHECK(formula, err::kappe_db_operate_error, "formula id {} not exist", id); |
|||
|
|||
string oldname = formula->formula_id; |
|||
formula->formula_id = formula_id; |
|||
formula->loglevel = std::to_string(loglevel); |
|||
formula->stoped_gs = std::to_string(stoped_gs); |
|||
formula->continued_gs = std::to_string(continued_gs); |
|||
formula->stoped_satur = std::to_string(stoped_satur); |
|||
formula->continued_satur = std::to_string(continued_satur); |
|||
formula->stoped_humi = std::to_string(stoped_humi); |
|||
formula->continued_humi = std::to_string(continued_humi); |
|||
formula->injection_pump_speed = std::to_string(injection_pump_speed); |
|||
|
|||
m_db->updateFormula(formula); |
|||
|
|||
return; |
|||
} |
|||
void SettingMgrService::factoryResetSettings(shared_ptr<MsgProcessContext> cxt) { |
|||
m_db->settingfactoryReset(); |
|||
auto dbval = m_db->getAllSettingJson(); |
|||
cxt->content = dbval; |
|||
return; |
|||
} |
@ -0,0 +1,37 @@ |
|||
#pragma once
|
|||
#include <fstream>
|
|||
#include <iostream>
|
|||
#include <list>
|
|||
#include <map>
|
|||
#include <memory>
|
|||
#include <set>
|
|||
#include <sstream>
|
|||
#include <string>
|
|||
#include <vector>
|
|||
//
|
|||
#include "baseservice/baseservice.hpp"
|
|||
namespace iflytop { |
|||
class SettingMgrService : public enable_shared_from_this<SettingMgrService> { |
|||
ENABLE_LOGGER(SettingMgrService); |
|||
|
|||
shared_ptr<DBService> m_db; |
|||
shared_ptr<DeviceStateService> m_ds; |
|||
|
|||
public: |
|||
SettingMgrService(); |
|||
void initialize(); |
|||
|
|||
private: |
|||
void getAllSetting(shared_ptr<MsgProcessContext> cxt); |
|||
void setSettingVal(shared_ptr<MsgProcessContext> cxt); |
|||
void getAllFormula(shared_ptr<MsgProcessContext> cxt); |
|||
void addFormula(shared_ptr<MsgProcessContext> cxt); |
|||
void delFormula(shared_ptr<MsgProcessContext> cxt); |
|||
void updateFormula(shared_ptr<MsgProcessContext> cxt); |
|||
void updateFormulaIterm(shared_ptr<MsgProcessContext> cxt); |
|||
void factoryResetSettings(shared_ptr<MsgProcessContext> cxt); |
|||
|
|||
private: |
|||
}; |
|||
|
|||
} // namespace iflytop
|
Write
Preview
Loading…
Cancel
Save
Reference in new issue