feat:完成报警事件的过滤功能

This commit is contained in:
duanshengchao 2025-10-27 17:43:39 +08:00
parent 8a524a5e0d
commit ea9970230a
2 changed files with 12 additions and 7 deletions

View File

@ -100,15 +100,17 @@ public:
void setMaxRealTimeEvents(int value) {m_maxRealTimeEvents = value;} void setMaxRealTimeEvents(int value) {m_maxRealTimeEvents = value;}
const int getMaxRealTimeEvents() const {return m_maxRealTimeEvents;} const int getMaxRealTimeEvents() const {return m_maxRealTimeEvents;}
void setFilter(const AlarmEventDataFilter& filter); void setFilter(const AlarmEventDataFilter& filter);
void applyFilter();
void refresh(); void refresh();
private: //void setPageSize(int);
private slots:
void onTimeoutSimulateData(); void onTimeoutSimulateData();
void onRealTimeEventReceived(const EventData& event); void onRealTimeEventReceived(const EventData& event);
private: private:
void iniHeaderData(); void iniHeaderData();
void applyFilter();
void updatePaginationInfo(); void updatePaginationInfo();
int findEventDataIndexById(const QString& eventId); int findEventDataIndexById(const QString& eventId);
void updateEventData(int index, const EventData& updatedEvent); void updateEventData(int index, const EventData& updatedEvent);

View File

@ -241,21 +241,24 @@ void AlarmEventDataModel::iniHeaderData()
void AlarmEventDataModel::setFilter(const AlarmEventDataFilter& filter) void AlarmEventDataModel::setFilter(const AlarmEventDataFilter& filter)
{ {
m_currentFilter = filter; m_currentFilter = filter;
refresh();
} }
void AlarmEventDataModel::applyFilter() void AlarmEventDataModel::applyFilter()
{} {
m_filteredEvents.clear();
if(m_allEvents.size() > 0)
m_filteredEvents = m_currentFilter.apply(m_allEvents);
}
void AlarmEventDataModel::refresh() void AlarmEventDataModel::refresh()
{ {
m_allEvents.clear(); m_allEvents.clear();
m_filteredEvents.clear();
//1.通过服务获取当前时间段的所有事件-m_allEvents //1.通过服务获取当前时间段的所有事件-m_allEvents
//2.过滤事件(时间区间作为服务请求参数,其它过滤在本地完成)-m_filteredEvents //2.过滤事件(时间区间作为服务请求参数,其它过滤在本地完成)-m_filteredEvents
if(m_allEvents.size() > 0) applyFilter();
{}
//3.更新页码数据 //3.更新页码数据
updatePaginationInfo(); updatePaginationInfo();
//4.根据页码刷新当前页面数据()-m_displayEvents //4.根据页码刷新当前页面数据()-m_displayEvents