core.h 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168
  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 <QUuid>
  18. #include "ytServiceShm.h"
  19. #include "QReplyTimeout.h"
  20. #include "wscenter.h"
  21. #include "logthread.h"
  22. class YpYwSyncRep {
  23. public:
  24. explicit YpYwSyncRep(int xh=0,QString id="",QString str=""){
  25. Xh = xh;
  26. Id = id;
  27. JsonStr = str;
  28. }
  29. int Xh;
  30. QString Id;
  31. QString JsonStr;
  32. };
  33. class SyncRep {
  34. public:
  35. explicit SyncRep(QString id="", QString str=""){
  36. Id = id;
  37. JsonStr = str;
  38. }
  39. QString Id;
  40. QString JsonStr;
  41. };
  42. class YPSyncDev{
  43. public:
  44. explicit YPSyncDev(int id=0, QString ownerName="", QString ownerCode="",QString unitinfo="",QString company="",int deviceType=0)
  45. {
  46. Id = id;
  47. OwnerName = ownerName;
  48. OwnerCode = ownerCode;
  49. Unitinfo = unitinfo;
  50. Company = company;
  51. DeviceType = deviceType;
  52. }
  53. int Id;
  54. QString OwnerName;
  55. QString OwnerCode;
  56. QString Unitinfo;
  57. QString Company;
  58. int DeviceType;
  59. };
  60. class XfzdSyncDev{
  61. public:
  62. explicit XfzdSyncDev(QString deviceCode="", QString deviceName="", QString descript="",int deviceType=0, QString deviceTypeName="", QString openProjectId="", int devtype=0, QString data="",QString port="",QString deviceFloor="")
  63. {
  64. DeviceCode = deviceCode;
  65. DeviceName = deviceName;
  66. Descript = descript;
  67. DeviceType = deviceType;
  68. DeviceTypeName = deviceTypeName;
  69. OpenProjectId= openProjectId;
  70. devCategory = devtype;
  71. Data = data;
  72. Port = port;
  73. DeviceFloor = deviceFloor;
  74. }
  75. QString DeviceCode;
  76. QString DeviceName;
  77. QString Descript;
  78. int DeviceType;
  79. QString DeviceTypeName;
  80. QString OpenProjectId;
  81. int devCategory;
  82. QString Data;
  83. QString Port;
  84. QString DeviceFloor;
  85. };
  86. class XfzdSyncRep {
  87. public:
  88. explicit XfzdSyncRep(int xh=0,QString id="", QString str="", int devcategory=0, QString devicecode=""){
  89. Xh = xh;
  90. Id = id;
  91. JsonStr = str;
  92. devCategory =devcategory;
  93. deviceCode = devicecode;
  94. }
  95. int Xh;
  96. int devCategory;
  97. QString Id;
  98. QString JsonStr;
  99. QString deviceCode;
  100. };
  101. class CnPno{
  102. public:
  103. explicit CnPno(QString name="", int pno=0, QString def=""){
  104. PName = name;
  105. Pno = pno;
  106. Default = def;
  107. }
  108. QString PName;
  109. int Pno;
  110. QString Default;
  111. };
  112. class Core : public QObject
  113. {
  114. Q_OBJECT
  115. public:
  116. explicit Core(QObject *parent = 0);
  117. void start();
  118. bool chk_table(QString tablename, QStringList tables);
  119. void db_init();
  120. QList<CnPno> getPnoValue(QString pnoset);
  121. signals:
  122. public slots:
  123. void time_out();
  124. void SyncData(QString uuid, QString jsonstr);
  125. void companyAlarmChanged(QString companyCode);
  126. void finishedSlot(QNetworkReply *reply);
  127. void reply_timeout();
  128. void appendLog(QString log);
  129. void needSync(QString deviceCode);
  130. void XfzdSyncData(int xh,QString uuid, QString jsonstr, int devCategory, QString deviceCode);
  131. void finishedSlot9(QNetworkReply *reply);
  132. void reply_timeout9();
  133. private:
  134. QSqlDatabase db,mdb;
  135. time_t lhworktime,work_time,xfzdworktime,lhworktime1;
  136. bool isRunning,isSending,mdbOpened,isSending9;
  137. int ypCount,ypdisCount,ypxyCount,cnCount,jaCount,hpCount;
  138. QTimer *timer;
  139. QList<YPSyncDev> syncDevList;
  140. QList<XfzdSyncDev> XfzdDevList;
  141. QList<YpYwSyncRep> ypYwSyncDataList;
  142. QList<SyncRep> ypSyncdataList;
  143. QList<SyncRep> ypSyncDisdataList;
  144. QList<XfzdSyncRep> XfzdSyncdataLiet;
  145. QNetworkAccessManager *netAccessManager,*XfzdnetAccessManager;
  146. QStringList sqlList, sqlList2,sqlList3;
  147. WSCenter *wsCenter;
  148. uint times;
  149. LogThread *logThread;
  150. // WSCenter *wsCenter;
  151. };
  152. #endif // CORE_H