From ceb64b6612309fe384e096dcdc8b5a5e0dfe6cce Mon Sep 17 00:00:00 2001
From: chenluhua1980 <Chenluhua@qq.com>
Date: 星期五, 30 一月 2026 15:08:47 +0800
Subject: [PATCH] 1.增加日志,监控Efem的请求JobData事件;

---
 SourceCode/Bond/Servo/ProcessJob.cpp |   74 +++++++++++++++++++++++++++++++++++--
 1 files changed, 70 insertions(+), 4 deletions(-)

diff --git a/SourceCode/Bond/Servo/ProcessJob.cpp b/SourceCode/Bond/Servo/ProcessJob.cpp
index a95d78e..eb92df5 100644
--- a/SourceCode/Bond/Servo/ProcessJob.cpp
+++ b/SourceCode/Bond/Servo/ProcessJob.cpp
@@ -75,6 +75,11 @@
         return m_issues;
     }
 
+    void CProcessJob::addIssue(uint32_t code, const std::string& msg)
+    {
+        m_issues.push_back({ code, msg });
+    }
+
     bool CProcessJob::validate(const IResourceView& rv)
     {
         m_issues.clear();
@@ -83,10 +88,6 @@
         auto add = [&](uint32_t code, std::string msg) {
             m_issues.push_back({ code, std::move(msg) });
         };
-
-        if (!rv.isProcessJobsEmpty()) {
-            add(1000, "ProcessJobs Conflict!");
-        }
 
         // —— 基本 / 标识 ——
         if (m_pjId.empty())            add(1001, "PJID empty");
@@ -277,6 +278,31 @@
         }
     }
 
+    bool CProcessJob::setCarrierSlotsAndContexts(std::string carrierId, std::vector<uint8_t> slots, std::vector<void*> contexts)
+    {
+        for (auto& c : m_carriers) {
+            if (c.carrierId.compare(carrierId) == 0) {
+                c.slots = std::move(slots);
+                c.contexts = std::move(contexts);
+                return true;
+            }
+        }
+
+        return false;
+    }
+
+    bool CProcessJob::setCarrierContexts(std::string carrierId, std::vector<void*> contexts)
+    {
+        for (auto& c : m_carriers) {
+            if (c.carrierId.compare(carrierId) == 0) {
+                c.contexts = std::move(contexts);
+                return true;
+            }
+        }
+
+        return false;
+    }
+
     // --------- 核心:serialize/deserialize ---------
     void CProcessJob::serialize(std::ostream& os) const {
         // 头
@@ -441,4 +467,44 @@
 
         return nullptr;
     }
+
+    void CProcessJob::setLotId(std::string strLotId)
+    {
+        m_strLotId = strLotId;
+    }
+
+    std::string& CProcessJob::getLotId()
+    {
+        return m_strLotId;
+    }
+
+    void CProcessJob::setProductId(std::string strProductId)
+    {
+        m_strProductId = strProductId;
+    }
+
+    std::string& CProcessJob::getProductId()
+    {
+        return m_strProductId;
+    }
+
+    void CProcessJob::setOperationId(std::string strOperationId)
+    {
+        m_strOperationId = strOperationId;
+    }
+
+    std::string& CProcessJob::getOperationId()
+    {
+        return m_strOperationId;
+    }
+
+    void CProcessJob::setPjWarp(PJWarp pjWarp)
+    {
+        m_pjWarp = pjWarp;
+    }
+
+    PJWarp& CProcessJob::getPjWarp()
+    {
+        return m_pjWarp;
+    }
 }

--
Gitblit v1.9.3