maindlg.h 3.2 KB

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