From bdf0dc4cb183d3fec40e1d51b3bb94b7e53d0a55 Mon Sep 17 00:00:00 2001
From: chenluhua1980 <Chenluhua@qq.com>
Date: 星期日, 04 一月 2026 10:45:07 +0800
Subject: [PATCH] 1.修复报文字段差异风险: S1F3:项目用 getSubItemU4(0) 取 SVID;日志里有 U2 的情况,可能导致解析失败后回退成 SV=0。 S6F11:项目发送 DATAID(U4) + CEID(U4);日志样例里第一个字段是 U2,可能存在类型/字段定义不一致。

---
 SourceCode/Bond/Servo/CLoadPort.h |   15 +++++++++++++--
 1 files changed, 13 insertions(+), 2 deletions(-)

diff --git a/SourceCode/Bond/Servo/CLoadPort.h b/SourceCode/Bond/Servo/CLoadPort.h
index daf5516..91101d2 100644
--- a/SourceCode/Bond/Servo/CLoadPort.h
+++ b/SourceCode/Bond/Servo/CLoadPort.h
@@ -1,4 +1,4 @@
-#pragma once
+锘�#pragma once
 #include "CEquipment.h"
 #include "ServoCommo.h"
 
@@ -37,9 +37,14 @@
 		void localSetCessetteType(CassetteType type);
 		void localSetTransferMode(TransferMode mode);
 		void localAutoChangeEnable(BOOL bEnable);
+		short getScanCassetteMap();
+		short getDownloadCassetteMap();
+		void setDownloadCassetteMap(short map);
 
 	public:
 		short getNextCassetteSequenceNo();
+		int getPortCassetteSnSeed();
+		void setPortCassetteSnSeed(int seed);
 		void setIndex(unsigned int index);
 		unsigned int getIndex();
 		BOOL isEnable();
@@ -56,6 +61,7 @@
 		int getCassetteMappingState();
 		int getCassetteStatus();
 		int testGenerateGlassList(MaterialsType type);
+		int generateGlassList(short map);
 		int testGenerateGlassListFromConfig(const SERVO::PortConfig& config);
 
 	public:
@@ -79,6 +85,8 @@
 			CJobDataA* pJobDataA,
 			ONWRITED onWritedBlock);
 		CStep* getCassetteCtrlCmdStep();
+		void setCompareMapsBeforeProceeding(BOOL bCompare);
+		BOOL isCompareMapsBeforeProceeding() const;
 
 	private:
 		int decodePortStatusReport(CStep* pStep, const char* pszData, size_t size);
@@ -93,6 +101,9 @@
 		BOOL m_bAutoChangeEnable;
 		CPortStatusReport m_portStatusReport;
 		int m_nNextCassetteSequenceNo;
+
+		// 鍦ㄥ紑濮嬪伐鑹哄墠鏄惁鍏堥渶瑕佸厛姣旇緝map
+		BOOL m_isCompareMapsBeforeProceeding;
+		short m_downloadCassetteMap;
 	};
 }
-

--
Gitblit v1.9.3