fix:修复”空事件“时间戳默认值不确定造成的后续实际事件排序错乱问题

This commit is contained in:
duanshengchao 2025-11-12 16:30:17 +08:00
parent a37988428c
commit 728e7c7383
1 changed files with 5 additions and 1 deletions

View File

@ -20,6 +20,7 @@ AlarmEventDataModel::AlarmEventDataModel(AlarmDataMode mode, QObject* parent)
{ {
EventData event; EventData event;
event.id = ""; //空事件 event.id = ""; //空事件
event.timestamp = 0; //给一个初始值,后续的实际事件会根据时间排名,不给初始值的话这个时间值不确定
m_displayEvents.append(event); m_displayEvents.append(event);
} }
} }
@ -189,7 +190,7 @@ void AlarmEventDataModel::iniHeaderData()
void AlarmEventDataModel::setMaxRealTimeEvents(int count) void AlarmEventDataModel::setMaxRealTimeEvents(int count)
{ {
if(m_dataMode == Historical) //实时列表初始化表格 if(m_dataMode == RealTime) //实时列表初始化表格
{ {
if(m_maxRealTimeEvents == count) if(m_maxRealTimeEvents == count)
return; return;
@ -338,10 +339,13 @@ void AlarmEventDataModel::onRealTimeEventReceived(const EventData& event)
int insertPosition = 0; int insertPosition = 0;
for(; insertPosition < m_displayEvents.size(); ++insertPosition) for(; insertPosition < m_displayEvents.size(); ++insertPosition)
{ {
qDebug() << "event.timestamp: " << event.timestamp << " m_displayEvents.at(n): " << m_displayEvents.at(insertPosition).timestamp;
if(event.timestamp > m_displayEvents.at(insertPosition).timestamp) if(event.timestamp > m_displayEvents.at(insertPosition).timestamp)
break; break;
} }
qDebug() << insertPosition;
if(insertPosition < m_displayEvents.size()) if(insertPosition < m_displayEvents.size())
m_displayEvents.insert(insertPosition, event); m_displayEvents.insert(insertPosition, event);
else else