numbercheck.h 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. #ifndef NUMBERCHECK_H
  2. #define NUMBERCHECK_H
  3. #include <QtCore>
  4. #include <QThread>
  5. #include "numberlistmodel.h"
  6. #include "WSNumChk_global.h"
  7. enum NumberCheckMethod
  8. {
  9. JustForeCast = 0,
  10. JustSubmit = 1,
  11. SubmitByPack = 2
  12. };
  13. class WSNUMCHKSHARED_EXPORT NumberCheck : public QThread
  14. {
  15. Q_OBJECT
  16. public:
  17. explicit NumberCheck(QString fileName,QString fileType,QString submitWay,QString memo,NumberCheckMethod method,
  18. QString host,QString port,QString userHash);
  19. ~NumberCheck();
  20. bool submitOK;
  21. bool forecastOK;
  22. signals:
  23. void msgUpdated(QString msg,QString name);
  24. void chkFinished();
  25. void numberCountChecked(int count);
  26. public slots:
  27. protected:
  28. void run();
  29. private:
  30. bool preChkFile();
  31. bool chkFileInfo();
  32. bool chkNumCount();
  33. bool chkFee();
  34. bool chkFcFee();
  35. void forecast();
  36. QString createSegData(int len);
  37. void submit();
  38. void submitPack();
  39. int extractSegmentFromTxtFile(QString fileName);
  40. QMap<int,int> extractTxtFileFromZip(QString zipFile);
  41. QMap<int,int> extractNumberFromTxtFile(QStringList fileNames);
  42. QString zipTxtFile(QString fileName);
  43. private:
  44. QString fileName;
  45. QString zipFileName;
  46. QString fileType;
  47. QString submitWay;
  48. QString memo;
  49. NumberCheckMethod method;
  50. QString host;
  51. QString port;
  52. QString userHash;
  53. QStringList segments;
  54. //QVariantList numbers;
  55. QList<QStringList> numbers;
  56. bool isSegment;
  57. int numCount;
  58. NumberListModel model;
  59. };
  60. #endif // NUMBERCHECK_H