From 2af991c1c72211b3b6b7fda703846bc017bc1908 Mon Sep 17 00:00:00 2001
From: LAPTOP-SNT8I5JK\Boounion <Chenluhua@qq.com>
Date: 星期一, 10 三月 2025 11:25:33 +0800
Subject: [PATCH] 1.修复上一次合并代码遗留问题;

---
 SourceCode/Bond/Servo/AlarmDlg.h       |    1 
 SourceCode/Bond/Servo/AlarmDlg.cpp     |   12 ++---
 SourceCode/Bond/Servo/AlarmManager.h   |   28 --------------
 SourceCode/Bond/Servo/CEqAlarmStep.cpp |   59 -----------------------------
 SourceCode/Bond/Servo/Model.cpp        |   20 ++++++++-
 5 files changed, 22 insertions(+), 98 deletions(-)

diff --git a/SourceCode/Bond/Servo/AlarmDlg.cpp b/SourceCode/Bond/Servo/AlarmDlg.cpp
index 66c14dd..f12426f 100644
--- a/SourceCode/Bond/Servo/AlarmDlg.cpp
+++ b/SourceCode/Bond/Servo/AlarmDlg.cpp
@@ -66,13 +66,15 @@
 						AlarmData alarmData;
 						alarmData.nId = pStep->getAlarmId();
 						alarmData.nSeverityLevel = pStep->getAlarmLevel();
-						alarmData.nDeviceId = pStep->getAlarmDev();
+						alarmData.nDeviceId = pStep->getEquipment()->getID();
 						alarmData.nUnitId = pStep->getUnitId();
 						alarmData.strDeviceName = alarmManager.getDeviceNameById(alarmData.nDeviceId);
 						alarmData.strUnitName = alarmManager.getUnitNameById(alarmData.nDeviceId, alarmData.nUnitId);
-						alarmData.strDescription = pStep->getText();
 						alarmData.strStartTime = getCurrentTimeString();
 						alarmData.strEndTime = "2000-01-01 00:00";
+
+						const AlarmInfo* pAlarmInfo = alarmManager.getAlarmInfoByID(pStep->getAlarmId());
+						alarmData.strDescription = pAlarmInfo != nullptr ? pAlarmInfo->strAlarmText : "";
 
 						// 鎻掑叆鍒楄〃鎺т欢
 						CListCtrl* pListCtrl = (CListCtrl*)GetDlgItem(IDC_LIST_ALARM);
@@ -279,6 +281,7 @@
 	pListCtrl->SetColumnWidth(7, LVSCW_AUTOSIZE_USEHEADER);
 
 	// 璁$畻鎬婚〉鏁�
+	int totalRecords = AlarmManager::getInstance().getTotalAlarmCount("", "", m_strDeviceName, m_strUnitName, m_strKeyword, m_szTimeStart, m_szTimeEnd);
 	m_nTotalPages = (totalRecords + PAGE_SIZE - 1) / PAGE_SIZE;
 	m_nCurPage = 1;
 
@@ -287,11 +290,6 @@
 
 	return TRUE;  // return TRUE unless you set the focus to a control
 	// 寮傚父: OCX 灞炴�ч〉搴旇繑鍥� FALSE
-}
-
-BOOL CAlarmDlg::DestroyWindow()
-{
-	return CDialogEx::DestroyWindow();
 }
 
 HBRUSH CAlarmDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
diff --git a/SourceCode/Bond/Servo/AlarmDlg.h b/SourceCode/Bond/Servo/AlarmDlg.h
index 6755277..3fbf26d 100644
--- a/SourceCode/Bond/Servo/AlarmDlg.h
+++ b/SourceCode/Bond/Servo/AlarmDlg.h
@@ -57,7 +57,6 @@
 protected:
 	virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV 鏀寔
 	virtual BOOL OnInitDialog();
-	virtual BOOL DestroyWindow();
 	afx_msg HBRUSH OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor);
 	afx_msg void OnDestroy();
 	afx_msg void OnClose();
diff --git a/SourceCode/Bond/Servo/AlarmManager.h b/SourceCode/Bond/Servo/AlarmManager.h
index 1c41797..f99aafe 100644
--- a/SourceCode/Bond/Servo/AlarmManager.h
+++ b/SourceCode/Bond/Servo/AlarmManager.h
@@ -262,34 +262,6 @@
     */
     std::vector<AlarmInfo> getAlarmsInfoByIDs(const std::vector<int>& alarmIDs) const;
 
