formwool.cpp 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214
  1. #include "formwool.h"
  2. #include "ui_formwool.h"
  3. #include "sncdatabase.h"
  4. #include "respgetsysparam.h"
  5. FormWool::FormWool(QWidget *parent) :
  6. QWidget(parent),
  7. ui(new Ui::FormWool)
  8. {
  9. qDebug()<<QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss")\
  10. <<"FormWool Creating.";
  11. ui->setupUi(this);
  12. initVariables();
  13. initUI();
  14. qDebug()<<QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss")\
  15. <<"FormWool Created.";
  16. }
  17. FormWool::~FormWool()
  18. {
  19. stopService();
  20. delete m_timerTask;
  21. delete m_upload;
  22. delete m_sync;
  23. delete m_formDealing;
  24. delete m_formAd;
  25. delete m_formCharge;
  26. delete m_formFee;
  27. delete m_formUpload;
  28. delete ui;
  29. qDebug()<<QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss")\
  30. <<"FormWool Destroyed.";
  31. }
  32. void FormWool::initVariables()
  33. {
  34. m_timerTask = new QTimer();
  35. // m_timerHeartBeat = new QTimer();
  36. // m_login = new AutoLogin();
  37. m_upload = new AutoUploadFile();
  38. m_sync = new AutoSyncData();
  39. m_formDealing = new FormWoolDealing();
  40. m_formAd = new FormAd();
  41. m_formAccount = new FormAccountInfo();
  42. m_formFinished = new FormWoolFinished();
  43. m_formFee = new FormWoolFee();
  44. m_formCharge = new FormWoolCharge();
  45. m_formUpload = new FormWoolUpload();
  46. connect(m_timerTask,SIGNAL(timeout()),this,SLOT(onTimeOutTask()));
  47. // connect(m_timerHeartBeat,SIGNAL(timeout()),this,SLOT(onTimeOutHeartBeat()));
  48. connect(m_upload,SIGNAL(uploadFailed()),m_formUpload,SLOT(onDataUpdated()));
  49. connect(m_upload,SIGNAL(uploadSucceed()),m_formUpload,SLOT(onDataUpdated()));
  50. connect(m_upload,SIGNAL(uploadProgressUpdated()),m_formUpload,SLOT(onDataUpdated()));
  51. connect(m_upload,SIGNAL(uploadSucceed()),m_formAccount,SLOT(onDataUpdated()));
  52. connect(m_sync,SIGNAL(dataSync()),m_formDealing,SLOT(onDataUpdated()));
  53. connect(m_sync,SIGNAL(dataSync()),m_formFinished,SLOT(onDataUpdated()));
  54. connect(m_sync,SIGNAL(dataSync()),m_formUpload,SLOT(onDataUpdated()));
  55. // connect(m_login,SIGNAL(loginFinished(QMap<QString,QString>)),m_formDealing,SLOT(setAccountInfo(QMap<QString,QString>)));
  56. // connect(m_login,SIGNAL(loginFinished(QMap<QString,QString>)),m_formUpload,SLOT(setAccountInfo(QMap<QString,QString>)));
  57. // connect(m_login,SIGNAL(loginFinished(QMap<QString,QString>)),m_upload,SLOT(setAccountInfo(QMap<QString,QString>)));
  58. // connect(m_login,SIGNAL(loginFinished(QMap<QString,QString>)),m_formAd,SLOT(setAccountInfo(QMap<QString,QString>)));
  59. // connect(m_login,SIGNAL(loginFinished(QMap<QString,QString>)),m_formAccount,SLOT(setAccountInfo(QMap<QString,QString>)));
  60. // connect(m_login,SIGNAL(loginFinished(QMap<QString,QString>)),m_formFinished,SLOT(setAccountInfo(QMap<QString,QString>)));
  61. // connect(m_login,SIGNAL(loginFinished(QMap<QString,QString>)),m_formCharge,SLOT(setAccountInfo(QMap<QString,QString>)));
  62. // connect(m_login,SIGNAL(loginFinished(QMap<QString,QString>)),m_formFee,SLOT(setAccountInfo(QMap<QString,QString>)));
  63. // connect(m_login,SIGNAL(loginFinished(QMap<QString,QString>)),m_upload,SLOT(setAccountInfo(QMap<QString,QString>)));
  64. // connect(m_login,SIGNAL(loginFinished(QMap<QString,QString>)),m_sync,SLOT(setAccountInfo(QMap<QString,QString>)));
  65. // connect(m_login,SIGNAL(loginFinished(QMap<QString,QString>)),m_heartbeat,SLOT(setAccountInfo(QMap<QString,QString>)));
  66. // connect(m_login,SIGNAL(loginFinished(QMap<QString,QString>)),this,SLOT(onLoginFinished(QMap<QString,QString>)));
  67. connect(m_formAccount,SIGNAL(buttonLoginClick()),this,SIGNAL(buttonLoginClick()));
  68. connect(m_formAccount,SIGNAL(blanceIn()),m_formDealing,SLOT(onBalanceIn()));
  69. connect(m_formAccount,SIGNAL(blanceOut()),m_formDealing,SLOT(onBalanceOut()));
  70. }
  71. void FormWool::initUI()
  72. {
  73. ui->verticalLayoutAd->addWidget(m_formAd);
  74. ui->horizontalLayoutAccount->addWidget(m_formAccount);
  75. ui->verticalLayoutUpload->addWidget(m_formUpload);
  76. ui->verticalLayoutUpload->addWidget(m_formDealing);
  77. ui->verticalLayoutFinished->addWidget(m_formFinished);
  78. ui->verticalLayoutCharge->addWidget(m_formCharge);
  79. ui->verticalLayoutFee->addWidget(m_formFee);
  80. }
  81. void FormWool::setAccountInfo(QMap<QString, QString> info)
  82. {
  83. if(!info.value("ssohash").isEmpty())
  84. {
  85. m_account = info;
  86. // stopService();
  87. m_upload->setAccountInfo(info);
  88. m_sync->setAccountInfo(info);
  89. m_formDealing->setAccountInfo(info);
  90. m_formUpload->setAccountInfo(info);
  91. m_formFinished->setAccountInfo(info);
  92. m_formAccount->setAccountInfo(info);
  93. m_formAd->setAccountInfo(info);
  94. m_formCharge->setAccountInfo(info);
  95. m_formFee->setAccountInfo(info);
  96. // m_heartbeat->setAccountInfo(info);
  97. if(!m_timerTask->isActive())
  98. {
  99. int interval = 5;
  100. m_timerTask->start(interval*1000);
  101. }
  102. }
  103. else
  104. {/*
  105. m_login->setAccountInfo(info);
  106. if(!m_login->isRunning())
  107. {
  108. m_login->start();
  109. }*/
  110. }
  111. }
  112. void FormWool::onSyncPause()
  113. {
  114. m_sync->setSkip(true);
  115. m_upload->setSkip(true);
  116. // m_login->setSkip(true);
  117. }
  118. void FormWool::onSyncResume()
  119. {
  120. m_sync->setSkip(false);
  121. m_upload->setSkip(false);
  122. // m_login->setSkip(false);
  123. }
  124. void FormWool::stopService()
  125. {
  126. if(m_timerTask)
  127. {
  128. m_timerTask->stop();
  129. }
  130. // if(m_timerHeartBeat)
  131. // {
  132. // m_timerHeartBeat->stop();
  133. // }
  134. if(m_sync)
  135. {
  136. m_sync->abort();
  137. m_sync->wait();
  138. }
  139. if(m_upload)
  140. {
  141. m_upload->abort();
  142. m_upload->wait();
  143. }
  144. // if(m_heartbeat)
  145. // {
  146. // m_heartbeat->abort();
  147. // m_heartbeat->wait();
  148. // }
  149. // if(m_login)
  150. // {
  151. // m_login->abort();
  152. // m_login->wait();
  153. // }
  154. }
  155. void FormWool::onLoginFinished(QMap<QString, QString> info)
  156. {
  157. m_account = info;
  158. if(!m_timerTask->isActive())
  159. {
  160. int interval = 5;
  161. m_timerTask->start(interval*1000);
  162. }
  163. // if(!m_timerHeartBeat->isActive())
  164. // {
  165. // int interval = 30;
  166. // m_timerHeartBeat->start(interval*1000);
  167. // }
  168. }
  169. void FormWool::onTimeOutTask()
  170. {
  171. qDebug()<<"FormWool::onTimeOutTask start";
  172. if(!m_upload->isRunning())
  173. {
  174. qDebug()<<"FormWool::onTimeOutTask m_upload->start()";
  175. m_upload->start();
  176. }
  177. if(!m_sync->isRunning())
  178. {
  179. qDebug()<<"FormWool::onTimeOutTask m_sync->start()";
  180. m_sync->start();
  181. }
  182. }