#ifndef _MODECOUNTDLG_H_ #define _MODECOUNTDLG_H_ #include #include "ui_ModeCountDlg.h" #include "qreportwidget.h" #include "DetectDataDB.h" #include "QThread" #include "countdata.h" #include "waitingdialog.h" #include /*识别数据统计页面*/ class ModeCountDlg : public QWidget { Q_OBJECT public: ModeCountDlg(QWidget *parent = Q_NULLPTR); ~ModeCountDlg(); void setDBPtr(class DetectDataDB *ptr);// void initParam(QMap timetable, QStringList names); protected: Q_SLOT void handleResultsCount(const QString &result, const QMap *p); void CheckDataByDate(QString m_strLast, QString m_endLast); Q_SLOT void SlotEditTime(); Q_SLOT void onProgressForTsk(QVariantMap m_map); Q_SLOT void onCheckButton(); bool onMessageBox(QMessageBox::Icon ntype, QString strTitle, QString strAtl, int onlyOK = 0); bool SaveDataToCSV(QString filePath, QMap &m_mapTable); Q_SLOT void SlotCombox(int index); Q_SLOT void onSaveCSVDone(int ); signals: void operateCount(QVariantMap m_Map); void sgFinish(); private: Ui::ModeCountDlg ui; class QGridLayout *m_GridLayout{ nullptr }; class QVBoxLayout *Hbox{ nullptr }; class QWidget *m_countwidget{ nullptr }; class QReportWidget *reportdlg{ nullptr }; bool m_IsRunCountTsk{ false }; QDateTime m_startDate_Count, m_endDate_Count; QMap m_CountNumber; QMap> m_channels; class DetectDataDB *m_pDb{ nullptr }; QThread m_WorkThreadCount; CountData *m_WorkCount{ nullptr }; WaitingDialog m_Progressdlg; QTime m_startTime, m_endTime; QTime nstartTime; QTime nEndTime; QMap m_Totaltime;//班次时间表 }; #endif