core.h 6.0 KB

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