maindlg.h 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. #ifndef MAINDLG_H
  2. #define MAINDLG_H
  3. #include <QMainWindow>
  4. #include "includes.h"
  5. #include "uart.h"
  6. #include "ps.h"
  7. #include "oambaseparam.h"
  8. #include "oamconfigparam.h"
  9. #include "oaminstallparam.h"
  10. #include "oamnetworkparam.h"
  11. #include "oamsyncparam.h"
  12. #include "oamupgrade.h"
  13. #include "oambtsparam.h"
  14. #include "sysconfig.h"
  15. #include "httpreq.h"
  16. #define MAINDLG_DEFAULT_PACKET_NO -100
  17. QT_BEGIN_NAMESPACE
  18. namespace Ui {
  19. class MainDlg;
  20. }
  21. QT_END_NAMESPACE
  22. class MainDlg : public QMainWindow
  23. {
  24. Q_OBJECT
  25. public:
  26. MainDlg(QWidget *parent = nullptr);
  27. ~MainDlg();
  28. HttpReq *m_pHttpReq;
  29. int m_dwDeviceType;
  30. int m_dwTabIndex;
  31. void setProjectId(quint32 dwProjectId);
  32. quint32 getPorjectId();
  33. void mainDlgSetBtsId(quint32 dwBtsId);
  34. int getDeviceType();//查询设备类型
  35. void stopUpgradeTimer();
  36. void configHttpReq();
  37. private:
  38. Ui::MainDlg *ui;
  39. QTimer *m_pTimer;
  40. QTimer *m_pUpgradeTimer;
  41. qint8 m_byPacketNo;
  42. quint8 m_abyTmpData[PS_FRAME_MAX_LEN];
  43. Uart *m_pUart;//串口对象
  44. Ps *m_objPs;//协议栈对象
  45. sysconfig *m_pSysConfig;//系统参数类对象
  46. quint32 m_dwProjectId;//项目编号
  47. quint32 m_dwBtsId;//基站ID
  48. quint8 m_byHttpReqConfigOk;//网络模块配置OK
  49. OamBaseParam *m_pOamBaseParam;
  50. OamConfigParam *m_pOamConfigParam;
  51. OamInstallParam *m_pOamInstallParam;
  52. OamNetworkParam *m_pOamNetworkParam;
  53. OamSyncParam *m_pOamSyncParam;
  54. OamUpgrade *m_pOamUpgrade;//升级对话框
  55. OamBtsParam *m_pOamBtsParam;//基站标识
  56. //私有成员函数
  57. void closeEvent(QCloseEvent *event);
  58. void Init();
  59. void initUi();
  60. void configSignalAndSlot();
  61. void getUartNameList();
  62. void openUart();
  63. void closeUart();
  64. qint64 sendDataToUart(QByteArray dataList);
  65. signals:
  66. void signalNoticeUpgradeOk(quint16 wTag);//升级OK信号
  67. void signalNoticeUpgradeFail();//升级失败信号
  68. void signalNoticeUpgradeTimeout();//升级超时
  69. public slots:
  70. void slotDeviceTypeChanged(int index);
  71. void slotTabSwitch(int index);
  72. void slotReceiveDataFromUart(QByteArray dataList, quint16 wLen);
  73. void slotOamSendQueryMsg(quint8 *pbyData, quint16 wLen);//发送查询报文
  74. void slotOamSendConfigMsg(quint8 *pbyData, quint16 wLen, quint16 wCmd);//发送配置报文
  75. void slotOamSendUpgradeMsg(quint8 *pbyData, quint8 byCmdType, quint16 dataLen);//发送升级报文
  76. void slotUploadBtsBaseParamAdd(QString strApi, QJsonObject jsonObject);//上传基站基本参数-增加
  77. void slotUploadBtsBaseParamUpdate(QString strApi, QJsonObject jsonObject);//发送上传基站参数
  78. void PsUlRespSignaQueryOkSlot(quint8 *pbyData, quint16 wLen);//协议栈上行查询响应成功信号槽函数
  79. void PsUlRespSignaQueryFailSlot();//协议栈上行查询响应失败信号槽函数
  80. void PsUlRespSignalConfigOkSlot(quint8 *pbyData, quint16 wLen);
  81. void PsUlRespSignalConfigFailSlot();
  82. void Timeout2000Slot();
  83. void Timeout5000Slot();
  84. void PsUlRespSignalUpgradeOkSlot(quint8 *pbyData);
  85. void PsUlRespSignalUpgradeFailSlot();
  86. void slotUpgradeRestart();
  87. };
  88. #endif // MAINDLG_H