From 1fac536ec86ccda881c75d751224d353f72234ee Mon Sep 17 00:00:00 2001
From: chenluhua1980 <Chenluhua@qq.com>
Date: 星期四, 12 二月 2026 09:38:08 +0800
Subject: [PATCH] 1.手动测试支持,PJ创建,支持多Port
---
SourceCode/Bond/Servo/PortConfigurationDlg.cpp | 17 +++++++++++++++++
1 files changed, 17 insertions(+), 0 deletions(-)
diff --git a/SourceCode/Bond/Servo/PortConfigurationDlg.cpp b/SourceCode/Bond/Servo/PortConfigurationDlg.cpp
index 5b21fda..e8e197d 100644
--- a/SourceCode/Bond/Servo/PortConfigurationDlg.cpp
+++ b/SourceCode/Bond/Servo/PortConfigurationDlg.cpp
@@ -484,6 +484,23 @@
slotProcess = jobExistence[0];
}
+ bool hasExistence = false;
+ for (short w : jobExistence) {
+ if (w != 0) { hasExistence = true; break; }
+ }
+ const int portStatus = pPort->getPortStatus();
+ if (!hasExistence) {
+ LOGE("ProcessStart blocked: no JobExistence map (port=%d, portStatus=%d, scanMap=%d, cassetteId=%s).",
+ selPort + 1, portStatus, scanMap, pPort->getCassetteId().c_str());
+ return;
+ }
+ if (portStatus != PORT_INUSE) {
+ LOGW("ProcessStart warning: port status is %d (expected INUSE).", portStatus);
+ }
+ LOGI("ProcessStart payload: port=%d, cassetteId=%s, scanMap=%d, jobExistence0=%d, jobExistence1=%d, slotProcess=%d, anyScheduled=%d",
+ selPort + 1, pPort->getCassetteId().c_str(), scanMap,
+ (int)jobExistence[0], (int)jobExistence[1], (int)slotProcess, anyScheduled ? 1 : 0);
+
int ret = pPort->sendCassetteCtrlCmd(cmd, jobExistence, 12, slotProcess, jobCount, nullptr,
[selPort](int code) -> int {
if (code == WOK) {
--
Gitblit v1.9.3