detinfopage.h 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. #ifndef DETINFOPAGE_H
  2. #define DETINFOPAGE_H
  3. #include <QWidget>
  4. #include <QNetworkAccessManager>
  5. #include <QNetworkRequest>
  6. #include <QNetworkReply>
  7. #include <QUrlQuery>
  8. #include <QEventLoop>
  9. #include <QStandardItemModel>
  10. #include <QJsonArray>
  11. #include <QJsonObject>
  12. #include <QJsonDocument>
  13. #include <QLabel>
  14. #include <QMoveEvent>
  15. #include "detdialog.h"
  16. #include "../global.h"
  17. #include "../PageWidget.h"
  18. #include "../HttpClient.h"
  19. namespace Ui {
  20. class DetInfoPage;
  21. }
  22. class DetInfoPage : public QWidget
  23. {
  24. Q_OBJECT
  25. public:
  26. explicit DetInfoPage(QWidget *parent = nullptr);
  27. ~DetInfoPage();
  28. void insertDet(const QJsonDocument &jsonDoc);
  29. private slots:
  30. void on_pushButton_clicked();
  31. private:
  32. void loadAndRefreshData();
  33. void PageChanged(int page);
  34. void onComboBoxIndexChanged(int index);
  35. void dataTable(const QJsonDocument &jsonDoc);
  36. void loadDataFromSource(int currentPage, int pageSize, const QString& equipmentSn="");
  37. QList<QStandardItem *> jsonToItem(const QJsonObject &jsonObj);
  38. void parseJsonString(const QJsonDocument &jsonDoc);
  39. private:
  40. Ui::DetInfoPage *ui;
  41. DetDialog *dialog;
  42. PageWidget *m_pPageWidget;
  43. int pageSize; //每页显示的记录数量
  44. int currentPage; //当前页面
  45. int totalCount;
  46. QString *equipmentSn;
  47. HttpClient *m_httpClient;
  48. QStandardItemModel *model;
  49. QJsonArray dataArray;
  50. QLabel *loadingLabel; // 用于显示加载图片的标签
  51. QPoint lastPos;
  52. };
  53. #endif // DETINFOPAGE_H