Browse Source

update

master
zhaohe 2 years ago
parent
commit
ac9d8196b3
  1. 32
      src/db/db_service.cpp
  2. 45
      src/main_control_service.cpp
  3. 36
      src/service/disinfection_ctl_service.cpp
  4. 23
      src/service/disinfection_ctl_service.hpp

32
src/db/db_service.cpp

@ -90,20 +90,10 @@ void DBService::init_usr_db() {
logger->info("init user db");
auto storage = make_storage(USER_DB_STRUCT);
storage.sync_schema();
auto root = storage.get_all<User>(where(c(&User::uid) == "root"));
if (root.size() == 0) {
storage.insert(User{-1, "root", "iflytop.com#9973", 0, 0}); // 超级用户
}
auto vendor = storage.get_all<User>(where(c(&User::uid) == "vendor"));
if (vendor.size() == 0) {
storage.insert<User>({-1, "vendor", "9973", 1, true}); // 厂商
}
auto admin = storage.get_all<User>(where(c(&User::uid) == "admin"));
if (admin.size() == 0) {
storage.insert<User>({-1, "admin", "9973", 2, true}); // 管理员
storage.insert<User>({-1, "admin", "9973", 0, true}); // 管理员
}
auto user = storage.get_all<User>(where(c(&User::uid) == "user"));
if (user.size() == 0) {
storage.insert<User>({-1, "user", "0000", 3, true}); // 普通用户
@ -136,34 +126,34 @@ 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, 2, 1800});
storage.insert(Setting{1, "stoped_gs", "消毒停止过氧化氢溶度", 0, 2000, 0, 1800});
if (storage.get_all<Setting>(where(c(&Setting::id) == 2)).size() == 0)
storage.insert(Setting{2, "continued_gs", "消毒继续过氧化氢溶度", 0, 2000, 2, 1500});
storage.insert(Setting{2, "continued_gs", "消毒继续过氧化氢溶度", 0, 2000, 0, 1500});
if (storage.get_all<Setting>(where(c(&Setting::id) == 3)).size() == 0)
storage.insert(Setting{3, "stoped_satur", "消毒停止过氧化氢相对饱和度", 0, 100, 2, 85});
storage.insert(Setting{3, "stoped_satur", "消毒停止过氧化氢相对饱和度", 0, 100, 0, 85});
if (storage.get_all<Setting>(where(c(&Setting::id) == 4)).size() == 0)
storage.insert(Setting{4, "continued_satur", "消毒继续过氧化氢相对饱和度", 0, 100, 2, 70});
storage.insert(Setting{4, "continued_satur", "消毒继续过氧化氢相对饱和度", 0, 100, 0, 70});
if (storage.get_all<Setting>(where(c(&Setting::id) == 5)).size() == 0) //
storage.insert(Setting{5, "max_humidity", "允许消毒最大湿度", 0, 100, 2, 90});
storage.insert(Setting{5, "max_humidity", "允许消毒最大湿度", 0, 100, 0, 90});
if (storage.get_all<Setting>(where(c(&Setting::id) == 6)).size() == 0)
storage.insert(Setting{6, "drainage_pump_speed", "排液蠕动泵转速", 0, 350, 2, 300});
storage.insert(Setting{6, "drainage_pump_speed", "排液蠕动泵转速", 0, 350, 0, 300});
if (storage.get_all<Setting>(where(c(&Setting::id) == 7)).size() == 0)
storage.insert(Setting{7, "injection_pump_speed", "喷射蠕动泵转速", 0, 350, 2, 300});
storage.insert(Setting{7, "injection_pump_speed", "喷射蠕动泵转速", 0, 350, 0, 300});
if (storage.get_all<Setting>(where(c(&Setting::id) == 8)).size() == 0) //
storage.insert(Setting{8, "pre_heat_time_s", "预热时间", 0, 600, 2, 120});
storage.insert(Setting{8, "pre_heat_time_s", "预热时间", 0, 600, 0, 120});
if (storage.get_all<Setting>(where(c(&Setting::id) == 9)).size() == 0) //
storage.insert(Setting{9, "stoped_humi", "消毒停止相对湿度", 0, 100, 2, 85});
storage.insert(Setting{9, "stoped_humi", "消毒停止相对湿度", 0, 100, 0, 85});
if (storage.get_all<Setting>(where(c(&Setting::id) == 10)).size() == 0) //
storage.insert(Setting{10, "continued_humi", "消毒继续相对湿度", 0, 100, 2, 70});
storage.insert(Setting{10, "continued_humi", "消毒继续相对湿度", 0, 100, 0, 70});
suc = true;
} catch (const std::exception& e) {

45
src/main_control_service.cpp

@ -32,7 +32,7 @@ static T jsonGet(json j) {
void MainControlService::initialize() {
GET_TO_SERVICE(m_zconfig);
system("systemctl restart zchromium.service");
// system("systemctl restart zchromium.service");
// m_dbService.reset(new DBService());
// m_dbService->initialize();
@ -255,7 +255,7 @@ void MainControlService::processFrontEndMessage(weak_ptr<WebSocket> webSocket, j
* *
*******************************************************************************/
if (cmdstr == "startDisinfection") {
if (cmdstr == "startDisinfection2") {
int loglevel = jsonGet<int>(cmd["loglevel"]);
int injection_pump_speed = jsonGet<int>(cmd["injection_pump_speed"]); //
int stoped_gs = jsonGet<int>(cmd["stoped_gs"]); //
@ -277,9 +277,46 @@ void MainControlService::processFrontEndMessage(weak_ptr<WebSocket> webSocket, j
return;
}
if (cmdstr == "changeInjectionPumpSpeed") {
if (cmdstr == "startDisinfection") {
int loglevel = jsonGet<int>(cmd["loglevel"]);
int injection_pump_speed = m_dbService->getSettingVal("injection_pump_speed");
int stoped_gs = m_dbService->getSettingVal("stoped_gs");
int continued_gs = m_dbService->getSettingVal("continued_gs");
int stoped_satur = m_dbService->getSettingVal("stoped_satur");
int continued_satur = m_dbService->getSettingVal("continued_satur");
int stoped_humi = m_dbService->getSettingVal("stoped_humi");
int continued_humi = m_dbService->getSettingVal("continued_humi");
m_disinfectionCtrlService->startDisinfection(loglevel, //
injection_pump_speed, //
stoped_gs, //
continued_gs, //
stoped_satur, //
continued_satur, //
stoped_humi, //
continued_humi //
);
return;
}
if (cmdstr == "changeDisinfectionParameter") {
int injection_pump_speed = jsonGet<int>(cmd["injection_pump_speed"]); //
m_disinfectionCtrlService->changeInjectionPumpSpeed(injection_pump_speed);
int stoped_gs = jsonGet<int>(cmd["stoped_gs"]); //
int continued_gs = jsonGet<int>(cmd["continued_gs"]); //
int stoped_satur = jsonGet<int>(cmd["stoped_satur"]); //
int continued_satur = jsonGet<int>(cmd["continued_satur"]); //
int stoped_humi = jsonGet<int>(cmd["stoped_humi"]); //
int continued_humi = jsonGet<int>(cmd["continued_humi"]); //
m_disinfectionCtrlService->changeDisinfectionParameter( //
injection_pump_speed, //
stoped_gs, //
continued_gs, //
stoped_satur, //
continued_satur, //
stoped_humi, //
continued_humi //
);
return;
}

36
src/service/disinfection_ctl_service.cpp

@ -422,21 +422,37 @@ void DisinfectionCtrlService::disinfectionLoop(bool& breakflag) {
}
}
void DisinfectionCtrlService::changeInjectionPumpSpeed(int speed) {
void DisinfectionCtrlService::changeDisinfectionParameter(int injection_pump_speed, //
int stoped_gs, //
int continued_gs, //
int stoped_satur, //
int continued_satur, //
int stoped_humi, //
int continued_humi) {
lock_guard<recursive_mutex> lock(lock_);
logger->info("changeInjectionPumpSpeed {}=>{}", m_context.injection_pump_speed, speed);
m_context.injection_pump_speed = speed;
// logger->info("changeInjectionPumpSpeed {}=>{}", m_context.injection_pump_speed, speed);
// m_context.injection_pump_speed = speed;
m_context.injection_pump_speed = injection_pump_speed;
m_context.stoped_gs = stoped_gs;
m_context.continued_gs = continued_gs;
m_context.stoped_satur = stoped_satur;
m_context.continued_satur = continued_satur;
m_context.stoped_humi = stoped_humi;
m_context.continued_humi = continued_humi;
m_context.injection_pump_speed_changed = true;
logger->info("changeDisinfectionParameter {} {} {} {} {} {} {}", injection_pump_speed, stoped_gs, continued_gs, stoped_satur, continued_satur, stoped_humi,
continued_humi);
}
void DisinfectionCtrlService::startDisinfection(int loglevel, //
float injection_pump_speed, //
float stoped_gs, //
float continued_gs, //
float stoped_satur, //
float continued_satur, //
float stoped_humi, //
float continued_humi //
int injection_pump_speed, //
int stoped_gs, //
int continued_gs, //
int stoped_satur, //
int continued_satur, //
int stoped_humi, //
int continued_humi //
) {
lock_guard<recursive_mutex> lock(lock_);

23
src/service/disinfection_ctl_service.hpp

@ -112,15 +112,22 @@ class DisinfectionCtrlService : public enable_shared_from_this<DisinfectionCtrlS
*/
void startDisinfection(int loglevel, //
float injection_pump_speed, //
float stoped_gs, //
float continued_gs, //
float stoped_satur, //
float continued_satur, //
float stoped_humi, //
float continued_humi //
int injection_pump_speed, //
int stoped_gs, //
int continued_gs, //
int stoped_satur, //
int continued_satur, //
int stoped_humi, //
int continued_humi //
);
void changeDisinfectionParameter(int injection_pump_speed, //
int stoped_gs, //
int continued_gs, //
int stoped_satur, //
int continued_satur, //
int stoped_humi, //
int continued_humi //
);
void changeInjectionPumpSpeed(int speed);
void stopDisinfection();

Loading…
Cancel
Save