#ifndef CEVENTHISTHREAD_H #define CEVENTHISTHREAD_H #include #include "dbms/rdb_api/CRdbAccess.h" #include "CEventMsgInfo.h" #include "db_api_ex/CDbApi.h" #include class CEventHisThread : public QObject { Q_OBJECT public: explicit CEventHisThread(QObject *parent = nullptr); ~CEventHisThread(); void init(); private: int queryPriorityOrder(int &id); void condition(QList &showEventList,QList &listEvents); bool conditionFilter(const EventMsgPtr info); QString buildCondition(); QString buildLocAndRegion(); QString buildConditionPartPriority(); QString buildConditionPartStatus(); QString buildConditionPartLocation(); QString buildConditionPartRegion(); QString buildConditionPartDeviceType(); QString buildConditionPartContent(); public slots: void doWork(ST_FILTER stFilter); void doReturnFilterEnable(); void doReturnFilterDisenable(); void search(const QString &sql, QList &eventList); signals: void sigUpdateHisEvent(QList eventSet); private: iot_dbms::CDbApi * m_pReadDb; iot_dbms::CRdbAccess * m_rtdbPriorityOrderAccess; ST_FILTER m_stFilter; }; #endif // CEVENTHISTHREAD_H