From d7fbb147a1582e93c3028d8328b2e7eb3736d6e9 Mon Sep 17 00:00:00 2001
From: chenluhua1980 <Chenluhua@qq.com>
Date: 星期四, 08 一月 2026 20:07:42 +0800
Subject: [PATCH] 1.本地控件状态改变后上报EAP
---
SourceCode/Bond/Servo/HsmsPassive.cpp | 49 +++++++++++++++++++++++++++++++++++++------------
1 files changed, 37 insertions(+), 12 deletions(-)
diff --git a/SourceCode/Bond/Servo/HsmsPassive.cpp b/SourceCode/Bond/Servo/HsmsPassive.cpp
index da6e106..93ddb4b 100644
--- a/SourceCode/Bond/Servo/HsmsPassive.cpp
+++ b/SourceCode/Bond/Servo/HsmsPassive.cpp
@@ -110,23 +110,35 @@
ASSERT(pParent);
ASSERT(pVariable);
+ std::string svNote("SV");
+ {
+ SERVO::CVariable* pDef = getVariable((int)pVariable->getVarialbleId());
+ if (pDef == nullptr) {
+ pDef = pVariable;
+ }
+ auto& name = pDef->getName();
+ if (!name.empty()) {
+ svNote += " -> ";
+ svNote += name;
+ }
+ }
ISECS2Item* pItemList;
SERVO::SVFromat format = pVariable->getFormat();
switch (format)
{
case SERVO::SVFromat::U1:
- pParent->addU1Item((unsigned char)pVariable->getIntValue(), "SV");
+ pParent->addU1Item((unsigned char)pVariable->getIntValue(), svNote.c_str());
break;
case SERVO::SVFromat::U2:
- pParent->addU2Item((unsigned char)pVariable->getIntValue(), "SV");
+ pParent->addU2Item((unsigned char)pVariable->getIntValue(), svNote.c_str());
break;
case SERVO::SVFromat::I2:
- pParent->addI2Item((unsigned char)pVariable->getIntValue(), "SV");
+ pParent->addI2Item((unsigned char)pVariable->getIntValue(), svNote.c_str());
break;
case SERVO::SVFromat::A20:
case SERVO::SVFromat::A50:
- pParent->addItem(pVariable->getValue().c_str(), "SV");
+ pParent->addItem(pVariable->getValue().c_str(), svNote.c_str());
break;
case SERVO::SVFromat::L:
pItemList = pParent->addItem();
@@ -1590,7 +1602,8 @@
ASSERT(pMessage);
m_pPassive->sendMessage(pMessage);
- LOGI("<HSMS> [SEND] SysByte=%u sessionId:%d", pMessage->getHeader()->systemBytes, pMessage->getHeader()->sessionId);
+ LOGI("<HSMS>[SEND]SysByte=%u sessionId:%d", pMessage->getHeader()->systemBytes, pMessage->getHeader()->sessionId);
+ LOGI("<HSMS>[SEND]%s", pMessage->toString());
int nRet = WaitForSingleObject(pAction->getEvent(), pAction->getTimeout() * 1000);
if (nRet == WAIT_TIMEOUT) {
@@ -1615,7 +1628,8 @@
ASSERT(pMessage);
m_pPassive->sendMessage(pMessage);
- LOGI("<HSMS> [SEND] SysByte=%u sessionId:%d", pMessage->getHeader()->systemBytes, pMessage->getHeader()->sessionId);
+ LOGI("<HSMS>[SEND]SysByte=%u sessionId:%d", pMessage->getHeader()->systemBytes, pMessage->getHeader()->sessionId);
+ LOGI("<HSMS>[SEND]%s", pMessage->toString());
}
}
@@ -1770,8 +1784,10 @@
goto MYREPLY;
}
if (!pBody->getSubItemU2(0, SVID)) {
- pMessage->getBody()->addU1Item(SVU1, "SV");
- goto MYREPLY;
+ if (!pBody->getSubItemI2(0, (short&)SVID)) {
+ pMessage->getBody()->addU1Item(SVU1, "SV");
+ goto MYREPLY;
+ }
}
SERVO::CVariable* pVariable = getVariable((int)SVID);
@@ -2569,9 +2585,6 @@
pjs.push_back(pj);
}
- ASSERT(m_listener.onPRJobMultiCreate != nullptr);
- int nRet = m_listener.onPRJobMultiCreate(this, pjs);
-
// 鍥炲鎶ユ枃
IMessage* pMessage = NULL;
@@ -2604,6 +2617,10 @@
pMessage->getHeader()->sessionId, pMessage->getHeader()->sType, pMessage->getHeader()->systemBytes);
LOGI("<HSMS>[SEND]%s", pMessage->toString());
HSMS_Destroy1Message(pMessage);
+
+
+ ASSERT(m_listener.onPRJobMultiCreate != nullptr);
+ int nRet = m_listener.onPRJobMultiCreate(this, pjs);
// 閲婃斁鏈夐棶棰�(鏈坊鍔犲埌master)鐨勫唴瀛�
@@ -2670,7 +2687,15 @@
ISECS2Item* pItem = pMessage->getBody();
// pItem->addU2Item(++DATAID, "DATAID"); // 鏍规嵁鍒殑鏃ュ織鏄剧ずDATAID鎭掍负0锛屾墍浠ユ垜浠厛鐓т娇鐢�0
pItem->addU2Item(0, "DATAID");
- pItem->addU4Item(CEID, "CEID");
+ std::string ceidNote("CEID");
+ if (pEvent != nullptr) {
+ auto& name = pEvent->getName();
+ if (!name.empty()) {
+ ceidNote += " -> ";
+ ceidNote += name;
+ }
+ }
+ pItem->addU4Item(CEID, ceidNote.c_str());
ISECS2Item* pItemList1 = pItem->addItem(); // L[n] reports
if (pReport != nullptr) {
ISECS2Item* pItemList2 = pItemList1->addItem();
--
Gitblit v1.9.3