From 166fa1cb727d6fe6962bbd2b5c4a0c9da6088048 Mon Sep 17 00:00:00 2001
From: LAPTOP-SNT8I5JK\Boounion <Chenluhua@qq.com>
Date: 星期三, 30 七月 2025 14:50:03 +0800
Subject: [PATCH] 1.获取配方后自动刷新列表; 2.HsmsAction序列化和反序列化,将来用于缓存上报的数据;

---
 SourceCode/Bond/Servo/Model.cpp |   24 ++++++++++++++++++++++--
 1 files changed, 22 insertions(+), 2 deletions(-)

diff --git a/SourceCode/Bond/Servo/Model.cpp b/SourceCode/Bond/Servo/Model.cpp
index 666e54c..3427f45 100644
--- a/SourceCode/Bond/Servo/Model.cpp
+++ b/SourceCode/Bond/Servo/Model.cpp
@@ -52,6 +52,18 @@
 	}
 }
 
+void CModel::setPortCassetteType(unsigned int index, SERVO::CassetteType type)
+{
+	m_master.setPortCassetteType(index, type);
+	m_configuration.setPortCassetteType(index, (int)type);
+}
+
+void CModel::setPortEnable(unsigned int index, BOOL bEnable)
+{
+	m_master.setPortEnable(index, bEnable);
+	m_configuration.setPortEnable(index, bEnable);
+}
+
 int CModel::init()
 {
 	CString strIniFile;
@@ -130,8 +142,12 @@
 	m_hsmsPassive.setSoftRev((LPTSTR)(LPCTSTR)strSoftRev);
 	CString strVarialbleFile;
 	strVarialbleFile.Format(_T("%s\\VariableList.txt"), (LPTSTR)(LPCTSTR)m_strWorkDir);
-	m_hsmsPassive.loadVarialbleList((LPTSTR)(LPCTSTR)strVarialbleFile);
+	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);
 
 
 	SERVO::MasterListener masterListener;
@@ -295,6 +311,10 @@
 		notifyPtrAndInt(RX_CODE_EQ_ROBOT_TASK, pTask, nullptr, code);
 
 	};
+	masterListener.onLoadPortStatusChanged = [&] (void* pMaster, SERVO::CEquipment* pEquipment, short status, __int64 data) {
+		LOGE("<CModel>onLoadPortStatusChanged. status = %d", status);
+		notifyPtr(RX_CODE_LOADPORT_STATUS_CHANGED, pEquipment);
+	};
 	m_master.setListener(masterListener);
 
 
@@ -302,7 +322,7 @@
 	CString strMasterDataFile;
 	strMasterDataFile.Format(_T("%s\\Master.dat"), (LPTSTR)(LPCTSTR)m_strWorkDir);
 	m_master.setCacheFilepath((LPTSTR)(LPCTSTR)strMasterDataFile);
-
+	m_master.setCompareMapsBeforeProceeding(m_configuration.isCompareMapsBeforeProceeding());
 
 	// 加载警告信息
 	AlarmManager& alarmManager = AlarmManager::getInstance();

--
Gitblit v1.9.3