优化结构

This commit is contained in:
zjk
2025-04-07 21:18:02 +08:00
parent ebf1701335
commit 7ef9ec5ac0
10 changed files with 785 additions and 248 deletions
+45
View File
@@ -0,0 +1,45 @@
#include "UpperCommManager.h"
#include "PowerManger.h"
#include "driver.h"
UpperCommManager::UpperCommManager(PowerManger* pm) : m_pm(pm) {}
bool UpperCommManager::processUpperMsg(const string& key, const string& strJson) {
if(key == DB_TO_PM_MSCMD) {
if(m_pm->getMsCmdFromJson(m_pm->m_msCmd, strJson)) {
cout << "get ms cmd:" << strJson << endl;
return true;
} else {
cout << MOOS::ConsoleColours::Red << "get ms cmd error:" << strJson
<< MOOS::ConsoleColours::reset << endl;
}
}
else if(key == DB_TO_PM_EQUIPMENTCMD) {
if(m_pm->m_driver.loadDriverTableFromJson(strJson, m_pm->m_subDisSysCmd) < 0) {
cout << MOOS::ConsoleColours::Red << "get sub dis cmd error:" << strJson
<< MOOS::ConsoleColours::reset << endl;
}
return true;
}
else if(key == DB_TO_PM_SUBDISSTATE) {
if(m_pm->m_driver.loadDriverTableFromJson(strJson, m_pm->m_subDisSysState) < 0) {
cout << MOOS::ConsoleColours::Red << "get sub dis state error:" << strJson
<< MOOS::ConsoleColours::reset << endl;
}
return true;
}
return false;
}
void UpperCommManager::processPeriodicTasks() {
buildPowerSysReport();
Notify(PM_TO_DB_SUBDISCMD,
m_pm->m_driver.saveDriverTableToJson(&m_pm->m_subDisSysCmd));
Notify(PM_TO_DB_EQUIPMENTSTATE,
m_pm->m_driver.saveDriverTableToJson(&m_pm->m_currentDriverState));
}
void UpperCommManager::buildPowerSysReport() {
// 原有buildPowerSysReport实现
// 需要从PowerManger.cpp迁移过来
}