core.h 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213
  1. #ifndef CORE_H
  2. #define CORE_H
  3. #include <QObject>
  4. #include <QTimer>
  5. #include <QSqlDatabase>
  6. #include <QSqlQuery>
  7. #include <QVariant>
  8. #include <QDir>
  9. #include <QFileInfo>
  10. #include <QDateTime>
  11. #include <QFileInfoList>
  12. #include <QStringList>
  13. #include <QList>
  14. #include <QNetworkAccessManager>
  15. #include <QNetworkRequest>
  16. #include <QNetworkReply>
  17. #include "ytServiceShm.h"
  18. #include "db_syncthread.h"
  19. #include "QReplyTimeout.h"
  20. #include "datacenter.h"
  21. #include "wscenter.h"
  22. #include "logthread.h"
  23. #include "subsysreport.h"
  24. class YpYwSyncRep {
  25. public:
  26. explicit YpYwSyncRep(int xh=0,QString id="",QString str=""){
  27. Xh = xh;
  28. Id = id;
  29. JsonStr = str;
  30. }
  31. int Xh;
  32. QString Id;
  33. QString JsonStr;
  34. };
  35. class SyncRep {
  36. public:
  37. explicit SyncRep(QString id="", QString str=""){
  38. Id = id;
  39. JsonStr = str;
  40. }
  41. QString Id;
  42. QString JsonStr;
  43. };
  44. class YpXySyncRep {
  45. public:
  46. explicit YpXySyncRep(int xh=0,QString id="",QString str=""){
  47. Xh = xh;
  48. Id = id;
  49. JsonStr = str;
  50. }
  51. int Xh;
  52. QString Id;
  53. QString JsonStr;
  54. };
  55. class CnSyncRep {
  56. public:
  57. explicit CnSyncRep(int xh=0,QString id="", QString str="", int devcategory=0){
  58. Xh = xh;
  59. Id = id;
  60. JsonStr = str;
  61. devCategory =devcategory;
  62. }
  63. int Xh;
  64. int devCategory;
  65. QString Id;
  66. QString JsonStr;
  67. };
  68. class NewCnSyncRep {
  69. public:
  70. explicit NewCnSyncRep(int xh=0,QString id="", QString str="", int devcategory=0){
  71. Xh = xh;
  72. Id = id;
  73. JsonStr = str;
  74. devCategory =devcategory;
  75. }
  76. int Xh;
  77. int devCategory;
  78. QString Id;
  79. QString JsonStr;
  80. };
  81. class XfzdSyncRep {
  82. public:
  83. explicit XfzdSyncRep(int xh=0,QString id="", QString str="", int devcategory=0){
  84. Xh = xh;
  85. Id = id;
  86. JsonStr = str;
  87. devCategory =devcategory;
  88. }
  89. int Xh;
  90. int devCategory;
  91. QString Id;
  92. QString JsonStr;
  93. };
  94. class JaSyncRep {
  95. public:
  96. explicit JaSyncRep(int xh=0,QString id="",QString str=""){
  97. Xh = xh;
  98. Id = id;
  99. JsonStr = str;
  100. }
  101. int Xh;
  102. QString Id;
  103. QString JsonStr;
  104. };
  105. class HpSyncRep {
  106. public:
  107. explicit HpSyncRep(int xh=0,QString id="",QString str=""){
  108. Xh = xh;
  109. Id = id;
  110. JsonStr = str;
  111. }
  112. int Xh;
  113. QString Id;
  114. QString JsonStr;
  115. };
  116. class Core : public QObject
  117. {
  118. Q_OBJECT
  119. public:
  120. explicit Core(QObject *parent = 0);
  121. void start();
  122. bool chk_table(QString tablename, QStringList tables);
  123. void db_init();
  124. QList<JaPno> getJaPnoValue(QString pnoset);
  125. QList<CnPno> getPnoValue(QString pnoset);
  126. signals:
  127. void set_cndevlist(QList<CNSyncDev> list);
  128. public slots:
  129. void time_out();
  130. void SyncData(QString uuid, QString jsonstr);
  131. void SyncDisData(QString uuid, QString jsonstr);
  132. void SyncXyData(int xh,QString uuid, QString jsonstr);
  133. void cnSyncData(int xh,QString uuid, QString jsonstr, int devCategory);
  134. void NewcnSyncData(int xh,QString uuid, QString jsonstr, int devCategory);
  135. void XfzdSyncData(int xh,QString uuid, QString jsonstr, int devCategory);
  136. void jaSyncData(int xh,QString uuid,QString jsonstr);
  137. void hpSyncData(int xh,QString uuid,QString jsonstr);
  138. void ypYwSyncData(int xh,QString uuid,QString jsonstr);
  139. void companyAlarmChanged(QString companyCode);
  140. void finishedSlot(QNetworkReply *reply);
  141. void reply_timeout();
  142. void finishedSlot2(QNetworkReply *reply);
  143. void finishedSlot3(QNetworkReply *reply);
  144. void finishedSlot4(QNetworkReply *reply);
  145. void finishedSlot5(QNetworkReply *reply);
  146. void finishedSlot6(QNetworkReply *reply);
  147. void finishedSlot7(QNetworkReply *reply);
  148. void finishedSlot8(QNetworkReply *reply);
  149. void finishedSlot9(QNetworkReply *reply);
  150. void reply_timeout2();
  151. void reply_timeout3();
  152. void reply_timeout4();
  153. void reply_timeout5();
  154. void reply_timeout6();
  155. void reply_timeout7();
  156. void reply_timeout8();
  157. void reply_timeout9();
  158. void appendLog(QString log);
  159. void needSync(QString deviceCode);
  160. void subReport(quint16 subType, QString DeviceID, quint64 insertId, bool flag);
  161. void subReport1(quint16 subType, QString DeviceID, quint64 insertId, quint16 flag, QString CompanyCode, QString evt_name, QString evt, QString alarm_time);
  162. void subReport2(quint16 subType, QString artificial_id, quint16 area_status, QString reason, QString handler, QString mobile);
  163. private:
  164. QSqlDatabase db,mdb;
  165. time_t work_time,jaworktime,ypdisworktime,ypxyworktime,xfzdworktime;
  166. bool isRunning,isSending,isSending2,isSending3,isSending4,isSending5,isSending6,isSending7,isSending8,isSending9,mdbOpened;
  167. int ypCount,ypdisCount,ypxyCount,cnCount,jaCount,hpCount;
  168. QTimer *timer;
  169. DB_SyncThread *thread;
  170. QList<JASyncDev> jaDevList;
  171. QList<YPYWSyncDev> ypYwDevList;
  172. QList<HPSyncDev> hpDevList;
  173. QList<CNSyncDev> cnDevList;
  174. QList<NewCNSyncDev> NewcnDevList;
  175. QList<XfzdSyncDev> XfzdDevList;
  176. QList<YPSyncDev> syncDevList;
  177. QList<YPSyncXyDev> syncXyDevList;
  178. QList<YpYwSyncRep> ypYwSyncDataList;
  179. QList<SyncRep> ypSyncdataList;
  180. QList<SyncRep> ypSyncDisdataList;
  181. QList<YpXySyncRep> ypSyncXydataList;
  182. QList<CnSyncRep> cnSyncdataLiet;
  183. QList<NewCnSyncRep> NewcnSyncdataLiet;
  184. QList<XfzdSyncRep> XfzdSyncdataLiet;
  185. QList<JaSyncRep> jaSyncdataLiet;
  186. QList<HpSyncRep> hpSyncdataLiet;
  187. QNetworkAccessManager *netAccessManager, *cnnetAccessManager, *janetAccessManager, *disnetAccessManager, *xynetAccessManager, *hpnetAccessManager,*NewcnnetAccessManager,*ypYwcnnetAccessManager,*XfzdnetAccessManager;
  188. QStringList sqlList, sqlList2,sqlList3;
  189. DataCenter *dc;
  190. WSCenter *wsCenter;
  191. uint times;
  192. LogThread *logThread;
  193. SubSysReport *subReportServer;
  194. // WSCenter *wsCenter;
  195. };
  196. #endif // CORE_H