detinfopage.h 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  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. #include "../loadingdialog.h"
  20. namespace Ui {
  21. class DetInfoPage;
  22. }
  23. class DetInfoPage : public QWidget
  24. {
  25. Q_OBJECT
  26. public:
  27. explicit DetInfoPage(QWidget *parent = nullptr);
  28. ~DetInfoPage();
  29. void insertDet(const QJsonDocument &jsonDoc);
  30. private slots:
  31. void on_pushButton_clicked();
  32. private:
  33. void loadAndRefreshData();
  34. void PageChanged(int page);
  35. void onComboBoxIndexChanged(int index);
  36. void dataTable(const QJsonDocument &jsonDoc);
  37. void loadDataFromSource(int currentPage, int pageSize, const QString& equipmentSn="");
  38. QList<QStandardItem *> jsonToItem(const QJsonObject &jsonObj);
  39. void parseJsonString(const QJsonDocument &jsonDoc);
  40. private:
  41. Ui::DetInfoPage *ui;
  42. DetDialog *dialog;
  43. PageWidget *m_pPageWidget;
  44. int pageSize; //每页显示的记录数量
  45. int currentPage; //当前页面
  46. int totalCount;
  47. QString *equipmentSn;
  48. HttpClient *m_httpClient;
  49. QStandardItemModel *model;
  50. QJsonArray dataArray;
  51. QLabel *loadingLabel; // 用于显示加载图片的标签
  52. LoadingDialog *loadingDialog; // 新增成员变量
  53. QPoint lastPos;
  54. };
  55. #endif // DETINFOPAGE_H