From be01318968aed5e55c511eedc6c1f72a961c3f13 Mon Sep 17 00:00:00 2001
From: LAPTOP-SNT8I5JK\Boounion <Chenluhua@qq.com>
Date: 星期四, 19 六月 2025 14:49:02 +0800
Subject: [PATCH] 1.重新梳理JobDataS的传递和更新;

---
 SourceCode/Bond/Servo/CLoadPort.cpp |   33 +++++++++++++++++----------------
 1 files changed, 17 insertions(+), 16 deletions(-)

diff --git a/SourceCode/Bond/Servo/CLoadPort.cpp b/SourceCode/Bond/Servo/CLoadPort.cpp
index 601a73c..cbae095 100644
--- a/SourceCode/Bond/Servo/CLoadPort.cpp
+++ b/SourceCode/Bond/Servo/CLoadPort.cpp
@@ -22,6 +22,7 @@
 		m_transferMode = TransferMode::AGVMode;
 		m_bEnable = FALSE;
 		m_bAutoChangeEnable = FALSE;
+		m_nNextCassetteSequenceNo = 0;
 	}
 
 	CLoadPort::~CLoadPort()
@@ -485,6 +486,16 @@
 		Unlock();
 
 		return pStep;
+	}
+
+	short CLoadPort::getNextCassetteSequenceNo()
+	{
+		m_nNextCassetteSequenceNo++;
+		if (m_nNextCassetteSequenceNo >= 1000) {
+			m_nNextCassetteSequenceNo = 0;
+		}
+
+		return (m_nIndex + 1) * 1000 + m_nNextCassetteSequenceNo;
 	}
 
 	void CLoadPort::setIndex(unsigned int index)
@@ -1138,13 +1149,8 @@
 	/*
 	 * 生成测试用的玻璃列表
 	 */
-	int CLoadPort::testGenerateGlassList(MaterialsType type, const char* pszPrefix, int startSuffix)
+	int CLoadPort::testGenerateGlassList(MaterialsType type)
 	{
-		static unsigned short nJobSequenceNo = 0;
-		static unsigned short nCassetteSequenceNo = 0;
-		nCassetteSequenceNo++;
-
-
 		// 如果非空就不生成了
 		Lock();
 		if (hasGlass()) {
@@ -1155,21 +1161,16 @@
 
 
 		char szBuffer[64];
-		int suffix = startSuffix;
 		for (int i = 0; i < 1; i++) {
 			if (!m_slot[i].isEnable()) continue;
 
 			CJobDataS js;
-			sprintf_s(szBuffer, "%s%d", pszPrefix, suffix++);
+			js.setCassetteSequenceNo(getNextCassetteSequenceNo());
+			js.setJobSequenceNo(i);
+			sprintf_s(szBuffer, 64, "%05d%05d", js.getCassetteSequenceNo(), js.getJobSequenceNo());
+			js.setGlass1Id(szBuffer);
+			js.setJobType(1);
 			js.setMaterialsType((int)type);
-			js.setCassetteSequenceNo(nCassetteSequenceNo);
-			js.setJobSequenceNo(nJobSequenceNo);
-			if (type == MaterialsType::G1) {
-				js.setGlass1Id(szBuffer);
-			}
-			else if (type == MaterialsType::G2) {
-				js.setGlass2Id(szBuffer);
-			}
 
 			CGlass* pGlass = theApp.m_model.m_glassPool.allocaGlass();
 			pGlass->addPath(m_nID, 0);

--
Gitblit v1.9.3