equipmentpage.h 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. #ifndef EQUIPMENTPAGE_H
  2. #define EQUIPMENTPAGE_H
  3. #include <QJsonArray>
  4. #include <QJsonDocument>
  5. #include <QJsonObject>
  6. #include <QStandardItemModel>
  7. #include <QWidget>
  8. #include "../HttpClient.h"
  9. #include "../PageWidget.h"
  10. #include "../buttondelegate.h"
  11. namespace Ui {
  12. class EquipmentPage;
  13. }
  14. class EquipmentPage : public QWidget {
  15. Q_OBJECT
  16. public:
  17. explicit EquipmentPage(QWidget *parent = nullptr);
  18. ~EquipmentPage();
  19. private slots:
  20. void on_btnSearch_clicked();
  21. private:
  22. void parseJsonString(const QJsonDocument &jsonDoc);
  23. void dataTable(const QJsonDocument &jsonDoc);
  24. void loadAndRefreshData();
  25. void loadDataFromSource(int currentPage, int pageSize, const QString &equipmentSn = "");
  26. void PageChanged(int page);
  27. void onComboBoxIndexChanged(int index);
  28. QList<QStandardItem *> jsonToItem(const QJsonObject &jsonObj);
  29. private:
  30. Ui::EquipmentPage *ui;
  31. PageWidget *m_pPageWidget;
  32. int pageSize; // 每页显示的记录数量
  33. int currentPage; // 当前页面
  34. int totalCount;
  35. QString *equipmentSn;
  36. HttpClient *m_httpClient;
  37. QStandardItemModel *model;
  38. QJsonArray dataArray;
  39. };
  40. #endif // EQUIPMENTPAGE_H