From 789af4f4a7baee07bd6c2c03588afcb19555343b Mon Sep 17 00:00:00 2001
From: LAPTOP-SNT8I5JK\Boounion <Chenluhua@qq.com>
Date: 星期三, 16 七月 2025 14:00:32 +0800
Subject: [PATCH] 1.CollectionEvent列表从文件加载,界面上显示;

---
 SourceCode/Bond/Servo/Model.cpp |   23 +++++++++++++++++++----
 1 files changed, 19 insertions(+), 4 deletions(-)

diff --git a/SourceCode/Bond/Servo/Model.cpp b/SourceCode/Bond/Servo/Model.cpp
index 476ca44..7544937 100644
--- a/SourceCode/Bond/Servo/Model.cpp
+++ b/SourceCode/Bond/Servo/Model.cpp
@@ -119,11 +119,24 @@
 			m_master.enableEventReport(bEnable);
 		}
 	};
+	listener.onEnableDisableAlarmReport = [&](void* pFrom, bool bEnable, unsigned int id) -> void {
+		LOGI("onEnableDisableAlarmReport bEnable:%s, id:%d", bEnable ? _T("YES") : _T("NO"), id);
+		if (id == 0) {
+			m_master.enableAlarmReport(bEnable);
+		}
+	};
 	m_hsmsPassive.setListener(listener);
 	m_hsmsPassive.setEquipmentModelType((LPTSTR)(LPCTSTR)strModeType);
 	m_hsmsPassive.setSoftRev((LPTSTR)(LPCTSTR)strSoftRev);
+	CString strVarialbleFile;
+	strVarialbleFile.Format(_T("%s\\VariableList.txt"), (LPTSTR)(LPCTSTR)m_strWorkDir);
+	m_hsmsPassive.loadVarialbles((LPTSTR)(LPCTSTR)strVarialbleFile);
 	m_hsmsPassive.init(this, "APP", 7000);
-
+	strVarialbleFile.Format(_T("%s\\ReportList.txt"), (LPTSTR)(LPCTSTR)m_strWorkDir);
+	m_hsmsPassive.loadReports((LPTSTR)(LPCTSTR)strVarialbleFile);
+	strVarialbleFile.Format(_T("%s\\CollectionEventList.txt"), (LPTSTR)(LPCTSTR)m_strWorkDir);
+	m_hsmsPassive.loadCollectionEvents((LPTSTR)(LPCTSTR)strVarialbleFile);
+	m_hsmsPassive.init(this, "APP", 7000);
 
 	SERVO::MasterListener masterListener;
 	masterListener.onMasterStateChanged = [&](void* pMaster, SERVO::MASTERSTATE state) -> void {
@@ -182,9 +195,11 @@
 			notify(RX_CODE_ALARM_CLEAR);
 		}
 
-		m_hsmsPassive.requestAlarmReport(state,
-			pEquipment->getBaseAlarmId() + alarmId,
-			strAlarmText.c_str());
+		if (m_master.isAlarmReportEnable()) {
+			m_hsmsPassive.requestAlarmReport(state,
+				pEquipment->getBaseAlarmId() + alarmId,
+				strAlarmText.c_str());
+		}
 	};
 	masterListener.onEqVcrEventReport = [&](void* pMaster, SERVO::CEquipment* pEquipment, SERVO::CVcrEventReport* pReport) {
 		LOGE("<CModel>onEqVcrEventReport.");

--
Gitblit v1.9.3