autosyncdata.h 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. #ifndef AUTOSYNCDATA_H
  2. #define AUTOSYNCDATA_H
  3. #include <QThread>
  4. #include <QtCore>
  5. #include "wscube.h"
  6. #include "wsnumchk.h"
  7. class AutoSyncData : public QThread
  8. {
  9. Q_OBJECT
  10. public:
  11. explicit AutoSyncData();
  12. ~AutoSyncData();
  13. void abort();
  14. void setSkip(bool skip);
  15. public slots:
  16. void setAccountInfo(QMap<QString,QString> accountInfo);
  17. protected:
  18. void run();
  19. signals:
  20. void dataSync();
  21. private:
  22. void sync();
  23. bool checkSynCondition();
  24. QString dlSegRecInfo(); //下载号段推荐信息,保存成zip文件
  25. bool updateSegRecInfo(); //根据文本文件更新数据库中的号段推荐信息
  26. QString dlSegDynamicInfoByAreaCode(QString areacode); //根据区号信息,下载号段动态信息
  27. bool updateSegDynamicInfoByAreaCode(QString areacode); //根据区号信息,更新数据库中的号段动态信息
  28. QString dlSegDynamicInfoBySeg(QString seg); //根据区号信息,下载号段动态信息
  29. bool updateSegDynamicInfoBySeg(QString seg); //根据区号信息,更新数据库中的号段动态信息
  30. QString extractZipFile(QString zipFile); //负责解压缩文件
  31. public slots:
  32. private:
  33. QMap<QString,QString> m_account;
  34. QString m_clientID;
  35. QString m_moduleID;
  36. int m_errCode;
  37. QString m_errMsg;
  38. QString m_errDetail;
  39. bool m_stop;
  40. bool m_first;
  41. bool m_skip;
  42. WSCube *m_cubeWs;
  43. WSNumChk *m_numchk;
  44. };
  45. #endif // AUTOSYNCDATA_H