-	/**
-	 * 读取报警文件
-	 * @param filename 文件名
-	 * @return 成功返回true,失败返回false
-	 */
-    bool readAlarmFile(const std::string& filename);
-
-    /**
-     * 保存报警文件
-     * @param filename 文件名
-     * @return 成功返回true,失败返回false
-     */
-    bool saveAlarmFile(const std::string& filename);
-
-	/**
-	 * 通过报警ID查询报警信息
-	 * @param nAlarmID 报警ID
-	 * @return 报警信息的指针
-	 */
-    const AlarmInfo* getAlarmInfoByID(int nAlarmID) const;
-
-    /**
-    * 通过多个报警ID查询对应的报警信息
-    * @param alarmIDs 多个报警ID
-	* @return 返回多个报警信息
-    */
-    std::vector<AlarmInfo> getAlarmsInfoByIDs(const std::vector<int>& alarmIDs) const;
-
 private:
     AlarmManager();
     ~AlarmManager();
diff --git a/SourceCode/Bond/Servo/CEqAlarmStep.cpp b/SourceCode/Bond/Servo/CEqAlarmStep.cpp
index 67247eb..db6f707 100644
--- a/SourceCode/Bond/Servo/CEqAlarmStep.cpp
+++ b/SourceCode/Bond/Servo/CEqAlarmStep.cpp
@@ -80,67 +80,8 @@
 		return 0;
 	}
 
-	// 获取和设置 AlarmDev
-	int CEqAlarmStep::getAlarmDev() const {
-		return m_nAlarmDev;
-	}
-
 	void CEqAlarmStep::setAlarmDev(int nAlarmDev) {
 		m_nAlarmDev = nAlarmDev;
-	}
-
-	// 获取和设置 AlarmState
-	int CEqAlarmStep::getAlarmState() const {
-		return m_nAlarmState;
-	}
-
-	void CEqAlarmStep::setAlarmState(int nAlarmState) {
-		m_nAlarmState = nAlarmState;
-	}
-
-	// 获取和设置 UnitId
-	int CEqAlarmStep::getUnitId() const {
-		return m_nUnitId;
-	}
-
-	void CEqAlarmStep::setUnitId(int nUnitId) {
-		m_nUnitId = nUnitId;
-	}
-
-	// 获取和设置 AlarmLevel
-	int CEqAlarmStep::getAlarmLevel() const {
-		return m_nAlarmLevel;
-	}
-
-	void CEqAlarmStep::setAlarmLevel(int nAlarmLevel) {
-		m_nAlarmLevel = nAlarmLevel;
-	}
-
-	// 获取和设置 AlarmCode
-	int CEqAlarmStep::getAlarmCode() const {
-		return m_nAlarmCode;
-	}
-
-	void CEqAlarmStep::setAlarmCode(int nAlarmCode) {
-		m_nAlarmCode = nAlarmCode;
-	}
-
-	// 获取和设置 AlarmId
-	int CEqAlarmStep::getAlarmId() const {
-		return m_nAlarmId;
-	}
-
-	void CEqAlarmStep::setAlarmId(int nAlarmId) {
-		m_nAlarmId = nAlarmId;
-	}
-
-	// 获取和设置 Text
-	std::string CEqAlarmStep::getText() const {
-		return m_strText;
-	}
-
-	void CEqAlarmStep::setText(const std::string& strText) {
-		m_strText = strText;
 	}
 
 	int CEqAlarmStep::getAlarmState()
diff --git a/SourceCode/Bond/Servo/Model.cpp b/SourceCode/Bond/Servo/Model.cpp
index 729bf8d..da79320 100644
--- a/SourceCode/Bond/Servo/Model.cpp
+++ b/SourceCode/Bond/Servo/Model.cpp
@@ -126,9 +126,23 @@
 				if (state == 1) {
 					LOGE("<CAlarmDlg> 发生警告");
 					std::string startTime = CToolUnits::timeToString2(CToolUnits::getTimestamp());
-					std::string endTime = "";
-					bool result = alarmManager.addAlarm(std::to_string(pEqAlarmStep->getAlarmId()),
-						pEquipment->getName(), strAlarmText, startTime, endTime);
+					std::string endTime = "2000-01-01 00:00";
+
+					AlarmData alarmData;
+					alarmData.nId = pEqAlarmStep->getAlarmId();
+					alarmData.nSeverityLevel = pEqAlarmStep->getAlarmLevel();
+					alarmData.nDeviceId = pEqAlarmStep->getEquipment()->getID();
+					alarmData.nUnitId = pEqAlarmStep->getUnitId();
+					alarmData.strDeviceName = alarmManager.getDeviceNameById(alarmData.nDeviceId);
+					alarmData.strUnitName = alarmManager.getUnitNameById(alarmData.nDeviceId, alarmData.nUnitId);
+					alarmData.strStartTime = startTime;
+					alarmData.strEndTime = endTime;
+
+					const AlarmInfo* alarmInfo = alarmManager.getAlarmInfoByID(alarmData.nId);
+					alarmData.strDescription = alarmInfo != nullptr ? alarmInfo->strAlarmText : "";
+	
+					int nAlarmEventId = 0;
+					bool result = alarmManager.addAlarm(alarmData, nAlarmEventId);
 					if (result) {
 						LOGI("<CAlarmDlg> Alarm added successfully!");
 					}

--
Gitblit v1.9.3