From 405bd36e812c3645e8d9d84700777e2eaeb036ec Mon Sep 17 00:00:00 2001
From: LAPTOP-SNT8I5JK\Boounion <Chenluhua@qq.com>
Date: 星期五, 30 五月 2025 16:18:17 +0800
Subject: [PATCH] Merge branch 'clh'
---
SourceCode/Bond/Servo/CPageGraph2.cpp | 67 +++++++++++----------------------
1 files changed, 23 insertions(+), 44 deletions(-)
diff --git a/SourceCode/Bond/Servo/CPageGraph2.cpp b/SourceCode/Bond/Servo/CPageGraph2.cpp
index f5b19e2..6f06274 100644
--- a/SourceCode/Bond/Servo/CPageGraph2.cpp
+++ b/SourceCode/Bond/Servo/CPageGraph2.cpp
@@ -65,7 +65,7 @@
SERVO::CEquipment* pEquipment = nullptr;
if (pAny->getPtrValue("ptr", (void*&)pEquipment)) {
if (pEquipment != nullptr) {
- m_pEqsGraphWnd->ShowItemIndicator((DWORD_PTR)pEquipment, !pEquipment->isGlassListEmpty());
+ m_pEqsGraphWnd->ShowItemIndicator((DWORD_PTR)pEquipment, pEquipment->hasGlass());
}
}
}
@@ -204,22 +204,29 @@
// 娴嬭瘯
else if (nCmd == ID_EQSGRAPHITEM_TEST1) {
+ BOOL bTestGenerate = FALSE;
SERVO::CEquipment* pEquipment = (SERVO::CEquipment*)pItem->pData;
- if (pEquipment->getID() == EQ_ID_LOADPORT1) {
- ((SERVO::CLoadPort*)pEquipment)->testGenerateGlassList(SERVO::MaterialsType::G1, 10,
+ if (pEquipment->getID() == EQ_ID_LOADPORT1 && !pEquipment->hasGlass()) {
+ ((SERVO::CLoadPort*)pEquipment)->testGenerateGlassList(SERVO::MaterialsType::G1,
"P20250320G1X", 1);
+ bTestGenerate = TRUE;
}
- else if (pEquipment->getID() == EQ_ID_LOADPORT2) {
- ((SERVO::CLoadPort*)pEquipment)->testGenerateGlassList(SERVO::MaterialsType::G2, 10,
+ else if (pEquipment->getID() == EQ_ID_LOADPORT2 && !pEquipment->hasGlass()) {
+ ((SERVO::CLoadPort*)pEquipment)->testGenerateGlassList(SERVO::MaterialsType::G2,
"P20250320G2X", 1);
+ bTestGenerate = TRUE;
}
- SERVO::CGlass* pGlass = pEquipment->getFrontGlass();
- if (pGlass != nullptr) {
- SERVO::CJobDataB* pJobDataB = pGlass->getJobDataB();
- SERVO::CJobDataS* pJobDataS = pGlass->getJobDataS();
- if (pJobDataB != nullptr && pJobDataS != nullptr) {
- pEquipment->fetchedOutJob(pJobDataB);
- pEquipment->onSentOutJob(0, pJobDataS);
+
+ if (!bTestGenerate) {
+ SERVO::CRobotTask* pTask = theApp.m_model.getMaster().getActiveRobotTask();
+ if (pTask != nullptr) {
+ SERVO::CGlass* pGlass = (SERVO::CGlass*)pTask->getContext();
+ SERVO::CJobDataB* pJobDataB = pGlass->getJobDataB();
+ SERVO::CJobDataS* pJobDataS = pGlass->getJobDataS();
+ if (pJobDataB != nullptr && pJobDataS != nullptr) {
+ pEquipment->onFetchedOutJob(0, pJobDataB);
+ pEquipment->onSentOutJob(0, pJobDataS);
+ }
}
}
}
@@ -227,7 +234,7 @@
SERVO::CEquipment* pEquipment = (SERVO::CEquipment*)pItem->pData;
SERVO::CArm* pArm = (SERVO::CArm*)pEquipment->getArm();
if (pArm != nullptr) {
- SERVO::CGlass* pGlass = pArm->getFrontGlass();
+ SERVO::CGlass* pGlass = pArm->getAnyGlass();
if (pGlass != nullptr) {
SERVO::CJobDataB* pJobDataB = pGlass->getJobDataB();
SERVO::CJobDataS* pJobDataS = pGlass->getJobDataS();
@@ -242,7 +249,7 @@
else if (nCmd == ID_EQSGRAPHITEM_TEST3) {
SERVO::CEquipment* pEquipment = (SERVO::CEquipment*)pItem->pData;
if (pEquipment != nullptr) {
- SERVO::CGlass* pGlass = pEquipment->getFrontGlass();
+ SERVO::CGlass* pGlass = pEquipment->getAnyGlass();
if (pGlass != nullptr) {
SERVO::CProcessData pd;
pd.setGlassId(pGlass->getID().c_str());
@@ -252,34 +259,6 @@
}
else if (nCmd == ID_EQSGRAPHITEM_TEST4) {
SERVO::CEquipment* pEquipment = (SERVO::CEquipment*)pItem->pData;
-
- /* 娴嬭瘯 RobotCMD */
- if (pEquipment->getID() == EQ_ID_EFEM) {
- SERVO::CEFEM* pEFEM = (SERVO::CEFEM*)pEquipment;
-
-
-
- SERVO::ROBOT_CMD_PARAM cmds[4];
- cmds[0].sequenceNo = 1;
- cmds[0].rcmd = (short)SERVO::RCMD::Move;
- cmds[0].armNo = 1;
- cmds[0].getPosition = 1;
- cmds[0].putPosition = 2;
- cmds[0].getSlotNo = 3;
- cmds[0].putSlotNo = 4;
- cmds[0].subCmd = 5;
- cmds[1].sequenceNo = 2;
- cmds[1].rcmd = (short)SERVO::RCMD::Transfer;
- cmds[1].armNo = 2;
- cmds[1].getPosition = 6;
- cmds[1].putPosition = 7;
- cmds[1].getSlotNo = 8;
- cmds[1].putSlotNo = 9;
- cmds[1].subCmd = 10;
- pEFEM->robotCmds(cmds, 2);
- }
-
-
// 娴嬭瘯涓嬪彂Cim Message
@@ -344,7 +323,7 @@
/*
- SERVO::CGlass* pGlass = pEquipment->getFrontGlass();
+ SERVO::CGlass* pGlass = pEquipment->getAnyGlass();
if (pGlass != nullptr) {
std::string strDescription;
SERVO::CPath* pPath = pGlass->getPath();
@@ -450,7 +429,7 @@
m_pEqsGraphWnd->AddPin(pItem, OUTPIN, outPin->getName().c_str(), (DWORD_PTR)outPin);
}
- m_pEqsGraphWnd->ShowItemIndicator((DWORD_PTR)pEquipment, !pEquipment->isGlassListEmpty());
+ m_pEqsGraphWnd->ShowItemIndicator((DWORD_PTR)pEquipment, pEquipment->hasGlass());
}
void CPageGraph2::OnTimer(UINT_PTR nIDEvent)
--
Gitblit v1.9.3