#include "core.h" #include "ytservicecore.h" #include #include #include #include //extern YT_SERVICE_SHM *ytShm; void chkmd5(const char *data, char *md5){ MD5_CTX ctx; unsigned char tmp,md[16]; int i; MD5_Init(&ctx); MD5_Update(&ctx,data,strlen(data)); MD5_Final(md,&ctx); for(i=0;i<16;i++){ tmp = (md[i]>>4)&0x0f; if(tmp<10) md5[i*2+0] = (char)(tmp+0x30); else md5[i*2+0] = (char)(tmp+0x37); tmp = md[i]&0x0f; if(tmp<10) md5[i*2+1] = (char)(tmp+0x30); else md5[i*2+1] = (char)(tmp+0x37); } md5[32] = 0x00; } Core::Core(QObject *parent) : QObject(parent) { isRunning = false; isSending = false; isSending2 = false; isSending3 = false; isSending4 = false; isSending5 = false; isSending6 = false; isSending7 = false; isSending8 = false; isSending9 = false; cnCount = 0; jaCount = 0; ypCount = 0; ypxyCount = 0; ypdisCount = 0; hpCount = 0; times = 0; jaworktime = 0; ypdisworktime = 0; xfzdworktime = 0; ypxyworktime = 0; ypSyncdataList.clear(); ypSyncDisdataList.clear(); ypSyncXydataList.clear(); cnSyncdataLiet.clear(); NewcnSyncdataLiet.clear(); jaSyncdataLiet.clear(); ypYwSyncDataList.clear(); hpSyncdataLiet.clear(); XfzdSyncdataLiet.clear(); sqlList.clear(); sqlList2.clear(); sqlList3.clear(); work_time = 0; logThread = new LogThread(this); logThread->start(); ytShm->updatetime[CORE_MAIN] = time(static_cast(nullptr)); ytShm->updatetime[DB_THREAD] = ytShm->updatetime[CORE_MAIN] ; db = QSqlDatabase::addDatabase("QSQLITE","dog_conf"); db.setDatabaseName("/root/db/watchdog2.db"); mdb = QSqlDatabase::addDatabase("QMYSQL","jdxf2_db"); mdb.setDatabaseName("jdxf"); mdb.setHostName("47.98.201.187"); mdb.setPort(3306); mdb.setUserName("root"); mdb.setPassword("Yt2018IoT"); mdbOpened = mdb.open(); if(db.open()){ db_init(); } thread = new DB_SyncThread(this); timer = new QTimer(this); repThread = new Rep_DBThread(this); netAccessManager = new QNetworkAccessManager(this); connect(timer,SIGNAL(timeout()),this,SLOT(time_out())); connect(thread,SIGNAL(SyncData(QString,QString)),this,SLOT(SyncData(QString,QString))); // connect(thread,SIGNAL(SyncDisData(QString,QString)),this,SLOT(SyncDisData(QString,QString))); // connect(thread,SIGNAL(SyncXyData(int,QString,QString)),this,SLOT(SyncXyData(int,QString,QString))); connect(thread,SIGNAL(cnSyncData(int,QString,QString,int)),this,SLOT(cnSyncData(int,QString,QString,int))); //unused connect(thread,SIGNAL(NewcnSyncData(int,QString,QString,int)),this,SLOT(NewcnSyncData(int,QString,QString,int))); connect(thread,SIGNAL(jaSyncData(int,QString,QString)),this,SLOT(jaSyncData(int,QString,QString))); connect(thread,SIGNAL(hpSyncData(int,QString,QString)),this,SLOT(hpSyncData(int,QString,QString))); connect(netAccessManager,SIGNAL(finished(QNetworkReply*)),this,SLOT(finishedSlot(QNetworkReply*))); connect(thread,SIGNAL(companyAlarmChanged(QString)),this,SLOT(companyAlarmChanged(QString))); connect(thread,SIGNAL(appendLog(QString)),this,SLOT(appendLog(QString))); cnnetAccessManager = new QNetworkAccessManager(this); //unused NewcnnetAccessManager = new QNetworkAccessManager(this); janetAccessManager = new QNetworkAccessManager(this); hpnetAccessManager = new QNetworkAccessManager(this); disnetAccessManager = new QNetworkAccessManager(this); xynetAccessManager = new QNetworkAccessManager(this); ypYwcnnetAccessManager = new QNetworkAccessManager(this); XfzdnetAccessManager = new QNetworkAccessManager(this); connect(cnnetAccessManager,SIGNAL(finished(QNetworkReply*)),this,SLOT(finishedSlot2(QNetworkReply*))); connect(NewcnnetAccessManager,SIGNAL(finished(QNetworkReply*)),this,SLOT(finishedSlot7(QNetworkReply*))); connect(janetAccessManager,SIGNAL(finished(QNetworkReply*)),this,SLOT(finishedSlot3(QNetworkReply*))); connect(disnetAccessManager,SIGNAL(finished(QNetworkReply*)),this,SLOT(finishedSlot4(QNetworkReply*))); connect(xynetAccessManager,SIGNAL(finished(QNetworkReply*)),this,SLOT(finishedSlot5(QNetworkReply*))); connect(hpnetAccessManager,SIGNAL(finished(QNetworkReply*)),this,SLOT(finishedSlot6(QNetworkReply*))); connect(ypYwcnnetAccessManager,SIGNAL(finished(QNetworkReply*)),this,SLOT(finishedSlot8(QNetworkReply*))); connect(XfzdnetAccessManager,SIGNAL(finished(QNetworkReply*)),this,SLOT(finishedSlot9(QNetworkReply*))); dc = new DataCenter(this); connect(dc,&DataCenter::needSync,this,&Core::needSync); wsCenter = new WSCenter(this); subReportServer = new SubSysReport(this); connect(subReportServer,&SubSysReport::subReport,this,&Core::subReport); connect(subReportServer,&SubSysReport::subReport1,this,&Core::subReport1); connect(subReportServer,&SubSysReport::subReport2,this,&Core::subReport2); connect(subReportServer,&SubSysReport::appendLog,this,&Core::appendLog); time_out(); } void Core::appendLog(QString log){ logThread->appendData(log); } void Core::start() { // if((ypCount>6)||(ypdisCount>6)||(cnCount>6)||(hpCount>6)){ // exit(-1); // }else{ printf("core start\n"); timer->start(1000); thread->start(); repThread->start(); dc->start(); subReportServer->start(); // } } void Core::subReport2(quint16 subType, QString artificial_id, quint16 area_status, QString reason, QString handler, QString mobile){ logThread->appendData(QString("ceshirengongduchadan[%1, %2, %3, %4, %5, %6]").arg(subType).arg(artificial_id).arg(area_status).arg(reason).arg(handler).arg(mobile)); QString jdata = ""; QString jasign = ""; time_t myt=time(NULL); if(area_status==1){ jdata.append(QString("\"app_key\":\"%1\"").arg("f8bdea7926bcc7cb827d2eccf67fa559")); jasign = "bb5247f1a92411ea9bae7956d3c00d15app_keyf8bdea7926bcc7cb827d2eccf67fa559"; }else if(area_status==2){ jdata.append(QString("\"app_key\":\"%1\"").arg("9e555b8b2244ebc1f59695824b86c5a0")); jasign = "ff6322b1163b11ea91d31bbf0a452a93app_key9e555b8b2244ebc1f59695824b86c5a0"; } jdata.append(QString(",\"timestamp\":\"%1\"").arg(myt)); jdata.append(QString(",\"format\":\"%1\"").arg("json")); jdata.append(QString(",\"v\":\"%1\"").arg("1.0")); jdata.append(QString(",\"sign_method\":\"%1\"").arg("md5")); if(subType==999){ jdata.append(QString(",\"artificial_id\":\"%1\"").arg(artificial_id)); jdata.append(QString(",\"reason\":\"%1\"").arg(reason)); jdata.append(QString(",\"handler\":\"%1\"").arg(handler)); jdata.append(QString(",\"mobile\":\"%1\"").arg(mobile)); jasign.append(QString("artificial_id%1").arg(artificial_id)); jasign.append(QString("format%1").arg("json")); jasign.append(QString("handler%1").arg(handler)); jasign.append(QString("mobile%1").arg(mobile)); jasign.append(QString("reason%1").arg(reason)); jasign.append(QString("sign_method%1").arg("md5")); jasign.append(QString("timestamp%1").arg(myt)); jasign.append(QString("v%1").arg("1.0")); }else { jdata.append(QString(",\"supervise_id\":\"%1\"").arg(artificial_id)); jdata.append(QString(",\"status\":%1").arg(subType)); jdata.append(QString(",\"handler\":\"%1\"").arg(handler)); jdata.append(QString(",\"mobile\":\"%1\"").arg(mobile)); jdata.append(QString(",\"reason\":\"%1\"").arg(reason)); jasign.append(QString("format%1").arg("json")); jasign.append(QString("handler%1").arg(handler)); jasign.append(QString("mobile%1").arg(mobile)); jasign.append(QString("reason%1").arg(reason)); jasign.append(QString("sign_method%1").arg("md5")); jasign.append(QString("status%1").arg(subType)); jasign.append(QString("supervise_id%1").arg(artificial_id)); jasign.append(QString("timestamp%1").arg(myt)); jasign.append(QString("v%1").arg("1.0")); } if(area_status==1){ jasign.append(QString("%1").arg("bb5247f1a92411ea9bae7956d3c00d15")); }else if(area_status==2){ jasign.append(QString("%1").arg("ff6322b1163b11ea91d31bbf0a452a93")); } char md5str[33]; chkmd5(jasign.replace("\r","").replace("\n","").replace(" ","").toUtf8().data(),md5str); md5str[32]='\0'; jdata.append(QString(",\"sign\":\"%1\"").arg(md5str)); logThread->appendData(QString("ceshidianziduchadan[%1]").arg(jdata)); QString jasign3=jdata.replace("\r","").replace("\n","").replace(" ",""); if(area_status==1){ if(subType==999){ hpSyncData(5,QUuid::createUuid().toString().replace("{","").replace("}",""),"{"+jasign3+"}"); }else{ hpSyncData(6,QUuid::createUuid().toString().replace("{","").replace("}",""),"{"+jasign3+"}"); logThread->appendData(QString("ceshidianziduchadan12[%1]").arg(jasign3)); } }else if(area_status==2){ if(subType==999){ jaSyncData(5,QUuid::createUuid().toString().replace("{","").replace("}",""),"{"+jasign3+"}"); }else{ jaSyncData(6,QUuid::createUuid().toString().replace("{","").replace("}",""),"{"+jasign3+"}"); logThread->appendData(QString("ceshidianziduchadan12[%1]").arg(jasign3)); } } } void Core::subReport1(quint16 subType, QString DeviceID, quint64 insertId, quint16 flag, QString CompanyCode, QString evt_name, QString evt, QString alarm_time){ logThread->appendData(QString("ceshihuojing[%1, %2, %3, %4, %5, %6, %7, %8]").arg(subType).arg(DeviceID).arg(insertId).arg(flag).arg(CompanyCode).arg(evt_name).arg(evt).arg(alarm_time)); } void Core::subReport(quint16 subType, QString DeviceID, quint64 insertId, bool flag){ if(!mdbOpened) { mdbOpened = mdb.open(); } QSqlQuery qry1; QSqlQuery qry2; QSqlQuery qry3; QSqlQuery qry4; QSqlQuery qry5; QSqlQuery qry6; QSqlQuery qry7; QSqlQuery qry8; QSqlQuery xfzdQry; bool found = false; bool found1 = false; bool found2 = false; bool found5 = false; bool found6 = false; bool found7 = false; logThread->appendData(QString("huojingceshi[%1, %2, %3, %4]").arg(subType).arg(DeviceID).arg(insertId).arg(flag)); if(subType==1){ if(flag){ QString sql1 = QString("select port,data3,clr,clnr,clwb,time,clsj,data2,data4 from sp_hj2017 where id=%1").arg(insertId); QString sql2 = QString("select company from sp_owner where owner_code=%1").arg(DeviceID); qry1 = mdb.exec(sql1); qry2 = mdb.exec(sql2); while(qry2.next()){ QString sql4= QString("SELECT phone FROM sp_owner_phone WHERE owner_code = %1 AND phone NOT IN ('13301708833','18901601933','13817464316','15262166206','18621761642','18800178436','17317231730','13262875757','17630065224','17621295894','18773792538','15365185591') GROUP BY owner_code").arg(qry2.value(0).toString()); qry4 = mdb.exec(sql4); QString xfzdSql= QString("SELECT phone FROM sp_owner_phone WHERE owner_code = %1 GROUP BY owner_code").arg(qry2.value(0).toString()); xfzdQry = mdb.exec(xfzdSql); } QString jdata = ""; for(int i=0;iappendData(QString("qianmingceshi[%1]").arg(jasign.replace("\r","").replace("\n","").replace(" ","").toUtf8().data())); jdata.append(QString(",\"sign\":\"%1\"").arg(md5str)); QString jasign3=jdata.replace("\r","").replace("\n","").replace(" ",""); jaSyncData(2,QUuid::createUuid().toString().replace("{","").replace("}",""),"{"+jasign3+"}"); } } // else if(qry1.value(0).toInt()==8){ // time_t myt=time(NULL); // QString data3 = qry1.value(1).toString(); // QStringList list = data3.split(","); // jdata.append(QString("\"app_key\":\"%1\"").arg("9e555b8b2244ebc1f59695824b86c5a0")); // jdata.append(QString(",\"timestamp\":\"%1\"").arg(myt)); // jdata.append(QString(",\"format\":\"%1\"").arg("json")); // jdata.append(QString(",\"v\":\"%1\"").arg("1.0")); // jdata.append(QString(",\"sign_method\":\"%1\"").arg("md5")); // jdata.append(QString(",\"pid\":\"%1\"").arg(cndev.Pid)); // jdata.append(QString(",\"mainframe_id\":\"%1\"").arg(cndev.Mainframe_id)); // jdata.append(QString(",\"loop_number\":\"%1\"").arg(list.at(1))); // jdata.append(QString(",\"position_number\":\"%1\"").arg(list.at(2))); // jdata.append(QString(",\"handler\":\"%1\"").arg(qry1.value(2).toString())); // } } } } for(int i=0;iappendData(QString("xfzdceshi1[%1, %2, %3, %4]").arg(subType).arg(DeviceID).arg(insertId).arg(flag)); while(xfzdQry.next()){ logThread->appendData(QString("xfzdceshi2[%1, %2, %3, %4]").arg(subType).arg(DeviceID).arg(insertId).arg(flag)); time_t myt=time(NULL); QString sql8; if(DeviceID.compare("90142")==0){ sql8 = QString("select descript,device_name,device_code,port,device_type,device_type_name,open_project_id,data,device_floor from sp_corps_share_yf where device_code='%1' and port='%2'").arg(DeviceID).arg(xfzdQry1.value(1).toString()); }else{ sql8 = QString("select descript,device_name,device_code,port,device_type,device_type_name,open_project_id,data,device_floor from sp_corps_share_ceshi where device_code='%1' and port='%2'").arg(DeviceID).arg(xfzdQry1.value(1).toString()); } qry8 = mdb.exec(sql8); while(qry8.next()){ logThread->appendData(QString("xfzdceshi3[%1, %2, %3, %4]").arg(subType).arg(DeviceID).arg(insertId).arg(flag)); if(xfzdQry1.value(7).toString().compare("火警")==0){ jdata.append(QString("\"descript\":\"%1\"").arg(qry8.value(0).toString())); jdata.append(QString(",\"deviceName\":\"%1\"").arg(qry8.value(1).toString())); // if(qry8.value(6).toString().compare("10122")==0||qry8.value(6).toString().compare("10146")==0||qry8.value(6).toString().compare("10166")==0){ jdata.append(QString(",\"deviceNo\":\"%1\"").arg(qry8.value(2).toString()+(qry8.value(3).toString()).remove(QRegExp(","))+qry8.value(7).toString())); // }else{ // jdata.append(QString(",\"deviceNo\":\"%1\"").arg(qry8.value(2).toString()+(qry8.value(3).toString()).remove(QRegExp(",")))); // } jdata.append(QString(",\"deviceType\":\"%1\"").arg(qry8.value(4).toString())); jdata.append(QString(",\"floor\":\"%1\"").arg(qry8.value(8).toString())); jdata.append(QString(",\"deviceTypeName\":\"%1\"").arg(qry8.value(5).toString())); jdata.append(QString(",\"openProjectId\":\"%1\"").arg(qry8.value(6).toString())); QString jasign = "hj"; jasign.append(QString("%1").arg(insertId)); char md5str[33]; chkmd5(jasign.replace("\r","").replace("\n","").replace(" ","").toUtf8().data(),md5str); md5str[32]='\0'; jdata.append(QString(",\"openEventId\":\"%1\"").arg(md5str)); if(xfzdQry1.value(2).toString().indexOf(QString::fromUtf8("admin"))==0){ jdata.append(QString(",\"handlePhone\":\"%1\"").arg("15122423833")); }else{ jdata.append(QString(",\"handlePhone\":\"%1\"").arg(xfzdQry1.value(2).toString())); } jdata.append(QString(",\"handleAlarmTime\":\"%1\"").arg(xfzdQry1.value(6).toDateTime().toString("yyyy-MM-dd hh:mm:ss"))); jdata.append(QString(",\"alarmTime\":\"%1\"").arg(xfzdQry1.value(5).toDateTime().toString("yyyy-MM-dd hh:mm:ss"))); if(xfzdQry1.value(4).toInt()==1){ jdata.append(QString(",\"state\":\"%1\"").arg(1)); }else{ jdata.append(QString(",\"state\":\"%1\"").arg(2)); } if(qry8.value(4).toString().compare("23")==0){ XfzdSyncData(9,QUuid::createUuid().toString().replace("{","").replace("}",""), "{"+jdata+"}",xfzddev.devCategory,DeviceID,qry8.value(6).toString()); }else{ XfzdSyncData(6,QUuid::createUuid().toString().replace("{","").replace("}",""), "{"+jdata+"}",xfzddev.devCategory,DeviceID,qry8.value(6).toString()); } }else if(xfzdQry1.value(7).toString().compare("故障")==0){ logThread->appendData(QString("xfzdceshi4[%1, %2, %3, %4]").arg(subType).arg(DeviceID).arg(insertId).arg(flag)); jdata.append(QString("\"descript\":\"%1\"").arg(qry8.value(0).toString())); jdata.append(QString(",\"deviceName\":\"%1\"").arg(qry8.value(1).toString())); // if(qry8.value(6).toString().compare("10122")==0||qry8.value(6).toString().compare("10146")==0||qry8.value(6).toString().compare("10166")==0){ jdata.append(QString(",\"deviceNo\":\"%1\"").arg(qry8.value(2).toString()+(qry8.value(3).toString()).remove(QRegExp(","))+qry8.value(7).toString())); // }else{ // jdata.append(QString(",\"deviceNo\":\"%1\"").arg(qry8.value(2).toString()+(qry8.value(3).toString()).remove(QRegExp(",")))); // } jdata.append(QString(",\"deviceType\":\"%1\"").arg(qry8.value(4).toString())); jdata.append(QString(",\"floor\":\"%1\"").arg(qry8.value(8).toString())); jdata.append(QString(",\"deviceTypeName\":\"%1\"").arg(qry8.value(5).toString())); jdata.append(QString(",\"openProjectId\":\"%1\"").arg(qry8.value(6).toString())); QString jasign = "hj"; jasign.append(QString("%1").arg(insertId)); char md5str[33]; chkmd5(jasign.replace("\r","").replace("\n","").replace(" ","").toUtf8().data(),md5str); md5str[32]='\0'; jdata.append(QString(",\"openEventId\":\"%1\"").arg(md5str)); if(xfzdQry1.value(2).toString().indexOf(QString::fromUtf8("admin"))==0){ jdata.append(QString(",\"handlePhone\":\"%1\"").arg("15122423833")); }else{ jdata.append(QString(",\"handlePhone\":\"%1\"").arg(xfzdQry1.value(2).toString())); } jdata.append(QString(",\"handleAlarmTime\":\"%1\"").arg(xfzdQry1.value(6).toDateTime().toString("yyyy-MM-dd hh:mm:ss"))); jdata.append(QString(",\"alarmTime\":\"%1\"").arg(xfzdQry1.value(5).toDateTime().toString("yyyy-MM-dd hh:mm:ss"))); jdata.append(QString(",\"state\":\"%1\"").arg(1)); XfzdSyncData(7,QUuid::createUuid().toString().replace("{","").replace("}",""), "{"+jdata+"}",xfzddev.devCategory,DeviceID,qry8.value(6).toString()); }else if(xfzdQry1.value(7).toString().compare("手报")==0){ jdata.append(QString("\"descript\":\"%1\"").arg(qry8.value(0).toString())); jdata.append(QString(",\"deviceName\":\"%1\"").arg(qry8.value(1).toString())); // if(qry8.value(6).toString().compare("10122")==0||qry8.value(6).toString().compare("10146")==0||qry8.value(6).toString().compare("10166")==0){ jdata.append(QString(",\"deviceNo\":\"%1\"").arg(qry8.value(2).toString()+(qry8.value(3).toString()).remove(QRegExp(","))+qry8.value(7).toString())); // }else{ // jdata.append(QString(",\"deviceNo\":\"%1\"").arg(qry8.value(2).toString()+(qry8.value(3).toString()).remove(QRegExp(",")))); // } jdata.append(QString(",\"deviceType\":\"%1\"").arg(qry8.value(4).toString())); jdata.append(QString(",\"floor\":\"%1\"").arg(qry8.value(8).toString())); jdata.append(QString(",\"deviceTypeName\":\"%1\"").arg(qry8.value(5).toString())); jdata.append(QString(",\"openProjectId\":\"%1\"").arg(qry8.value(6).toString())); QString jasign = "hj"; jasign.append(QString("%1").arg(insertId)); char md5str[33]; chkmd5(jasign.replace("\r","").replace("\n","").replace(" ","").toUtf8().data(),md5str); md5str[32]='\0'; jdata.append(QString(",\"openEventId\":\"%1\"").arg(md5str)); if(xfzdQry1.value(2).toString().indexOf(QString::fromUtf8("admin"))==0){ jdata.append(QString(",\"handlePhone\":\"%1\"").arg("15122423833")); }else{ jdata.append(QString(",\"handlePhone\":\"%1\"").arg(xfzdQry1.value(2).toString())); } jdata.append(QString(",\"handleAlarmTime\":\"%1\"").arg(xfzdQry1.value(6).toDateTime().toString("yyyy-MM-dd hh:mm:ss"))); jdata.append(QString(",\"alarmTime\":\"%1\"").arg(xfzdQry1.value(5).toDateTime().toString("yyyy-MM-dd hh:mm:ss"))); if(xfzdQry1.value(4).toInt()==1){ jdata.append(QString(",\"state\":\"%1\"").arg(1)); }else{ jdata.append(QString(",\"state\":\"%1\"").arg(2)); } XfzdSyncData(9,QUuid::createUuid().toString().replace("{","").replace("}",""), "{"+jdata+"}",xfzddev.devCategory,DeviceID,qry8.value(6).toString()); } break; } } } } } } if(!found2){ for(int i=0;iappendData(QString("qianmingceshi[%1]").arg(jasign.replace("\r","").replace("\n","").replace(" ","").toUtf8().data())); jdata.append(QString(",\"sign\":\"%1\"").arg(md5str)); QString jasign3=jdata.replace("\r","").replace("\n","").replace(" ",""); hpSyncData(2,QUuid::createUuid().toString().replace("{","").replace("}",""),"{"+jasign3+"}"); } } } } } } if(!found2){ for(int i=0;iMaxT) MaxT = cTime; jdata1.append(QString("\"companyCode\":\"%1\"").arg(ypxydev1.CompanyCode)); jdata1.append(QString(",\"companyName\":\"%1\"").arg(ypxydev1.CompanyName)); jdata1.append(QString(",\"deviceId\":\"%1\"").arg(ypxydev1.ObjCode)); jdata1.append(QString(",\"deviceName\":\"%1\"").arg(ypxydev1.OwnerName+ypxydev1.DeviceName)); jdata1.append(QString(",\"wirelessSignal\":%1").arg(5)); jdata1.append(QString(",\"time\":\"%1\"").arg(QDateTime::fromTime_t(cTime).toString("yyyy-MM-dd HH:mm:ss"))); if(qry7.value(0).toString().compare("02")==0){ jdata1.append(QString(",\"alarmName\":\"%1\"").arg("火灾报警")); jdata1.append(QString(",\"alarmCode\":\"%1\"").arg("Y07")); }else if(qry7.value(0).toString().compare("04")==0){ jdata1.append(QString(",\"alarmName\":\"%1\"").arg("故障")); jdata1.append(QString(",\"alarmCode\":\"%1\"").arg("Y11")); }else if(qry7.value(0).toString().compare("10")==0){ jdata1.append(QString(",\"alarmName\":\"%1\"").arg("监管")); jdata1.append(QString(",\"alarmCode\":\"%1\"").arg("Y13")); }else if(qry7.value(0).toString().compare("40")==0){ jdata1.append(QString(",\"alarmName\":\"%1\"").arg("反馈")); jdata1.append(QString(",\"alarmCode\":\"%1\"").arg("Y14")); }else if(qry7.value(0).toString().compare("20")==0){ jdata1.append(QString(",\"alarmName\":\"%1\"").arg("启动")); jdata1.append(QString(",\"alarmCode\":\"%1\"").arg("Y15")); }else if(qry7.value(0).toString().compare("08")==0){ jdata1.append(QString(",\"alarmName\":\"%1\"").arg("屏蔽")); jdata1.append(QString(",\"alarmCode\":\"%1\"").arg("Y16")); } SyncXyData(1,QUuid::createUuid().toString().replace("{","").replace("}",""),"{"+jdata1+"}"); } } } } } }else if(subType==6){ if(flag){ for(int i=0;i pnoList = getPnoValue(xfzddev.Data); QJsonArray jajsonArray; for(int i=0;i pnoList = getJaPnoValue(jaDevList.at(i).Device_data); QJsonArray jajsonArray; for(int i=0;i pnoList = getJaPnoValue(hpDevList.at(i).Device_data); QJsonArray jajsonArray; for(int i=0;iMaxT) MaxT = cTime; jdata1.append(QString("\"companyCode\":\"%1\"").arg(ypxydev1.CompanyCode)); jdata1.append(QString(",\"companyName\":\"%1\"").arg(ypxydev1.CompanyName)); jdata1.append(QString(",\"deviceId\":\"%1\"").arg(ypxydev1.ObjCode)); jdata1.append(QString(",\"deviceName\":\"%1\"").arg(ypxydev1.OwnerName+ypxydev1.DeviceName)); jdata1.append(QString(",\"wirelessSignal\":%1").arg(5)); jdata1.append(QString(",\"time\":\"%1\"").arg(QDateTime::fromTime_t(cTime).toString("yyyy-MM-dd HH:mm:ss"))); // if(flag){ // jdata1.append(QString(",\"flag\":\"%1\"").arg("true")); // }else{ // jdata1.append(QString(",\"flag\":\"%1\"").arg("false")); // } if(qry7.value(0).toString().compare("EF9")==0){ jdata1.append(QString(",\"alarmName\":\"%1\"").arg("离线")); jdata1.append(QString(",\"alarmCode\":\"%1\"").arg("E09")); }else if(qry7.value(0).toString().compare("EF4")==0){ jdata1.append(QString(",\"alarmName\":\"%1\"").arg("漏电报警")); jdata1.append(QString(",\"alarmCode\":\"%1\"").arg("E04")); }else if(qry7.value(0).toString().compare("EF3")==0){ jdata1.append(QString(",\"alarmName\":\"%1\"").arg("过流报警")); jdata1.append(QString(",\"alarmCode\":\"%1\"").arg("E03")); }else if(qry7.value(0).toString().compare("EF2")==0){ jdata1.append(QString(",\"alarmName\":\"%1\"").arg("过压报警")); jdata1.append(QString(",\"alarmCode\":\"%1\"").arg("E02")); }else if(qry7.value(0).toString().compare("EF1")==0){ jdata1.append(QString(",\"alarmName\":\"%1\"").arg("欠压报警")); jdata1.append(QString(",\"alarmCode\":\"%1\"").arg("E01")); }else if(qry7.value(0).toString().compare("EF5")==0){ jdata1.append(QString(",\"alarmName\":\"%1\"").arg("回路1温度超限报警")); jdata1.append(QString(",\"alarmCode\":\"%1\"").arg("E05")); }else if(qry7.value(0).toString().compare("EF6")==0){ jdata1.append(QString(",\"alarmName\":\"%1\"").arg("回路2温度超限报警")); jdata1.append(QString(",\"alarmCode\":\"%1\"").arg("E06")); }else if(qry7.value(0).toString().compare("EF7")==0){ jdata1.append(QString(",\"alarmName\":\"%1\"").arg("回路3温度超限报警")); jdata1.append(QString(",\"alarmCode\":\"%1\"").arg("E07")); } SyncXyData(1,QUuid::createUuid().toString().replace("{","").replace("}",""),"{"+jdata1+"}"); } } } if(!found7){ for(int i=0;iMaxT) MaxT = cTime; jdata1.append(QString("\"companyCode\":\"%1\"").arg(ypxydev1.CompanyCode)); jdata1.append(QString(",\"companyName\":\"%1\"").arg(ypxydev1.CompanyName)); jdata1.append(QString(",\"deviceId\":\"%1\"").arg(ypxydev1.ObjCode)); jdata1.append(QString(",\"deviceName\":\"%1\"").arg(ypxydev1.OwnerName+ypxydev1.DeviceName)); // QString jasign = QString("%1&%2").arg(ypxydev1.ObjCode).arg(insertId); // QByteArray text = jasign.toLocal8Bit(); // QByteArray by = text.toBase64(); // QString str = QString(by); // jdata1.append(QString(",\"uuid\":\"%1\"").arg(str)); jdata1.append(QString(",\"wirelessSignal\":%1").arg(5)); jdata1.append(QString(",\"time\":\"%1\"").arg(QDateTime::fromTime_t(cTime).toString("yyyy-MM-dd HH:mm:ss"))); if(flag){ // jdata1.append(QString(",\"flag\":\"%1\"").arg("true")); jdata1.append(QString(",\"alarmName\":\"%1\"").arg("井盖复原")); }else{ // jdata1.append(QString(",\"flag\":\"%1\"").arg("false")); jdata1.append(QString(",\"alarmName\":\"%1\"").arg("井盖开启")); } jdata1.append(QString(",\"alarmCode\":\"%1\"").arg("M02")); // jdata1.append(QString(",\"battery\":%1").arg(qry17.value(2).toInt())); SyncXyData(1,QUuid::createUuid().toString().replace("{","").replace("}",""),"{"+jdata1+"}"); } } } } } }else if(subType==3){ if(flag){ for(int i=0;iappendData(QString("[ %1 ]").arg("============烟感推送===============")); uint cTime = qry7.value(1).toDateTime().toTime_t(); if(cTime>MaxT) MaxT = cTime; jdata1.append(QString("\"companyCode\":\"%1\"").arg(ypxydev1.CompanyCode)); jdata1.append(QString(",\"companyName\":\"%1\"").arg(ypxydev1.CompanyName)); jdata1.append(QString(",\"deviceId\":\"%1\"").arg(ypxydev1.ObjCode)); jdata1.append(QString(",\"deviceName\":\"%1\"").arg(ypxydev1.OwnerName+ypxydev1.DeviceName)); QString jasign = QString("%1&%2").arg(ypxydev1.ObjCode).arg(insertId); QByteArray text = jasign.toLocal8Bit(); // QByteArray by = text.toBase64(); // QString str = QString(by); // jdata1.append(QString(",\"uuid\":\"%1\"").arg(str)); jdata1.append(QString(",\"wirelessSignal\":%1").arg(5)); jdata1.append(QString(",\"time\":\"%1\"").arg(QDateTime::fromTime_t(cTime).toString("yyyy-MM-dd HH:mm:ss"))); if(qry7.value(0).toString().compare("y07")==0){ jdata1.append(QString(",\"alarmName\":\"%1\"").arg("火灾报警")); jdata1.append(QString(",\"alarmCode\":\"%1\"").arg("Y07")); }else if(qry7.value(0).toString().compare("y08")==0){ jdata1.append(QString(",\"alarmName\":\"%1\"").arg("温度报警")); jdata1.append(QString(",\"alarmCode\":\"%1\"").arg("Y08")); }else if(qry7.value(0).toString().compare("y09")==0){ jdata1.append(QString(",\"alarmName\":\"%1\"").arg("烟感电量低")); jdata1.append(QString(",\"alarmCode\":\"%1\"").arg("Y09")); }else if(qry7.value(0).toString().compare("y10")==0){ jdata1.append(QString(",\"alarmName\":\"%1\"").arg("防拆报警")); jdata1.append(QString(",\"alarmCode\":\"%1\"").arg("Y10")); }else if(qry7.value(0).toString().compare("y11")==0){ jdata1.append(QString(",\"alarmName\":\"%1\"").arg("发射电路故障")); jdata1.append(QString(",\"alarmCode\":\"%1\"").arg("Y11")); }else if(qry7.value(0).toString().compare("y12")==0){ jdata1.append(QString(",\"alarmName\":\"%1\"").arg("设备自检")); jdata1.append(QString(",\"alarmCode\":\"%1\"").arg("Y12")); } SyncXyData(1,QUuid::createUuid().toString().replace("{","").replace("}",""),"{"+jdata1+"}"); break; } } } } } if(!found6){ for(int i=0;iMaxT) MaxT = cTime; jdata1.append(QString("\"companyCode\":\"%1\"").arg(ypxydev1.CompanyCode)); jdata1.append(QString(",\"companyName\":\"%1\"").arg(ypxydev1.CompanyName)); jdata1.append(QString(",\"deviceId\":\"%1\"").arg(ypxydev1.ObjCode)); jdata1.append(QString(",\"deviceName\":\"%1\"").arg(ypxydev1.OwnerName+ypxydev1.DeviceName)); // QString jasign = QString("%1&%2").arg(ypxydev1.ObjCode).arg(insertId); // QByteArray text = jasign.toLocal8Bit(); // QByteArray by = text.toBase64(); // QString str = QString(by); // jdata1.append(QString(",\"uuid\":\"%1\"").arg(str)); jdata1.append(QString(",\"wirelessSignal\":%1").arg(5)); jdata1.append(QString(",\"time\":\"%1\"").arg(QDateTime::fromTime_t(cTime).toString("yyyy-MM-dd HH:mm:ss"))); if(qry7.value(0).toString().compare("WP1")==0){ jdata1.append(QString(",\"alarmName\":\"%1\"").arg("低压")); jdata1.append(QString(",\"alarmCode\":\"%1\"").arg("WP1")); }else if(qry7.value(0).toString().compare("WP2")==0){ jdata1.append(QString(",\"alarmName\":\"%1\"").arg("高压")); jdata1.append(QString(",\"alarmCode\":\"%1\"").arg("WP2")); }else if(qry7.value(0).toString().compare("WP4")==0){ jdata1.append(QString(",\"alarmName\":\"%1\"").arg("离线")); jdata1.append(QString(",\"alarmCode\":\"%1\"").arg("WP4")); } SyncXyData(1,QUuid::createUuid().toString().replace("{","").replace("}",""),"{"+jdata1+"}"); } } } if(!found5){ for(int i=0;i0){ jdata.append(QString(",\"mid\":\"%1\"").arg(hpdev.Mid)); jdata.append(QString(",\"device_name\":\"%1\"").arg(hpdev.Device_name)); jdata.append(QString(",\"device_id\":\"%1\"").arg(hpdev.Device_id)); QJsonParseError json_error; QJsonArray jajsonArray; QJsonDocument jsonDoc(QJsonDocument::fromJson(hpDevList.at(i).Device_data.toUtf8(),&json_error)); QJsonObject jaobj; QJsonObject jaobj2; QJsonObject jaobj3; if(json_error.error == QJsonParseError::NoError){ while(qry.next()){ QJsonArray json_root = jsonDoc.array(); QJsonObject obj = json_root.at(0).toObject(); jaobj.insert("attr_id", obj.value("attr_id")); jaobj.insert("attr_val", qry.value(2).toString()); jajsonArray.append(jaobj); jdata.append(QString(",\"device_data\":\"%1\"").arg(QString(QJsonDocument(jajsonArray).toJson()).replace("\"","\\\""))); QString jasign = "bb5247f1a92411ea9bae7956d3c00d15app_keyf8bdea7926bcc7cb827d2eccf67fa559"; jasign.append(QString("bid%1").arg(hpdev.Bid)); jasign.append(QString("device_data%1").arg(QString(QJsonDocument(jajsonArray).toJson()))); jasign.append(QString("device_id%1").arg(hpdev.Device_id)); jasign.append(QString("device_name%1").arg(hpdev.Device_name)); jasign.append(QString("fid%1").arg(hpdev.Fid)); jasign.append(QString("format%1").arg("json")); jasign.append(QString("mid%1").arg(hpdev.Mid)); jasign.append(QString("pid%1").arg(hpdev.Pid)); jasign.append(QString("report_time%1").arg(myt)); jasign.append(QString("sign_method%1").arg("md5")); jasign.append(QString("timestamp%1").arg(myt)); jasign.append(QString("v%1").arg("1.0")); jasign.append(QString("zid%1").arg(hpdev.Zid)); jasign.append(QString("%1").arg("bb5247f1a92411ea9bae7956d3c00d15")); char md5str[33]; chkmd5(jasign.replace("\r","").replace("\n","").replace(" ","").toUtf8().data(),md5str); md5str[32]='\0'; jdata.append(QString(",\"sign\":\"%1\"").arg(md5str)); } } } QString jasign2=jdata.replace("\r","").replace("\n","").replace(" ",""); hpSyncData(4,QUuid::createUuid().toString().replace("{","").replace("}",""),"{"+jasign2+"}"); } } } if(!found5){ for(int i=0;i0){ jdata.append(QString(",\"mid\":\"%1\"").arg(hpdev.Mid)); jdata.append(QString(",\"device_name\":\"%1\"").arg(hpdev.Device_name)); jdata.append(QString(",\"device_id\":\"%1\"").arg(hpdev.Device_id)); QJsonParseError json_error; QJsonArray jajsonArray; QJsonDocument jsonDoc(QJsonDocument::fromJson(jaDevList.at(i).Device_data.toUtf8(),&json_error)); QJsonObject jaobj; QJsonObject jaobj2; QJsonObject jaobj3; if(json_error.error == QJsonParseError::NoError){ while(qry.next()){ QJsonArray json_root = jsonDoc.array(); QJsonObject obj = json_root.at(0).toObject(); jaobj.insert("attr_id", obj.value("attr_id")); jaobj.insert("attr_val", qry.value(2).toString()); jajsonArray.append(jaobj); jdata.append(QString(",\"device_data\":\"%1\"").arg(QString(QJsonDocument(jajsonArray).toJson()).replace("\"","\\\""))); QString jasign = "ff6322b1163b11ea91d31bbf0a452a93app_key9e555b8b2244ebc1f59695824b86c5a0"; jasign.append(QString("bid%1").arg(hpdev.Bid)); jasign.append(QString("device_data%1").arg(QString(QJsonDocument(jajsonArray).toJson()))); jasign.append(QString("device_id%1").arg(hpdev.Device_id)); jasign.append(QString("device_name%1").arg(hpdev.Device_name)); jasign.append(QString("fid%1").arg(hpdev.Fid)); jasign.append(QString("format%1").arg("json")); jasign.append(QString("mid%1").arg(hpdev.Mid)); jasign.append(QString("pid%1").arg(hpdev.Pid)); jasign.append(QString("report_time%1").arg(myt)); jasign.append(QString("sign_method%1").arg("md5")); jasign.append(QString("timestamp%1").arg(myt)); jasign.append(QString("v%1").arg("1.0")); jasign.append(QString("zid%1").arg(hpdev.Zid)); jasign.append(QString("%1").arg("ff6322b1163b11ea91d31bbf0a452a93")); char md5str[33]; chkmd5(jasign.replace("\r","").replace("\n","").replace(" ","").toUtf8().data(),md5str); md5str[32]='\0'; jdata.append(QString(",\"sign\":\"%1\"").arg(md5str)); } } } QString jasign2=jdata.replace("\r","").replace("\n","").replace(" ",""); jaSyncData(4,QUuid::createUuid().toString().replace("{","").replace("}",""),"{"+jasign2+"}"); } } } if(!found5){ for(int i=0;iappendData(QString("[ %1 dataupdate ] %2").arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss.zzz")).arg(deviceCode)); thread->appendDevDataList(deviceCode); } void Core::companyAlarmChanged(QString companyCode) { wsCenter->checkLastNote(companyCode); } void Core::SyncData(QString uuid, QString jsonstr) { ypSyncdataList.append(SyncRep(uuid,jsonstr)); } void Core::cnSyncData(int xh,QString uuid, QString jsonstr, int devCategory) { cnSyncdataLiet.append(CnSyncRep(xh,uuid,jsonstr,devCategory)); } void Core::NewcnSyncData(int xh,QString uuid, QString jsonstr, int devCategory) { NewcnSyncdataLiet.append(NewCnSyncRep(xh,uuid,jsonstr,devCategory)); } void Core::XfzdSyncData(int xh,QString uuid, QString jsonstr, int devCategory, QString deviceCode, QString openProjectId) { XfzdSyncdataLiet.append(XfzdSyncRep(xh,uuid,jsonstr,devCategory,deviceCode,openProjectId)); } void Core::jaSyncData(int xh,QString uuid,QString jsonstr) { qDebug()<0){ SyncRep rep = ypSyncdataList.first(); if(reply->error()==QNetworkReply::NoError){ ypCount=0; QString bak_info = QString::fromUtf8(reply->readAll()); repThread->appendSql(QString::fromUtf8("update `ypsync_t_rec` set `send`=1, `reply_str`='%1', `reply_time`='%2' where `uuid`='%3'") .arg(bak_info).arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss")).arg(rep.Id)); }else repThread->appendSql(QString::fromUtf8("update `ypsync_t_rec` set `reply_time`='%1' where `uuid`='%2'") .arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss")).arg(rep.Id)); ypSyncdataList.removeFirst(); } reply->deleteLater(); isSending = false; } void Core::finishedSlot2(QNetworkReply *reply) { if(cnSyncdataLiet.length()>0){ CnSyncRep rep = cnSyncdataLiet.first(); if(reply->error()==QNetworkReply::NoError){ cnCount=0; QString bak_info = QString::fromUtf8(reply->readAll()); repThread->appendSql(QString::fromUtf8("update `cnsync_t_rec` set `send`=1, `reply_str`='%1', `reply_time`='%2' where `uuid`='%3'") .arg(bak_info).arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss")).arg(rep.Id)); }else repThread->appendSql(QString::fromUtf8("update `cnsync_t_rec` set `reply_time`='%1' where `uuid`='%2'") .arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss")).arg(rep.Id)); cnSyncdataLiet.removeFirst(); } reply->deleteLater(); isSending2 = false; } void Core::finishedSlot3(QNetworkReply *reply) { if(jaSyncdataLiet.length()>0){ JaSyncRep rep = jaSyncdataLiet.first(); if(reply->error()==QNetworkReply::NoError){ jaCount=0; QString bak_info = QString::fromUtf8(reply->readAll()); repThread->appendSql(QString::fromUtf8("update `jasync_t_rec` set `send`=1, `reply_str`='%1', `reply_time`='%2' where `uuid`='%3'") .arg(bak_info).arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss")).arg(rep.Id)); // printf("%s\n",bak_info.toUtf8().data()); }else repThread->appendSql(QString::fromUtf8("update `jasync_t_rec` set `reply_time`='%1' where `uuid`='%2'") .arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss")).arg(rep.Id)); jaSyncdataLiet.removeFirst(); } reply->deleteLater(); // printf("finishedSlot3 jawater start\n"); isSending3 = false; } void Core::finishedSlot4(QNetworkReply *reply) { if(ypSyncDisdataList.length()>0){ SyncRep rep = ypSyncDisdataList.first(); if(reply->error()==QNetworkReply::NoError){ ypdisCount=0; QString bak_info = QString::fromUtf8(reply->readAll()); repThread->appendSql(QString::fromUtf8("update `ypsync_t_rec_dis` set `send`=1, `reply_str`='%1', `reply_time`='%2' where `uuid`='%3'") .arg(bak_info).arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss")).arg(rep.Id)); }else repThread->appendSql(QString::fromUtf8("update `ypsync_t_rec_dis` set `reply_time`='%1' where `uuid`='%2'") .arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss")).arg(rep.Id)); ypSyncDisdataList.removeFirst(); } reply->deleteLater(); isSending4 = false; } void Core::finishedSlot5(QNetworkReply *reply) { if(ypSyncXydataList.length()>0){ YpXySyncRep rep = ypSyncXydataList.first(); if(reply->error()==QNetworkReply::NoError){ ypxyCount=0; QString bak_info = QString::fromUtf8(reply->readAll()); repThread->appendSql(QString::fromUtf8("update `ypsync_t_rec_xy` set `send`=1, `reply_str`='%1', `reply_time`='%2' where `uuid`='%3'") .arg(bak_info).arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss")).arg(rep.Id)); }else repThread->appendSql(QString::fromUtf8("update `ypsync_t_rec_xy` set `reply_time`='%1' where `uuid`='%2'") .arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss")).arg(rep.Id)); ypSyncXydataList.removeFirst(); } reply->deleteLater(); isSending5 = false; } void Core::finishedSlot6(QNetworkReply *reply) { if(hpSyncdataLiet.length()>0){ HpSyncRep rep = hpSyncdataLiet.first(); if(reply->error()==QNetworkReply::NoError){ hpCount=0; QString bak_info = QString::fromUtf8(reply->readAll()); repThread->appendSql(QString::fromUtf8("update `hpsync_t_rec` set `send`=1, `reply_str`='%1', `reply_time`='%2' where `uuid`='%3'") .arg(bak_info).arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss")).arg(rep.Id)); // printf("%s\n",bak_info.toUtf8().data()); }else repThread->appendSql(QString::fromUtf8("update `hpsync_t_rec` set `reply_time`='%1' where `uuid`='%2'") .arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss")).arg(rep.Id)); hpSyncdataLiet.removeFirst(); } reply->deleteLater(); isSending6 = false; } void Core::finishedSlot7(QNetworkReply *reply) { if(NewcnSyncdataLiet.length()>0){ NewCnSyncRep rep = NewcnSyncdataLiet.first(); if(reply->error()==QNetworkReply::NoError){ QString bak_info = QString::fromUtf8(reply->readAll()); repThread->appendSql(QString::fromUtf8("update `newcnsync_t_rec` set `send`=1, `reply_str`='%1', `reply_time`='%2' where `uuid`='%3'") .arg(bak_info).arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss")).arg(rep.Id)); // printf("%s\n",bak_info.toUtf8().data()); }else repThread->appendSql(QString::fromUtf8("update `newcnsync_t_rec` set `reply_time`='%1' where `uuid`='%2'") .arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss")).arg(rep.Id)); NewcnSyncdataLiet.removeFirst(); } reply->deleteLater(); isSending7 = false; } void Core::finishedSlot8(QNetworkReply *reply) { if(ypYwSyncDataList.length()>0){ YpYwSyncRep rep = ypYwSyncDataList.first(); if(reply->error()==QNetworkReply::NoError){ QString bak_info = QString::fromUtf8(reply->readAll()); repThread->appendSql(QString::fromUtf8("update `ypywsync_t_rec` set `send`=1, `reply_str`='%1', `reply_time`='%2' where `uuid`='%3'") .arg(bak_info).arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss")).arg(rep.Id)); // printf("%s\n",bak_info.toUtf8().data()); }else repThread->appendSql(QString::fromUtf8("update `ypywsync_t_rec` set `reply_time`='%1' where `uuid`='%2'") .arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss")).arg(rep.Id)); ypYwSyncDataList.removeFirst(); } reply->deleteLater(); isSending8 = false; } void Core::finishedSlot9(QNetworkReply *reply) { if(XfzdSyncdataLiet.length()>0){ XfzdSyncRep rep = XfzdSyncdataLiet.first(); if(reply->error()==QNetworkReply::NoError){ QString bak_info = QString::fromUtf8(reply->readAll()); repThread->appendSql(QString::fromUtf8("update `xfzdsync_t_rec` set `send`=1, `reply_str`='%1', `reply_time`='%2' where `uuid`='%3'") .arg(bak_info).arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss")).arg(rep.Id)); // printf("%s\n",bak_info.toUtf8().data()); }else repThread->appendSql(QString::fromUtf8("update `xfzdsync_t_rec` set `reply_time`='%1' where `uuid`='%2'") .arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss")).arg(rep.Id)); XfzdSyncdataLiet.removeFirst(); } reply->deleteLater(); isSending9 = false; } void Core::reply_timeout() { if(ypSyncdataList.length()>0){ SyncRep rep = ypSyncdataList.first(); repThread->appendSql(QString::fromUtf8("update `ypsync_t_rec` set `reply_time`='%1' where `uuid`='%2'") .arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss")).arg(rep.Id)); ypSyncdataList.removeFirst(); } isSending = false; } void Core::reply_timeout2() { if(cnSyncdataLiet.length()>0){ CnSyncRep rep = cnSyncdataLiet.first(); repThread->appendSql(QString::fromUtf8("update `cnsync_t_rec` set `reply_time`='%1' where `uuid`='%2'") .arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss")).arg(rep.Id)); cnSyncdataLiet.removeFirst(); } isSending2 = false; } void Core::reply_timeout3() { if(jaSyncdataLiet.length()>0){ JaSyncRep rep = jaSyncdataLiet.first(); repThread->appendSql(QString::fromUtf8("update `jasync_t_rec` set `reply_time`='%1' where `uuid`='%2'") .arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss")).arg(rep.Id)); jaSyncdataLiet.removeFirst(); // printf("replytimeout jawater start\n"); } isSending3 = false; // printf("replytimeoutafter jawater start\n"); } void Core::reply_timeout4() { if(ypSyncDisdataList.length()>0){ SyncRep rep = ypSyncDisdataList.first(); repThread->appendSql(QString::fromUtf8("update `ypsync_t_rec_dis` set `reply_time`='%1' where `uuid`='%2'") .arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss")).arg(rep.Id)); ypSyncDisdataList.removeFirst(); } isSending4 = false; } void Core::reply_timeout5() { if(ypSyncXydataList.length()>0){ YpXySyncRep rep = ypSyncXydataList.first(); repThread->appendSql(QString::fromUtf8("update `ypsync_t_rec_xy` set `reply_time`='%1' where `uuid`='%2'") .arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss")).arg(rep.Id)); ypSyncXydataList.removeFirst(); } isSending5 = false; } void Core::reply_timeout6() { if(hpSyncdataLiet.length()>0){ HpSyncRep rep = hpSyncdataLiet.first(); repThread->appendSql(QString::fromUtf8("update `hpsync_t_rec` set `reply_time`='%1' where `uuid`='%2'") .arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss")).arg(rep.Id)); hpSyncdataLiet.removeFirst(); } isSending6 = false; } void Core::reply_timeout7() { if(NewcnSyncdataLiet.length()>0){ NewCnSyncRep rep = NewcnSyncdataLiet.first(); repThread->appendSql(QString::fromUtf8("update `newcnsync_t_rec` set `reply_time`='%1' where `uuid`='%2'") .arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss")).arg(rep.Id)); NewcnSyncdataLiet.removeFirst(); } isSending7 = false; } void Core::reply_timeout8() { if(ypYwSyncDataList.length()>0){ YpYwSyncRep rep = ypYwSyncDataList.first(); repThread->appendSql(QString::fromUtf8("update `ypywsync_t_rec` set `reply_time`='%1' where `uuid`='%2'") .arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss")).arg(rep.Id)); ypYwSyncDataList.removeFirst(); } isSending8 = false; } void Core::reply_timeout9() { if(XfzdSyncdataLiet.length()>0){ XfzdSyncRep rep = XfzdSyncdataLiet.first(); repThread->appendSql(QString::fromUtf8("update `xfzdsync_t_rec` set `reply_time`='%1' where `uuid`='%2'") .arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss")).arg(rep.Id)); XfzdSyncdataLiet.removeFirst(); } isSending9 = false; } void Core::time_out() { QSqlQuery qry; QSqlQuery qry1; int ret = 0; // printf("core time_out start\n"); time_t tmp_time = time(static_cast(nullptr)); ytShm->updatetime[CORE_MAIN] = tmp_time; if(!mdbOpened) { mdbOpened = mdb.open(); } if(isRunning) return; isRunning = true; if((tmp_time-jaworktime)>=1800){ // printf("core worktime start\n"); jaworktime=tmp_time; jaDevList.clear(); qry = mdb.exec("select pid,bid,fid,tid,mid,zid,val,device_id,device_name,device_data,name,detection_id,sid,mainframe_id,mainframe_name,loop_number,position_number,report_time,device_type,company_code from sp_jingan_share"); while(qry.next()){ jaDevList.append(JASyncDev(qry.value(0).toString(), qry.value(1).toString(), qry.value(2).toString(), qry.value(3).toString(), qry.value(4).toString(), qry.value(5).toString(), qry.value(6).toInt(), qry.value(7).toString(), qry.value(8).toString(), qry.value(9).toString().trimmed(), qry.value(10).toString(), qry.value(11).toString(), qry.value(12).toString(), qry.value(13).toString(), qry.value(14).toString(), qry.value(15).toString(), qry.value(16).toString(), qry.value(17).toString(), qry.value(18).toInt(), qry.value(19).toString())); } // printf("core jaworktime start\n"); qry.clear(); // cnDevList.clear(); // qry = mdb.exec("select owner_code,dwtype,object_code,start_port,rec_cur,object_name, ownBid, devCategory, type from sp_changning_share"); // while(qry.next()){ // cnDevList.append(CNSyncDev(qry.value(0).toString(), // qry.value(5).toString(), // qry.value(1).toString(), // qry.value(2).toString(), // qry.value(3).toString().trimmed(), // qry.value(4).toUInt(), // qry.value(6).toString(), // qry.value(7).toInt(), // qry.value(8).toInt())); // } // qry.clear(); syncXyDevList.clear(); qry = mdb.exec("select owner_code,owner_dwtype,object_code,start_port,rec_cur,object_name,device_name,company_code,company_name from sp_yangpuxy_share"); while(qry.next()){ syncXyDevList.append(YPSyncXyDev(qry.value(0).toString(), qry.value(1).toInt(), qry.value(2).toString(), qry.value(3).toInt(), qry.value(4).toUInt(), qry.value(5).toString(), qry.value(6).toString(), qry.value(7).toString(), qry.value(8).toString())); } // printf("core ypxyworktime start\n"); qry.clear(); hpDevList.clear(); qry = mdb.exec("select pid,bid,fid,tid,mid,zid,val,device_id,device_name,device_data,name,detection_id,sid,mainframe_id,mainframe_name,loop_number,position_number,report_time,device_type,company_code from sp_huangpu_share"); while(qry.next()){ hpDevList.append(HPSyncDev(qry.value(0).toString(), qry.value(1).toString(), qry.value(2).toString(), qry.value(3).toString(), qry.value(4).toString(), qry.value(5).toString(), qry.value(6).toInt(), qry.value(7).toString(), qry.value(8).toString(), qry.value(9).toString().trimmed(), qry.value(10).toString(), qry.value(11).toString(), qry.value(12).toString(), qry.value(13).toString(), qry.value(14).toString(), qry.value(15).toString(), qry.value(16).toString(), qry.value(17).toString(), qry.value(18).toInt(), qry.value(19).toString())); } // printf("core hpworktime start\n"); qry.clear(); NewcnDevList.clear(); qry = mdb.exec("select device_code,device_name,descript,device_type,device_type_name,open_project_id, dwtype, data, port from sp_new_changning_share"); while(qry.next()){ NewcnDevList.append(NewCNSyncDev(qry.value(0).toString(), qry.value(1).toString(), qry.value(2).toString(), qry.value(3).toInt(), qry.value(4).toString(), qry.value(5).toString(), qry.value(6).toInt(), qry.value(7).toString().trimmed(), qry.value(8).toString())); } // printf("core newcnworktime start\n"); qry.clear(); // thread->set_cndevlist(cnDevList); for(int i=0;i(nullptr)); ytShm->updatetime[CORE_MAIN] = tmp_time; JASyncDev cndev = jaDevList.at(i); time_t myt=time(NULL); QString jdata = ""; if(cndev.Device_type==2){ QString sql = QString("select point_code, point_data, dwtype, data_time from sp_owner_status where device_id=%1").arg(cndev.Device_id); jdata.append(QString("\"app_key\":\"%1\"").arg("9e555b8b2244ebc1f59695824b86c5a0")); jdata.append(QString(",\"timestamp\":\"%1\"").arg(myt)); jdata.append(QString(",\"format\":\"%1\"").arg("json")); jdata.append(QString(",\"v\":\"%1\"").arg("1.0")); jdata.append(QString(",\"sign_method\":\"%1\"").arg("md5")); jdata.append(QString(",\"pid\":\"%1\"").arg(cndev.Pid)); jdata.append(QString(",\"bid\":\"%1\"").arg(cndev.Bid)); jdata.append(QString(",\"fid\":\"%1\"").arg(cndev.Fid)); jdata.append(QString(",\"zid\":\"%1\"").arg(cndev.Zid)); jdata.append(QString(",\"report_time\":\"%1\"").arg(myt)); qry = mdb.exec(sql); if(jaDevList.at(i).Device_data.length()>0){ jdata.append(QString(",\"mid\":\"%1\"").arg(cndev.Mid)); jdata.append(QString(",\"device_name\":\"%1\"").arg(cndev.Device_name)); jdata.append(QString(",\"device_id\":\"%1\"").arg(cndev.Device_id)); QJsonParseError json_error; QJsonArray jajsonArray; QJsonDocument jsonDoc(QJsonDocument::fromJson(jaDevList.at(i).Device_data.toUtf8(),&json_error)); QJsonObject jaobj; QJsonObject jaobj2; QJsonObject jaobj3; if(json_error.error == QJsonParseError::NoError){ while(qry.next()){ if(qry.value(2).toInt()==2){ if(qry.value(0).toInt()==4){ QJsonArray json_root = jsonDoc.array(); if(json_root.size()>1){ QString qryval = qry.value(1).toString(); float num = qryval.toFloat(); QJsonObject obj = json_root.at(0).toObject(); QJsonObject obj2 = json_root.at(1).toObject(); QJsonObject obj3 = json_root.at(2).toObject(); jaobj.insert("attr_id", obj.value("attr_id")); jaobj.insert("attr_val", obj.value("attr_val")); jaobj2.insert("attr_id", obj2.value("attr_id")); jaobj2.insert("attr_val", qry.value(1).toString()); jaobj3.insert("attr_id", obj3.value("attr_id")); jaobj3.insert("attr_val", obj3.value("attr_val")); jajsonArray.append(jaobj); jajsonArray.append(jaobj2); jajsonArray.append(jaobj3); }else{ QJsonObject obj = json_root.at(0).toObject(); jaobj.insert("attr_id", obj.value("attr_id")); jaobj.insert("attr_val", qry.value(1).toString()); jajsonArray.append(jaobj); } jdata.append(QString(",\"device_data\":\"%1\"").arg(QString(QJsonDocument(jajsonArray).toJson()).replace("\"","\\\""))); QString jasign = "ff6322b1163b11ea91d31bbf0a452a93app_key9e555b8b2244ebc1f59695824b86c5a0"; jasign.append(QString("bid%1").arg(cndev.Bid)); jasign.append(QString("device_data%1").arg(QString(QJsonDocument(jajsonArray).toJson()))); jasign.append(QString("device_id%1").arg(cndev.Device_id)); jasign.append(QString("device_name%1").arg(cndev.Device_name)); jasign.append(QString("fid%1").arg(cndev.Fid)); jasign.append(QString("format%1").arg("json")); jasign.append(QString("mid%1").arg(cndev.Mid)); jasign.append(QString("pid%1").arg(cndev.Pid)); jasign.append(QString("report_time%1").arg(myt)); jasign.append(QString("sign_method%1").arg("md5")); jasign.append(QString("timestamp%1").arg(myt)); jasign.append(QString("v%1").arg("1.0")); jasign.append(QString("zid%1").arg(cndev.Zid)); jasign.append(QString("%1").arg("ff6322b1163b11ea91d31bbf0a452a93")); char md5str[33]; chkmd5(jasign.replace("\r","").replace("\n","").replace(" ","").toUtf8().data(),md5str); md5str[32]='\0'; jdata.append(QString(",\"sign\":\"%1\"").arg(md5str)); } } } } } QString jasign2=jdata.replace("\r","").replace("\n","").replace(" ",""); jaSyncData(0,QUuid::createUuid().toString().replace("{","").replace("}",""),"{"+jasign2+"}"); }else if(cndev.Device_type==6){ QString sql = QString("select point_code, point_data, content, data_time from sp_owner_status where device_id=%1").arg(cndev.Device_id); jdata.append(QString("\"app_key\":\"%1\"").arg("9e555b8b2244ebc1f59695824b86c5a0")); jdata.append(QString(",\"timestamp\":\"%1\"").arg(myt)); jdata.append(QString(",\"format\":\"%1\"").arg("json")); jdata.append(QString(",\"v\":\"%1\"").arg("1.0")); jdata.append(QString(",\"sign_method\":\"%1\"").arg("md5")); jdata.append(QString(",\"pid\":\"%1\"").arg(cndev.Pid)); jdata.append(QString(",\"bid\":\"%1\"").arg(cndev.Bid)); jdata.append(QString(",\"fid\":\"%1\"").arg(cndev.Fid)); jdata.append(QString(",\"zid\":\"%1\"").arg(cndev.Zid)); jdata.append(QString(",\"report_time\":\"%1\"").arg(myt)); qry = mdb.exec(sql); jdata.append(QString(",\"mid\":\"%1\"").arg(cndev.Mid)); jdata.append(QString(",\"device_name\":\"%1\"").arg(cndev.Device_name)); QList pnoList = getJaPnoValue(jaDevList.at(i).Device_data); QJsonArray jajsonArray; for(int i=0;i1){ QJsonObject obj = json_root.at(0).toObject(); QJsonObject obj2 = json_root.at(1).toObject(); QJsonObject obj3 = json_root.at(2).toObject(); QJsonObject obj4 = json_root.at(3).toObject(); QJsonObject obj5 = json_root.at(4).toObject(); QJsonObject obj6 = json_root.at(5).toObject(); jaobj.insert("attr_id", obj.value("attr")); jaobj.insert("attr_val", obj.value("default1")); jaobj2.insert("attr_id", obj2.value("attr")); jaobj2.insert("attr_val", obj2.value("default1")); jaobj3.insert("attr_id", obj3.value("attr")); jaobj3.insert("attr_val", obj3.value("default1")); jaobj4.insert("attr_id", obj4.value("attr")); jaobj4.insert("attr_val", obj4.value("default1")); jaobj5.insert("attr_id", obj5.value("attr")); jaobj5.insert("attr_val", obj5.value("default1")); jaobj6.insert("attr_id", obj6.value("attr")); jaobj6.insert("attr_val", obj6.value("default1")); jajsonArray.append(jaobj); jajsonArray.append(jaobj2); jajsonArray.append(jaobj3); jajsonArray.append(jaobj4); jajsonArray.append(jaobj5); jajsonArray.append(jaobj6); } } jdata.append(QString(",\"device_data\":\"%1\"").arg(QString(QJsonDocument(jajsonArray).toJson()).replace("\"","\\\""))); QString jasign = "ff6322b1163b11ea91d31bbf0a452a93app_key9e555b8b2244ebc1f59695824b86c5a0"; jasign.append(QString("bid%1").arg(cndev.Bid)); jasign.append(QString("device_data%1").arg(QString(QJsonDocument(jajsonArray).toJson()))); jasign.append(QString("device_id%1").arg("10"+cndev.Device_id)); jasign.append(QString("device_name%1").arg(cndev.Device_name)); jasign.append(QString("fid%1").arg(cndev.Fid)); jasign.append(QString("format%1").arg("json")); jasign.append(QString("mid%1").arg(cndev.Mid)); jasign.append(QString("pid%1").arg(cndev.Pid)); jasign.append(QString("report_time%1").arg(myt)); jasign.append(QString("sign_method%1").arg("md5")); jasign.append(QString("timestamp%1").arg(myt)); jasign.append(QString("v%1").arg("1.0")); jasign.append(QString("zid%1").arg(cndev.Zid)); jasign.append(QString("%1").arg("ff6322b1163b11ea91d31bbf0a452a93")); char md5str[33]; chkmd5(jasign.replace("\r","").replace("\n","").replace(" ","").toUtf8().data(),md5str); md5str[32]='\0'; jdata.append(QString(",\"sign\":\"%1\"").arg(md5str)); QString jasign4=jdata.replace("\r","").replace("\n","").replace(" ",""); jaSyncData(0,QUuid::createUuid().toString().replace("{","").replace("}",""),"{"+jasign4+"}"); }else if(cndev.Device_type==7){ QString sql = QString("select point_code, point_data, content, data_time from sp_owner_status where device_id=%1").arg(cndev.Device_id); jdata.append(QString("\"app_key\":\"%1\"").arg("9e555b8b2244ebc1f59695824b86c5a0")); jdata.append(QString(",\"timestamp\":\"%1\"").arg(myt)); jdata.append(QString(",\"format\":\"%1\"").arg("json")); jdata.append(QString(",\"v\":\"%1\"").arg("1.0")); jdata.append(QString(",\"sign_method\":\"%1\"").arg("md5")); jdata.append(QString(",\"pid\":\"%1\"").arg(cndev.Pid)); jdata.append(QString(",\"bid\":\"%1\"").arg(cndev.Bid)); jdata.append(QString(",\"fid\":\"%1\"").arg(cndev.Fid)); jdata.append(QString(",\"zid\":\"%1\"").arg(cndev.Zid)); jdata.append(QString(",\"report_time\":\"%1\"").arg(myt)); qry = mdb.exec(sql); jdata.append(QString(",\"mid\":\"%1\"").arg(cndev.Mid)); jdata.append(QString(",\"device_name\":\"%1\"").arg(cndev.Device_name)); QList pnoList = getJaPnoValue(jaDevList.at(i).Device_data); QJsonArray jajsonArray; // for(int i=0;i0){ jdata.append(QString(",\"mid\":\"%1\"").arg(cndev.Mid)); jdata.append(QString(",\"device_name\":\"%1\"").arg(cndev.Device_name)); jdata.append(QString(",\"device_id\":\"%1\"").arg(cndev.Device_id)); QJsonParseError json_error; QJsonArray jajsonArray; QJsonDocument jsonDoc(QJsonDocument::fromJson(jaDevList.at(i).Device_data.toUtf8(),&json_error)); QJsonObject jaobj; QJsonObject jaobj2; QJsonObject jaobj3; if(json_error.error == QJsonParseError::NoError){ while(qry.next()){ if(qry.value(2).toInt()==2){ if(qry.value(0).toInt()==4){ QJsonArray json_root = jsonDoc.array(); if(json_root.size()>1){ QString qryval = qry.value(1).toString(); float num = qryval.toFloat(); QJsonObject obj = json_root.at(0).toObject(); QJsonObject obj2 = json_root.at(1).toObject(); QJsonObject obj3 = json_root.at(2).toObject(); jaobj.insert("attr_id", obj.value("attr_id")); jaobj.insert("attr_val", obj.value("attr_val")); jaobj2.insert("attr_id", obj2.value("attr_id")); jaobj2.insert("attr_val", qry.value(1).toString()); jaobj3.insert("attr_id", obj3.value("attr_id")); jaobj3.insert("attr_val", obj3.value("attr_val")); jajsonArray.append(jaobj); jajsonArray.append(jaobj2); jajsonArray.append(jaobj3); }else{ QJsonObject obj = json_root.at(0).toObject(); jaobj.insert("attr_id", obj.value("attr_id")); jaobj.insert("attr_val", qry.value(1).toString()); jajsonArray.append(jaobj); } jdata.append(QString(",\"device_data\":\"%1\"").arg(QString(QJsonDocument(jajsonArray).toJson()).replace("\"","\\\""))); QString jasign = "ff6322b1163b11ea91d31bbf0a452a93app_key9e555b8b2244ebc1f59695824b86c5a0"; jasign.append(QString("bid%1").arg(cndev.Bid)); jasign.append(QString("device_data%1").arg(QString(QJsonDocument(jajsonArray).toJson()))); jasign.append(QString("device_id%1").arg(cndev.Device_id)); jasign.append(QString("device_name%1").arg(cndev.Device_name)); jasign.append(QString("fid%1").arg(cndev.Fid)); jasign.append(QString("format%1").arg("json")); jasign.append(QString("mid%1").arg(cndev.Mid)); jasign.append(QString("pid%1").arg(cndev.Pid)); jasign.append(QString("report_time%1").arg(myt)); jasign.append(QString("sign_method%1").arg("md5")); jasign.append(QString("timestamp%1").arg(myt)); jasign.append(QString("v%1").arg("1.0")); jasign.append(QString("zid%1").arg(cndev.Zid)); jasign.append(QString("%1").arg("ff6322b1163b11ea91d31bbf0a452a93")); char md5str[33]; chkmd5(jasign.replace("\r","").replace("\n","").replace(" ","").toUtf8().data(),md5str); md5str[32]='\0'; jdata.append(QString(",\"sign\":\"%1\"").arg(md5str)); } } } } } QString jasign2=jdata.replace("\r","").replace("\n","").replace(" ",""); jaSyncData(4,QUuid::createUuid().toString().replace("{","").replace("}",""),"{"+jasign2+"}"); }else if(cndev.Device_type==5){ QString sql = QString("select point_code, point_data, dwtype, data_time from sp_owner_status where device_id=%1").arg(cndev.Device_id); jdata.append(QString("\"app_key\":\"%1\"").arg("9e555b8b2244ebc1f59695824b86c5a0")); jdata.append(QString(",\"timestamp\":\"%1\"").arg(myt)); jdata.append(QString(",\"format\":\"%1\"").arg("json")); jdata.append(QString(",\"v\":\"%1\"").arg("1.0")); jdata.append(QString(",\"sign_method\":\"%1\"").arg("md5")); jdata.append(QString(",\"pid\":\"%1\"").arg(cndev.Pid)); jdata.append(QString(",\"bid\":\"%1\"").arg(cndev.Bid)); jdata.append(QString(",\"fid\":\"%1\"").arg(cndev.Fid)); jdata.append(QString(",\"zid\":\"%1\"").arg(cndev.Zid)); jdata.append(QString(",\"report_time\":\"%1\"").arg(myt)); qry = mdb.exec(sql); if(jaDevList.at(i).Device_data.length()>0){ jdata.append(QString(",\"mid\":\"%1\"").arg(cndev.Mid)); jdata.append(QString(",\"device_name\":\"%1\"").arg(cndev.Device_name)); jdata.append(QString(",\"device_id\":\"%1\"").arg(cndev.Device_id)); QJsonParseError json_error; QJsonArray jajsonArray; QJsonDocument jsonDoc(QJsonDocument::fromJson(jaDevList.at(i).Device_data.toUtf8(),&json_error)); QJsonObject jaobj; QJsonObject jaobj2; QJsonObject jaobj3; if(json_error.error == QJsonParseError::NoError){ while(qry.next()){ if(qry.value(2).toInt()==5){ if(qry.value(0).toInt()==4){ QJsonArray json_root = jsonDoc.array(); QJsonObject obj = json_root.at(0).toObject(); jaobj.insert("attr_id", obj.value("attr_id")); jaobj.insert("attr_val", qry.value(1).toString()); jajsonArray.append(jaobj); jdata.append(QString(",\"device_data\":\"%1\"").arg(QString(QJsonDocument(jajsonArray).toJson()).replace("\"","\\\""))); QString jasign = "ff6322b1163b11ea91d31bbf0a452a93app_key9e555b8b2244ebc1f59695824b86c5a0"; jasign.append(QString("bid%1").arg(cndev.Bid)); jasign.append(QString("device_data%1").arg(QString(QJsonDocument(jajsonArray).toJson()))); jasign.append(QString("device_id%1").arg(cndev.Device_id)); jasign.append(QString("device_name%1").arg(cndev.Device_name)); jasign.append(QString("fid%1").arg(cndev.Fid)); jasign.append(QString("format%1").arg("json")); jasign.append(QString("mid%1").arg(cndev.Mid)); jasign.append(QString("pid%1").arg(cndev.Pid)); jasign.append(QString("report_time%1").arg(myt)); jasign.append(QString("sign_method%1").arg("md5")); jasign.append(QString("timestamp%1").arg(myt)); jasign.append(QString("v%1").arg("1.0")); jasign.append(QString("zid%1").arg(cndev.Zid)); jasign.append(QString("%1").arg("ff6322b1163b11ea91d31bbf0a452a93")); char md5str[33]; chkmd5(jasign.replace("\r","").replace("\n","").replace(" ","").toUtf8().data(),md5str); md5str[32]='\0'; jdata.append(QString(",\"sign\":\"%1\"").arg(md5str)); } } } } } QString jasign2=jdata.replace("\r","").replace("\n","").replace(" ",""); jaSyncData(4,QUuid::createUuid().toString().replace("{","").replace("}",""),"{"+jasign2+"}"); }else if(cndev.Device_type==15){ // logThread->appendData(QString("jinruceshi[%1]=====").arg("进来了")); QString sql = QString("select point_code, point_data, dwtype, data_time from sp_owner_status where device_id=%1").arg(cndev.Device_id); jdata.append(QString("\"app_key\":\"%1\"").arg("9e555b8b2244ebc1f59695824b86c5a0")); jdata.append(QString(",\"timestamp\":\"%1\"").arg(myt)); jdata.append(QString(",\"format\":\"%1\"").arg("json")); jdata.append(QString(",\"v\":\"%1\"").arg("1.0")); jdata.append(QString(",\"sign_method\":\"%1\"").arg("md5")); jdata.append(QString(",\"pid\":\"%1\"").arg(cndev.Pid)); jdata.append(QString(",\"bid\":\"%1\"").arg(cndev.Bid)); jdata.append(QString(",\"fid\":\"%1\"").arg(cndev.Fid)); jdata.append(QString(",\"zid\":\"%1\"").arg(cndev.Zid)); jdata.append(QString(",\"report_time\":\"%1\"").arg(myt)); qry = mdb.exec(sql); if(jaDevList.at(i).Device_data.length()>0){ jdata.append(QString(",\"mid\":\"%1\"").arg(cndev.Mid)); jdata.append(QString(",\"device_name\":\"%1\"").arg(cndev.Device_name)); jdata.append(QString(",\"device_id\":\"%1\"").arg(cndev.Device_id)); QJsonParseError json_error; QJsonArray jajsonArray; QJsonDocument jsonDoc(QJsonDocument::fromJson(jaDevList.at(i).Device_data.toUtf8(),&json_error)); QJsonObject jaobj; QJsonObject jaobj2; QJsonObject jaobj3; if(json_error.error == QJsonParseError::NoError){ while(qry.next()){ if(qry.value(2).toInt()==5){ if(qry.value(0).toInt()==4){ QJsonArray json_root = jsonDoc.array(); QJsonObject obj = json_root.at(0).toObject(); jaobj.insert("attr_id", obj.value("attr_id")); jaobj.insert("attr_val", qry.value(1).toString()); jajsonArray.append(jaobj); jdata.append(QString(",\"device_data\":\"%1\"").arg(QString(QJsonDocument(jajsonArray).toJson()).replace("\"","\\\""))); QString jasign = "ff6322b1163b11ea91d31bbf0a452a93app_key9e555b8b2244ebc1f59695824b86c5a0"; jasign.append(QString("bid%1").arg(cndev.Bid)); jasign.append(QString("device_data%1").arg(QString(QJsonDocument(jajsonArray).toJson()))); jasign.append(QString("device_id%1").arg(cndev.Device_id)); jasign.append(QString("device_name%1").arg(cndev.Device_name)); jasign.append(QString("fid%1").arg(cndev.Fid)); jasign.append(QString("format%1").arg("json")); jasign.append(QString("mid%1").arg(cndev.Mid)); jasign.append(QString("pid%1").arg(cndev.Pid)); jasign.append(QString("report_time%1").arg(myt)); jasign.append(QString("sign_method%1").arg("md5")); jasign.append(QString("timestamp%1").arg(myt)); jasign.append(QString("v%1").arg("1.0")); jasign.append(QString("zid%1").arg(cndev.Zid)); jasign.append(QString("%1").arg("ff6322b1163b11ea91d31bbf0a452a93")); char md5str[33]; chkmd5(jasign.replace("\r","").replace("\n","").replace(" ","").toUtf8().data(),md5str); md5str[32]='\0'; jdata.append(QString(",\"sign\":\"%1\"").arg(md5str)); } } } } } QString jasign2=jdata.replace("\r","").replace("\n","").replace(" ",""); // logThread->appendData(QString("jiesuceshi[%1]=====").arg(jasign2)); jaSyncData(3,QUuid::createUuid().toString().replace("{","").replace("}",""),"{"+jasign2+"}"); } } for(int i=0;i(nullptr)); ytShm->updatetime[CORE_MAIN] = tmp_time; HPSyncDev hpdev = hpDevList.at(i); time_t myt=time(NULL); QString jdata = ""; if(hpdev.Device_type==2){ QString sql = QString("select point_code, point_data, dwtype, data_time from sp_owner_status where device_id=%1").arg(hpdev.Device_id); jdata.append(QString("\"app_key\":\"%1\"").arg("f8bdea7926bcc7cb827d2eccf67fa559")); jdata.append(QString(",\"timestamp\":\"%1\"").arg(myt)); jdata.append(QString(",\"format\":\"%1\"").arg("json")); jdata.append(QString(",\"v\":\"%1\"").arg("1.0")); jdata.append(QString(",\"sign_method\":\"%1\"").arg("md5")); jdata.append(QString(",\"pid\":\"%1\"").arg(hpdev.Pid)); jdata.append(QString(",\"bid\":\"%1\"").arg(hpdev.Bid)); jdata.append(QString(",\"fid\":\"%1\"").arg(hpdev.Fid)); jdata.append(QString(",\"zid\":\"%1\"").arg(hpdev.Zid)); jdata.append(QString(",\"report_time\":\"%1\"").arg(myt)); qry = mdb.exec(sql); if(hpDevList.at(i).Device_data.length()>0){ jdata.append(QString(",\"mid\":\"%1\"").arg(hpdev.Mid)); jdata.append(QString(",\"device_name\":\"%1\"").arg(hpdev.Device_name)); jdata.append(QString(",\"device_id\":\"%1\"").arg(hpdev.Device_id)); QJsonParseError json_error; QJsonArray jajsonArray; QJsonDocument jsonDoc(QJsonDocument::fromJson(hpDevList.at(i).Device_data.toUtf8(),&json_error)); QJsonObject jaobj; QJsonObject jaobj2; QJsonObject jaobj3; if(json_error.error == QJsonParseError::NoError){ while(qry.next()){ if(qry.value(2).toInt()==2){ if(qry.value(0).toInt()==4){ QJsonArray json_root = jsonDoc.array(); if(json_root.size()>1){ QString qryval = qry.value(1).toString(); float num = qryval.toFloat(); QJsonObject obj = json_root.at(0).toObject(); QJsonObject obj2 = json_root.at(1).toObject(); QJsonObject obj3 = json_root.at(2).toObject(); jaobj.insert("attr_id", obj.value("attr_id")); jaobj.insert("attr_val", obj.value("attr_val")); jaobj2.insert("attr_id", obj2.value("attr_id")); jaobj2.insert("attr_val", qry.value(1).toString()); jaobj3.insert("attr_id", obj3.value("attr_id")); jaobj3.insert("attr_val", obj3.value("attr_val")); jajsonArray.append(jaobj); jajsonArray.append(jaobj2); jajsonArray.append(jaobj3); }else{ QJsonObject obj = json_root.at(0).toObject(); jaobj.insert("attr_id", obj.value("attr_id")); jaobj.insert("attr_val", qry.value(1).toString()); jajsonArray.append(jaobj); } jdata.append(QString(",\"device_data\":\"%1\"").arg(QString(QJsonDocument(jajsonArray).toJson()).replace("\"","\\\""))); QString jasign = "bb5247f1a92411ea9bae7956d3c00d15app_keyf8bdea7926bcc7cb827d2eccf67fa559"; jasign.append(QString("bid%1").arg(hpdev.Bid)); jasign.append(QString("device_data%1").arg(QString(QJsonDocument(jajsonArray).toJson()))); jasign.append(QString("device_id%1").arg(hpdev.Device_id)); jasign.append(QString("device_name%1").arg(hpdev.Device_name)); jasign.append(QString("fid%1").arg(hpdev.Fid)); jasign.append(QString("format%1").arg("json")); jasign.append(QString("mid%1").arg(hpdev.Mid)); jasign.append(QString("pid%1").arg(hpdev.Pid)); jasign.append(QString("report_time%1").arg(myt)); jasign.append(QString("sign_method%1").arg("md5")); jasign.append(QString("timestamp%1").arg(myt)); jasign.append(QString("v%1").arg("1.0")); jasign.append(QString("zid%1").arg(hpdev.Zid)); jasign.append(QString("%1").arg("bb5247f1a92411ea9bae7956d3c00d15")); char md5str[33]; chkmd5(jasign.replace("\r","").replace("\n","").replace(" ","").toUtf8().data(),md5str); md5str[32]='\0'; jdata.append(QString(",\"sign\":\"%1\"").arg(md5str)); } } } } } QString jasign2=jdata.replace("\r","").replace("\n","").replace(" ",""); hpSyncData(0,QUuid::createUuid().toString().replace("{","").replace("}",""),"{"+jasign2+"}"); }else if(hpdev.Device_type==6){ QString sql = QString("select point_code, point_data, content, data_time from sp_owner_status where device_id=%1").arg(hpdev.Device_id); jdata.append(QString("\"app_key\":\"%1\"").arg("f8bdea7926bcc7cb827d2eccf67fa559")); jdata.append(QString(",\"timestamp\":\"%1\"").arg(myt)); jdata.append(QString(",\"format\":\"%1\"").arg("json")); jdata.append(QString(",\"v\":\"%1\"").arg("1.0")); jdata.append(QString(",\"sign_method\":\"%1\"").arg("md5")); jdata.append(QString(",\"pid\":\"%1\"").arg(hpdev.Pid)); jdata.append(QString(",\"bid\":\"%1\"").arg(hpdev.Bid)); jdata.append(QString(",\"fid\":\"%1\"").arg(hpdev.Fid)); jdata.append(QString(",\"zid\":\"%1\"").arg(hpdev.Zid)); jdata.append(QString(",\"report_time\":\"%1\"").arg(myt)); qry = mdb.exec(sql); jdata.append(QString(",\"mid\":\"%1\"").arg(hpdev.Mid)); jdata.append(QString(",\"device_name\":\"%1\"").arg(hpdev.Device_name)); QList pnoList = getJaPnoValue(hpDevList.at(i).Device_data); QJsonArray jajsonArray; for(int i=0;i1){ QJsonObject obj = json_root.at(0).toObject(); QJsonObject obj2 = json_root.at(1).toObject(); QJsonObject obj3 = json_root.at(2).toObject(); QJsonObject obj4 = json_root.at(3).toObject(); QJsonObject obj5 = json_root.at(4).toObject(); QJsonObject obj6 = json_root.at(5).toObject(); jaobj.insert("attr_id", obj.value("attr")); jaobj.insert("attr_val", obj.value("default1")); jaobj2.insert("attr_id", obj2.value("attr")); jaobj2.insert("attr_val", obj2.value("default1")); jaobj3.insert("attr_id", obj3.value("attr")); jaobj3.insert("attr_val", obj3.value("default1")); jaobj4.insert("attr_id", obj4.value("attr")); jaobj4.insert("attr_val", obj4.value("default1")); jaobj5.insert("attr_id", obj5.value("attr")); jaobj5.insert("attr_val", obj5.value("default1")); jaobj6.insert("attr_id", obj6.value("attr")); jaobj6.insert("attr_val", obj6.value("default1")); jajsonArray.append(jaobj); jajsonArray.append(jaobj2); jajsonArray.append(jaobj3); jajsonArray.append(jaobj4); jajsonArray.append(jaobj5); jajsonArray.append(jaobj6); } } jdata.append(QString(",\"device_data\":\"%1\"").arg(QString(QJsonDocument(jajsonArray).toJson()).replace("\"","\\\""))); QString jasign = "bb5247f1a92411ea9bae7956d3c00d15app_keyf8bdea7926bcc7cb827d2eccf67fa559"; jasign.append(QString("bid%1").arg(hpdev.Bid)); jasign.append(QString("device_data%1").arg(QString(QJsonDocument(jajsonArray).toJson()))); jasign.append(QString("device_id%1").arg("10"+hpdev.Device_id)); jasign.append(QString("device_name%1").arg(hpdev.Device_name)); jasign.append(QString("fid%1").arg(hpdev.Fid)); jasign.append(QString("format%1").arg("json")); jasign.append(QString("mid%1").arg(hpdev.Mid)); jasign.append(QString("pid%1").arg(hpdev.Pid)); jasign.append(QString("report_time%1").arg(myt)); jasign.append(QString("sign_method%1").arg("md5")); jasign.append(QString("timestamp%1").arg(myt)); jasign.append(QString("v%1").arg("1.0")); jasign.append(QString("zid%1").arg(hpdev.Zid)); jasign.append(QString("%1").arg("bb5247f1a92411ea9bae7956d3c00d15")); char md5str[33]; chkmd5(jasign.replace("\r","").replace("\n","").replace(" ","").toUtf8().data(),md5str); md5str[32]='\0'; jdata.append(QString(",\"sign\":\"%1\"").arg(md5str)); QString jasign4=jdata.replace("\r","").replace("\n","").replace(" ",""); hpSyncData(0,QUuid::createUuid().toString().replace("{","").replace("}",""),"{"+jasign4+"}"); }else if(hpdev.Device_type==7){ QString sql = QString("select point_code, point_data, content, data_time from sp_owner_status where device_id=%1").arg(hpdev.Device_id); jdata.append(QString("\"app_key\":\"%1\"").arg("9e555b8b2244ebc1f59695824b86c5a0")); jdata.append(QString(",\"timestamp\":\"%1\"").arg(myt)); jdata.append(QString(",\"format\":\"%1\"").arg("json")); jdata.append(QString(",\"v\":\"%1\"").arg("1.0")); jdata.append(QString(",\"sign_method\":\"%1\"").arg("md5")); jdata.append(QString(",\"pid\":\"%1\"").arg(hpdev.Pid)); jdata.append(QString(",\"bid\":\"%1\"").arg(hpdev.Bid)); jdata.append(QString(",\"fid\":\"%1\"").arg(hpdev.Fid)); jdata.append(QString(",\"zid\":\"%1\"").arg(hpdev.Zid)); jdata.append(QString(",\"report_time\":\"%1\"").arg(myt)); qry = mdb.exec(sql); jdata.append(QString(",\"mid\":\"%1\"").arg(hpdev.Mid)); jdata.append(QString(",\"device_name\":\"%1\"").arg(hpdev.Device_name)); QList pnoList = getJaPnoValue(hpDevList.at(i).Device_data); QJsonArray jajsonArray; QString device_code; while(qry.next()){ for(int i=0;i0){ jdata.append(QString(",\"mid\":\"%1\"").arg(hpdev.Mid)); jdata.append(QString(",\"device_name\":\"%1\"").arg(hpdev.Device_name)); jdata.append(QString(",\"device_id\":\"%1\"").arg(hpdev.Device_id)); QJsonParseError json_error; QJsonArray jajsonArray; QJsonDocument jsonDoc(QJsonDocument::fromJson(hpDevList.at(i).Device_data.toUtf8(),&json_error)); QJsonObject jaobj; QJsonObject jaobj2; QJsonObject jaobj3; if(json_error.error == QJsonParseError::NoError){ while(qry.next()){ if(qry.value(2).toInt()==2){ if(qry.value(0).toInt()==4){ QJsonArray json_root = jsonDoc.array(); if(json_root.size()>1){ QString qryval = qry.value(1).toString(); float num = qryval.toFloat(); QJsonObject obj = json_root.at(0).toObject(); QJsonObject obj2 = json_root.at(1).toObject(); QJsonObject obj3 = json_root.at(2).toObject(); jaobj.insert("attr_id", obj.value("attr_id")); jaobj.insert("attr_val", obj.value("attr_val")); jaobj2.insert("attr_id", obj2.value("attr_id")); jaobj2.insert("attr_val", qry.value(1).toString()); jaobj3.insert("attr_id", obj3.value("attr_id")); jaobj3.insert("attr_val", obj3.value("attr_val")); jajsonArray.append(jaobj); jajsonArray.append(jaobj2); jajsonArray.append(jaobj3); }else{ QJsonObject obj = json_root.at(0).toObject(); jaobj.insert("attr_id", obj.value("attr_id")); jaobj.insert("attr_val", qry.value(1).toString()); jajsonArray.append(jaobj); } jdata.append(QString(",\"device_data\":\"%1\"").arg(QString(QJsonDocument(jajsonArray).toJson()).replace("\"","\\\""))); QString jasign = "bb5247f1a92411ea9bae7956d3c00d15app_keyf8bdea7926bcc7cb827d2eccf67fa559"; jasign.append(QString("bid%1").arg(hpdev.Bid)); jasign.append(QString("device_data%1").arg(QString(QJsonDocument(jajsonArray).toJson()))); jasign.append(QString("device_id%1").arg(hpdev.Device_id)); jasign.append(QString("device_name%1").arg(hpdev.Device_name)); jasign.append(QString("fid%1").arg(hpdev.Fid)); jasign.append(QString("format%1").arg("json")); jasign.append(QString("mid%1").arg(hpdev.Mid)); jasign.append(QString("pid%1").arg(hpdev.Pid)); jasign.append(QString("report_time%1").arg(myt)); jasign.append(QString("sign_method%1").arg("md5")); jasign.append(QString("timestamp%1").arg(myt)); jasign.append(QString("v%1").arg("1.0")); jasign.append(QString("zid%1").arg(hpdev.Zid)); jasign.append(QString("%1").arg("bb5247f1a92411ea9bae7956d3c00d15")); char md5str[33]; chkmd5(jasign.replace("\r","").replace("\n","").replace(" ","").toUtf8().data(),md5str); md5str[32]='\0'; jdata.append(QString(",\"sign\":\"%1\"").arg(md5str)); } } } } } QString jasign2=jdata.replace("\r","").replace("\n","").replace(" ",""); hpSyncData(4,QUuid::createUuid().toString().replace("{","").replace("}",""),"{"+jasign2+"}"); }else if(hpdev.Device_type==5){ QString sql = QString("select point_code, point_data, dwtype, data_time from sp_owner_status where device_id=%1").arg(hpdev.Device_id); jdata.append(QString("\"app_key\":\"%1\"").arg("f8bdea7926bcc7cb827d2eccf67fa559")); jdata.append(QString(",\"timestamp\":\"%1\"").arg(myt)); jdata.append(QString(",\"format\":\"%1\"").arg("json")); jdata.append(QString(",\"v\":\"%1\"").arg("1.0")); jdata.append(QString(",\"sign_method\":\"%1\"").arg("md5")); jdata.append(QString(",\"pid\":\"%1\"").arg(hpdev.Pid)); jdata.append(QString(",\"bid\":\"%1\"").arg(hpdev.Bid)); jdata.append(QString(",\"fid\":\"%1\"").arg(hpdev.Fid)); jdata.append(QString(",\"zid\":\"%1\"").arg(hpdev.Zid)); jdata.append(QString(",\"report_time\":\"%1\"").arg(myt)); qry = mdb.exec(sql); if(hpDevList.at(i).Device_data.length()>0){ jdata.append(QString(",\"mid\":\"%1\"").arg(hpdev.Mid)); jdata.append(QString(",\"device_name\":\"%1\"").arg(hpdev.Device_name)); jdata.append(QString(",\"device_id\":\"%1\"").arg(hpdev.Device_id)); QJsonParseError json_error; QJsonArray jajsonArray; QJsonDocument jsonDoc(QJsonDocument::fromJson(hpDevList.at(i).Device_data.toUtf8(),&json_error)); QJsonObject jaobj; QJsonObject jaobj2; QJsonObject jaobj3; if(json_error.error == QJsonParseError::NoError){ while(qry.next()){ if(qry.value(2).toInt()==5){ if(qry.value(0).toInt()==4){ QJsonArray json_root = jsonDoc.array(); QJsonObject obj = json_root.at(0).toObject(); jaobj.insert("attr_id", obj.value("attr_id")); jaobj.insert("attr_val", qry.value(1).toString()); jajsonArray.append(jaobj); jdata.append(QString(",\"device_data\":\"%1\"").arg(QString(QJsonDocument(jajsonArray).toJson()).replace("\"","\\\""))); QString jasign = "bb5247f1a92411ea9bae7956d3c00d15app_keyf8bdea7926bcc7cb827d2eccf67fa559"; jasign.append(QString("bid%1").arg(hpdev.Bid)); jasign.append(QString("device_data%1").arg(QString(QJsonDocument(jajsonArray).toJson()))); jasign.append(QString("device_id%1").arg(hpdev.Device_id)); jasign.append(QString("device_name%1").arg(hpdev.Device_name)); jasign.append(QString("fid%1").arg(hpdev.Fid)); jasign.append(QString("format%1").arg("json")); jasign.append(QString("mid%1").arg(hpdev.Mid)); jasign.append(QString("pid%1").arg(hpdev.Pid)); jasign.append(QString("report_time%1").arg(myt)); jasign.append(QString("sign_method%1").arg("md5")); jasign.append(QString("timestamp%1").arg(myt)); jasign.append(QString("v%1").arg("1.0")); jasign.append(QString("zid%1").arg(hpdev.Zid)); jasign.append(QString("%1").arg("bb5247f1a92411ea9bae7956d3c00d15")); char md5str[33]; chkmd5(jasign.replace("\r","").replace("\n","").replace(" ","").toUtf8().data(),md5str); md5str[32]='\0'; jdata.append(QString(",\"sign\":\"%1\"").arg(md5str)); } } } } } QString jasign2=jdata.replace("\r","").replace("\n","").replace(" ",""); hpSyncData(4,QUuid::createUuid().toString().replace("{","").replace("}",""),"{"+jasign2+"}"); } } for(int i=0;i(nullptr)); ytShm->updatetime[CORE_MAIN] = tmp_time; qry.clear(); YPSyncXyDev ypxydev = syncXyDevList.at(i); time_t myt=time(NULL); QString jdata = ""; uint MaxT = 0; if(ypxydev.ObjType==3||ypxydev.ObjType==128){ QString sql = QString("select point_code, point_data, content, data_time from sp_owner_status where device_id=%1").arg(ypxydev.OwnerCode); jdata.append(QString("\"companyCode\":\"%1\"").arg(ypxydev.CompanyCode)); jdata.append(QString(",\"companyName\":\"%1\"").arg(ypxydev.CompanyName)); jdata.append(QString(",\"deviceId\":\"%1\"").arg(ypxydev.ObjCode)); jdata.append(QString(",\"deviceName\":\"%1\"").arg(ypxydev.OwnerName+ypxydev.DeviceName)); qry = mdb.exec(sql); if(ypxydev.ObjType==3){ while(qry.next()){ if(qry.value(0).toInt()==2){ uint cTime = qry.value(3).toDateTime().toTime_t(); if(cTime>MaxT) MaxT = cTime; jdata.append(QString(",\"time\":\"%1\"").arg(QDateTime::fromTime_t(myt).toString("yyyy-MM-dd HH:mm:ss"))); jdata.append(QString(",\"wirelessSignal\":%1").arg(5)); jdata.append(QString(",\"battery\":%1").arg(qry.value(1).toInt())); } } }else{ while(qry.next()){ if(qry.value(0).toInt()==2){ uint cTime = qry.value(3).toDateTime().toTime_t(); if(cTime>MaxT) MaxT = cTime; jdata.append(QString(",\"time\":\"%1\"").arg(QDateTime::fromTime_t(myt).toString("yyyy-MM-dd HH:mm:ss"))); jdata.append(QString(",\"wirelessSignal\":%1").arg(5)); jdata.append(QString(",\"battery\":%1").arg(qry.value(1).toInt())); } } } SyncXyData(2,QUuid::createUuid().toString().replace("{","").replace("}",""),"{"+jdata+"}"); }else if(ypxydev.ObjType==7){ QString sql = QString("select point_code, point_data, content, data_time from sp_owner_status where device_id=%1").arg(ypxydev.OwnerCode); jdata.append(QString("\"companyCode\":\"%1\"").arg(ypxydev.CompanyCode)); jdata.append(QString(",\"companyName\":\"%1\"").arg(ypxydev.CompanyName)); jdata.append(QString(",\"deviceId\":\"%1\"").arg(ypxydev.ObjCode)); jdata.append(QString(",\"deviceName\":\"%1\"").arg(ypxydev.OwnerName+ypxydev.DeviceName)); jdata.append(QString(",\"wirelessSignal\":%1").arg(5)); qry = mdb.exec(sql); while(qry.next()){ uint cTime = qry.value(3).toDateTime().toTime_t(); if(cTime>MaxT) MaxT = cTime; if(qry.value(0).toInt()==65){ jdata.append(QString(",\"inVoltage\":%1").arg(qry.value(1).toString())); jdata.append(QString(",\"time\":\"%1\"").arg(QDateTime::fromTime_t(myt).toString("yyyy-MM-dd HH:mm:ss"))); }else if(qry.value(0).toInt()==68){ jdata.append(QString(",\"outCurrent\":%1").arg(qry.value(1).toString())); }else if(qry.value(0).toInt()==71){ jdata.append(QString(",\"temperature\":%1").arg(qry.value(1).toString())); } } SyncXyData(2,QUuid::createUuid().toString().replace("{","").replace("}",""),"{"+jdata+"}"); }else if(ypxydev.ObjType==2||ypxydev.ObjType==130){ QString sql = QString("select point_code, point_data, content, data_time from sp_owner_status where device_id=%1").arg(ypxydev.OwnerCode); jdata.append(QString("\"companyCode\":\"%1\"").arg(ypxydev.CompanyCode)); jdata.append(QString(",\"companyName\":\"%1\"").arg(ypxydev.CompanyName)); jdata.append(QString(",\"deviceId\":\"%1\"").arg(ypxydev.ObjCode)); jdata.append(QString(",\"deviceName\":\"%1\"").arg(ypxydev.OwnerName+ypxydev.DeviceName)); jdata.append(QString(",\"wirelessSignal\":%1").arg(5)); qry = mdb.exec(sql); if(ypxydev.ObjType==2){ while(qry.next()){ if(qry.value(0).toInt()==2){ uint cTime = qry.value(3).toDateTime().toTime_t(); if(cTime>MaxT) MaxT = cTime; jdata.append(QString(",\"time\":\"%1\"").arg(QDateTime::fromTime_t(myt).toString("yyyy-MM-dd HH:mm:ss"))); jdata.append(QString(",\"battery\":%1").arg(qry.value(1).toInt())); }else if(qry.value(0).toInt()==4){ jdata.append(QString(",\"stress\":%1").arg(qry.value(1).toString())); } } }else{ while(qry.next()){ if(qry.value(0).toInt()==2){ uint cTime = qry.value(3).toDateTime().toTime_t(); if(cTime>MaxT) MaxT = cTime; jdata.append(QString(",\"time\":\"%1\"").arg(QDateTime::fromTime_t(myt).toString("yyyy-MM-dd HH:mm:ss"))); jdata.append(QString(",\"battery\":%1").arg(qry.value(1).toInt())); }else if(qry.value(0).toInt()==4){ jdata.append(QString(",\"stress\":%1").arg(qry.value(1).toString())); } } } SyncXyData(2,QUuid::createUuid().toString().replace("{","").replace("}",""),"{"+jdata+"}"); } } for(int i=0;i(nullptr)); ytShm->updatetime[CORE_MAIN] = tmp_time; qry.clear(); NewCNSyncDev newcndev = NewcnDevList.at(i); time_t myt=time(NULL); QString jdata = ""; QString sql = QString("select point_code, point_data, content, data_time from sp_owner_status where device_id=%1").arg(newcndev.DeviceCode); jdata.append(QString("\"descript\":\"%1\"").arg(newcndev.Descript)); jdata.append(QString(",\"deviceName\":\"%1\"").arg(newcndev.DeviceName)); if(newcndev.devCategory==6){ jdata.append(QString(",\"deviceNo\":\"%1\"").arg(newcndev.DeviceCode+newcndev.Port)); }else{ jdata.append(QString(",\"deviceNo\":\"%1\"").arg(newcndev.DeviceCode)); } jdata.append(QString(",\"deviceType\":\"%1\"").arg(newcndev.DeviceType)); jdata.append(QString(",\"deviceTypeName\":\"%1\"").arg(newcndev.DeviceTypeName)); jdata.append(QString(",\"openProjectId\":\"%1\"").arg(newcndev.OpenProjectId)); qry = mdb.exec(sql); if(newcndev.devCategory==2){ while(qry.next()){ if(qry.value(0).toInt()==4){ jdata.append(QString(",\"logTime\":\"%1\"").arg(QDateTime::fromTime_t(myt).toString("yyyy-MM-dd HH:mm:ss"))); jdata.append(QString(",\"pressure\":\"%1\"").arg(qry.value(1).toString())); }else if(qry.value(0).toInt()==1){ if(qry.value(2).toString().indexOf(QString::fromUtf8("正常"))==0){ jdata.append(QString(",\"alarmStatus\":\"%1\"").arg(0)); }else if(qry.value(2).toString().indexOf(QString::fromUtf8("低压"))==0){ jdata.append(QString(",\"alarmStatus\":\"%1\"").arg(1)); }else if(qry.value(2).toString().indexOf(QString::fromUtf8("高压"))==0){ jdata.append(QString(",\"alarmStatus\":\"%1\"").arg(2)); } } } if(newcndev.DeviceType==302){ NewcnSyncData(0,QUuid::createUuid().toString().replace("{","").replace("}",""), "{"+jdata+"}",newcndev.devCategory); }else{ NewcnSyncData(1,QUuid::createUuid().toString().replace("{","").replace("}",""), "{"+jdata+"}",newcndev.devCategory); } }else if(newcndev.devCategory==5){ while(qry.next()){ if(qry.value(0).toInt()==4){ jdata.append(QString(",\"logTime\":\"%1\"").arg(QDateTime::fromTime_t(myt).toString("yyyy-MM-dd HH:mm:ss"))); jdata.append(QString(",\"level\":\"%1\"").arg(qry.value(1).toString())); }else if(qry.value(0).toInt()==1){ if(qry.value(2).toString().indexOf(QString::fromUtf8("正常"))==0){ jdata.append(QString(",\"alarmStatus\":\"%1\"").arg(0)); }else if(qry.value(2).toString().indexOf(QString::fromUtf8("低液位"))==0){ jdata.append(QString(",\"alarmStatus\":\"%1\"").arg(1)); }else if(qry.value(2).toString().indexOf(QString::fromUtf8("高液位"))==0){ jdata.append(QString(",\"alarmStatus\":\"%1\"").arg(2)); } } } if(newcndev.DeviceType==402){ NewcnSyncData(2,QUuid::createUuid().toString().replace("{","").replace("}",""), "{"+jdata+"}",newcndev.devCategory); }else{ NewcnSyncData(3,QUuid::createUuid().toString().replace("{","").replace("}",""), "{"+jdata+"}",newcndev.devCategory); } }else if(newcndev.devCategory==6){ if(newcndev.DeviceType==258||newcndev.DeviceType==256){ QList pnoList = getPnoValue(newcndev.Data); QJsonArray jajsonArray; for(int i=0;i pnoList = getPnoValue(newcndev.Data); jdata.append(QString(",\"logTime\":\"%1\"").arg(QDateTime::fromTime_t(myt).toString("yyyy-MM-dd HH:mm:ss"))); while(qry.next()){ for(int i=0;i=21600){ QSqlQuery qry12; ypdisworktime=tmp_time; qry.clear(); syncDevList.clear(); qry = mdb.exec("select owner_code,dwtype,object_code,start_port,rec_cur from sp_yangpu_share"); while(qry.next()){ syncDevList.append(YPSyncDev(qry.value(0).toString(), qry.value(1).toString(), qry.value(2).toString(), qry.value(3).toInt(), qry.value(4).toUInt())); } qry.clear(); ypYwDevList.clear(); qry = mdb.exec("select device_code,device_name,device_address,longitude,latitude,device_type,company_code from sp_ypywtg_share"); while(qry.next()){ ypYwDevList.append(YPYWSyncDev(qry.value(0).toString(), qry.value(1).toString(), qry.value(2).toString(), qry.value(3).toString(), qry.value(4).toString(), qry.value(5).toInt(), qry.value(6).toString())); } qry.clear(); XfzdDevList.clear(); qry = mdb.exec("select device_code,device_name,descript,device_type,device_type_name,open_project_id, dwtype, data, port,device_floor from sp_corps_share"); while(qry.next()){ XfzdDevList.append(XfzdSyncDev(qry.value(0).toString(), qry.value(1).toString(), qry.value(2).toString(), qry.value(3).toInt(), qry.value(4).toString(), qry.value(5).toString(), qry.value(6).toInt(), qry.value(7).toString().trimmed(), qry.value(8).toString(), qry.value(9).toString())); } qry.clear(); for(int i=0;i(nullptr)); ytShm->updatetime[CORE_MAIN] = tmp_time; YPSyncDev syncdev = syncDevList.at(i); time_t myt=time(NULL); QString jdata = ""; if(syncdev.ObjType.compare("YTWP")==0){ QString sql = QString("select dwtype,point_code,point_data,data_time from sp_owner_status where device_id='%1' and point_code>%2 order by point_code limit 0,1").arg(syncdev.OwnerCode).arg((syncdev.StartPort>0)?(syncdev.StartPort+63):3); QString sql12 = QString("select insert_id from aypdis_time where id=%1").arg(205); qry = mdb.exec(sql); qry12 = mdb.exec(sql12); while(qry.next()){ while(qry12.next()){ uint cTime = qry.value(3).toDateTime().toTime_t(); QString WaterPressure = "0.0"; if((myt-cTime)>=qry12.value(0).toInt()){ WaterPressure = qry.value(2).toString(); mdb.exec(QString("update sp_yangpu_share set rec_cur=%1 where object_code='%2'").arg(myt).arg(syncdev.ObjCode)); QString jsonstr = QString("{\"dataCode\":\"DATA_WATERPRE\",\"deviceId\":\"%1\",\"postTime\":\"%2\",\"data\":{\"WaterPressure\":%3}}") .arg(syncdev.ObjCode).arg(QDateTime::fromTime_t(myt).toString("yyyy-MM-dd HH:mm:ss")).arg(WaterPressure); SyncDisData(QUuid::createUuid().toString().replace("{","").replace("}",""), jsonstr); } } } }else if(syncdev.ObjType.compare("YTLL")==0){ QString LiquidLevel = "0.0"; QDateTime dataTime = QDateTime::fromTime_t(0); QString sql = QString("select dwtype,point_code,point_data,data_time from sp_owner_status where device_id='%1' and point_code>%2 order by point_code limit 0,1").arg(syncdev.OwnerCode).arg((syncdev.StartPort>0)?(syncdev.StartPort+63):3); QString sql12 = QString("select insert_id from aypdis_time where id=%1").arg(205); qry = mdb.exec(sql); qry12 = mdb.exec(sql12); if(qry.next()){ while(qry12.next()){ uint cTime = qry.value(3).toDateTime().toTime_t(); if((myt-cTime)>=qry12.value(0).toInt()){ LiquidLevel = qry.value(2).toString(); mdb.exec(QString("update sp_yangpu_share set rec_cur=%1 where object_code='%2'").arg(myt).arg(syncdev.ObjCode)); QString jsonstr = QString("{\"dataCode\":\"DATA_LIQUIDLE\",\"deviceId\":\"%1\",\"postTime\":\"%2\",\"data\":{\"LiquidLevel\":%3}}") .arg(syncdev.ObjCode).arg(QDateTime::fromTime_t(myt).toString("yyyy-MM-dd HH:mm:ss")).arg(LiquidLevel); SyncDisData(QUuid::createUuid().toString().replace("{","").replace("}",""), jsonstr); } } } } } } // if((tmp_time-xfzdworktime)>44000){ // xfzdworktime=tmp_time; // for(int i=0;i(nullptr)); // ytShm->updatetime[CORE_MAIN] = tmp_time; // qry.clear(); // XfzdSyncDev xfzddev = XfzdDevList.at(i); // time_t myt=time(NULL); // QString jdata = ""; // QString sql = QString("select point_code, point_data, content, data_time from sp_owner_status where device_id=%1").arg(xfzddev.DeviceCode); // jdata.append(QString("\"descript\":\"%1\"").arg(xfzddev.Descript)); // jdata.append(QString(",\"deviceName\":\"%1\"").arg(xfzddev.DeviceName)); // if(xfzddev.devCategory==6){ // jdata.append(QString(",\"deviceNo\":\"%1\"").arg(xfzddev.DeviceCode+xfzddev.Port)); // }else{ // jdata.append(QString(",\"deviceNo\":\"%1\"").arg(xfzddev.DeviceCode)); // } // jdata.append(QString(",\"deviceType\":\"%1\"").arg(xfzddev.DeviceType)); // jdata.append(QString(",\"deviceTypeName\":\"%1\"").arg(xfzddev.DeviceTypeName)); // jdata.append(QString(",\"openProjectId\":\"%1\"").arg(xfzddev.OpenProjectId)); // jdata.append(QString(",\"floor\":\"%1\"").arg(xfzddev.DeviceFloor)); // qry = mdb.exec(sql); // if(xfzddev.devCategory==2){ // while(qry.next()){ // if(qry.value(0).toInt()==4){ // jdata.append(QString(",\"logTime\":\"%1\"").arg(QDateTime::fromTime_t(myt).toString("yyyy-MM-dd HH:mm:ss"))); // jdata.append(QString(",\"pressure\":\"%1\"").arg(qry.value(1).toString())); // }else if(qry.value(0).toInt()==1){ // if(qry.value(2).toString().indexOf(QString::fromUtf8("正常"))==0){ // jdata.append(QString(",\"alarmStatus\":\"%1\"").arg(0)); // }else if(qry.value(2).toString().indexOf(QString::fromUtf8("低压"))==0){ // jdata.append(QString(",\"alarmStatus\":\"%1\"").arg(1)); // }else if(qry.value(2).toString().indexOf(QString::fromUtf8("高压"))==0){ // jdata.append(QString(",\"alarmStatus\":\"%1\"").arg(2)); // } // } // } // if(xfzddev.DeviceType==302){ // XfzdSyncData(0,QUuid::createUuid().toString().replace("{","").replace("}",""), "{"+jdata+"}",xfzddev.devCategory); // }else if(xfzddev.DeviceType==301){ // XfzdSyncData(1,QUuid::createUuid().toString().replace("{","").replace("}",""), "{"+jdata+"}",xfzddev.devCategory); // }else if(xfzddev.DeviceType==305){ // XfzdSyncData(13,QUuid::createUuid().toString().replace("{","").replace("}",""), "{"+jdata+"}",xfzddev.devCategory); // }else if(xfzddev.DeviceType==304){ // XfzdSyncData(14,QUuid::createUuid().toString().replace("{","").replace("}",""), "{"+jdata+"}",xfzddev.devCategory); // } // }else if(xfzddev.devCategory==5){ // while(qry.next()){ // if(qry.value(0).toInt()==4){ // jdata.append(QString(",\"logTime\":\"%1\"").arg(QDateTime::fromTime_t(myt).toString("yyyy-MM-dd HH:mm:ss"))); // jdata.append(QString(",\"level\":\"%1\"").arg(qry.value(1).toString())); // }else if(qry.value(0).toInt()==1){ // if(qry.value(2).toString().indexOf(QString::fromUtf8("正常"))==0){ // jdata.append(QString(",\"alarmStatus\":\"%1\"").arg(0)); // }else if(qry.value(2).toString().indexOf(QString::fromUtf8("低液位"))==0){ // jdata.append(QString(",\"alarmStatus\":\"%1\"").arg(1)); // }else if(qry.value(2).toString().indexOf(QString::fromUtf8("高液位"))==0){ // jdata.append(QString(",\"alarmStatus\":\"%1\"").arg(2)); // } // } // } // if(xfzddev.DeviceType==402){ // XfzdSyncData(2,QUuid::createUuid().toString().replace("{","").replace("}",""), "{"+jdata+"}",xfzddev.devCategory); // }else{ // XfzdSyncData(3,QUuid::createUuid().toString().replace("{","").replace("}",""), "{"+jdata+"}",xfzddev.devCategory); // } // }else if(xfzddev.devCategory==6){ // if(xfzddev.DeviceType==258||xfzddev.DeviceType==256||xfzddev.DeviceType==452){ // QList pnoList = getPnoValue(xfzddev.Data); // QJsonArray jajsonArray; // for(int i=0;i pnoList = getPnoValue(xfzddev.Data); // jdata.append(QString(",\"logTime\":\"%1\"").arg(QDateTime::fromTime_t(myt).toString("yyyy-MM-dd HH:mm:ss"))); // while(qry.next()){ // for(int i=0;iappendData(QString("test1111 ---------- %1").arg(qry.value(2).toString().indexOf(QString::fromUtf8("正常")))); // jdata.append(QString(",\"alarmStatus\":\"%1\"").arg(0)); // } // break; // } // } // } // } // if(xfzddev.DeviceType==302){ // XfzdSyncData(0,QUuid::createUuid().toString().replace("{","").replace("}",""), "{"+jdata+"}",xfzddev.devCategory); // }else if(xfzddev.DeviceType==301){ // XfzdSyncData(1,QUuid::createUuid().toString().replace("{","").replace("}",""), "{"+jdata+"}",xfzddev.devCategory); // }else if(xfzddev.DeviceType==305){ // XfzdSyncData(13,QUuid::createUuid().toString().replace("{","").replace("}",""), "{"+jdata+"}",xfzddev.devCategory); // }else if(xfzddev.DeviceType==304){ // XfzdSyncData(14,QUuid::createUuid().toString().replace("{","").replace("}",""), "{"+jdata+"}",xfzddev.devCategory); // } // } // }else if(xfzddev.devCategory==1){ // while(qry.next()){ // if(qry.value(0).toInt()==1){ // if(qry.value(2).toString().indexOf(QString::fromUtf8("监测连线故障"))==0){ // jdata.append(QString(",\"connectStatus\":\"%1\"").arg(1)); // }else{ // jdata.append(QString(",\"connectStatus\":\"%1\"").arg(0)); // } // jdata.append(QString(",\"workStatus\":\"%1\"").arg(0)); // jdata.append(QString(",\"mainPower\":\"%1\"").arg(0)); // jdata.append(QString(",\"logTime\":\"%1\"").arg(QDateTime::fromTime_t(myt).toString("yyyy-MM-dd HH:mm:ss"))); // XfzdSyncData(15,QUuid::createUuid().toString().replace("{","").replace("}",""), "{"+jdata+"}",xfzddev.devCategory); // } // } // } // } // } // if((!isSending2)&&(cnSyncdataLiet.length()>0)){ // isSending2 = true; // cnCount=cnCount+1; // CnSyncRep rep = cnSyncdataLiet.first(); // QByteArray Report = rep.JsonStr.toUtf8(); // QNetworkRequest *req = new QNetworkRequest(); // if((rep.devCategory>200)&&(rep.devCategory<207)){ // req->setUrl(QUrl("http://www.cnfire119.cn/open/data/acquisition/YLB/add?appkey=20190806608233073670094848&secret=72c15b023b0fab056ed3b9c7c45bff0c ")); // }else if(rep.devCategory==91){ // req->setUrl(QUrl("http://www.cnfire119.cn/open/data/acquisition/WaterPump/add?appkey=20190806608233073670094848&secret=72c15b023b0fab056ed3b9c7c45bff0c ")); // }else if(rep.devCategory==211){ // if(rep.Xh==1){ // req->setUrl(QUrl("http://www.cnfire119.cn/open/data/acquisition/building/addFire?appkey=20190806608233073670094848&secret=72c15b023b0fab056ed3b9c7c45bff0c ")); // }else if(rep.Xh==2){ // req->setUrl(QUrl("http://www.cnfire119.cn/open/data/acquisition/building/addFault?appkey=20190806608233073670094848&secret=72c15b023b0fab056ed3b9c7c45bff0c ")); // } // }else if(rep.devCategory==1957){ // req->setUrl(QUrl("http://www.cnfire119.cn/open/data/acquisition/YWY/addLog?appkey=20190806608233073670094848&secret=72c15b023b0fab056ed3b9c7c45bff0c ")); // } // req->setHeader(QNetworkRequest::ContentTypeHeader,"application/json; charset=UTF-8"); // req->setHeader(QNetworkRequest::ContentLengthHeader,QString("%1").arg(Report.length()).toUtf8()); // repThread->appendSql(QString("insert into `cnsync_t_rec` (`id`,`uuid`,`data_str`, `send`, `store_time`) values (NULL,'%1','%2',0,'%3')") // .arg(rep.Id).arg( // req->url().toString()+"\r\n"+ // rep.JsonStr).arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss"))); // QNetworkReply *reply = cnnetAccessManager->post(*req,Report); // QReplayTimeout *pTimeout = new QReplayTimeout(reply,10000); // connect(pTimeout, SIGNAL(net_timeout()),this,SLOT(reply_timeout2())); // } if((!isSending3)&&(jaSyncdataLiet.length()>0)){ isSending3 = true; jaCount=jaCount+1; JaSyncRep rep = jaSyncdataLiet.first(); QByteArray Report = rep.JsonStr.toUtf8(); QNetworkRequest *req = new QNetworkRequest(); if(rep.Xh==1){ req->setUrl(QUrl("http://jareceive.119.net/fireapi/matrix/position")); }else if(rep.Xh==0){ req->setUrl(QUrl("http://jareceive.119.net/fireapi/matrix/receiveAll")); // req->setUrl(QUrl("http://172.16.120.183:5001")); // printf("thread jawater start\n"); }else if(rep.Xh==2){ req->setUrl(QUrl("http://jareceive.119.net/fireapi/operation/handleEvent")); // req->setUrl(QUrl("http://www.jd-ioe.com:80/ytapi/admin/order/jingan")); }else if(rep.Xh==3){ req->setUrl(QUrl("http://jareceive.119.net/fireapi/matrix/receiveAll")); }else if(rep.Xh==4){ req->setUrl(QUrl("http://receive.119.net/fireapi/matrix/receiveAll")); }else if(rep.Xh==5){ req->setUrl(QUrl("http://jareceive.119.net/fireapi/operation/handleArtificial")); // req->setUrl(QUrl("http://iot.usky.cn:80/ytapi/admin/order/jingan")); }else if(rep.Xh==6){ req->setUrl(QUrl("http://jareceive.119.net/fireapi/operation/handleSupervise")); logThread->appendData(QString("ceshidianziduchadan12[%1]").arg("http://jareceive.119.net/fireapi/operation/handleSupervise")); } // req->setUrl(QUrl("http://www.jd-ioe.com:80/ytapi/admin/order/jingan")); req->setHeader(QNetworkRequest::ContentTypeHeader,"application/json; charset=UTF-8"); req->setHeader(QNetworkRequest::ContentLengthHeader,QString("%1").arg(Report.length()).toUtf8()); repThread->appendSql(QString("insert into `jasync_t_rec` (`id`,`uuid`,`data_str`, `send`, `store_time`) values (NULL,'%1','%2',0,'%3')") .arg(rep.Id).arg( req->url().toString()+"\r\n"+ // req->header(QNetworkRequest::ContentTypeHeader).toString()+"\r\n"+ // req->header(QNetworkRequest::ContentLengthHeader).toString()+"\r\n"+ rep.JsonStr).arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss"))); QNetworkReply *reply = janetAccessManager->post(*req,Report); QReplayTimeout *pTimeout = new QReplayTimeout(reply,10000); connect(pTimeout, SIGNAL(net_timeout()),this,SLOT(reply_timeout3())); } if((!isSending)&&(ypSyncdataList.length()>0)){ isSending = true; ypCount=ypCount+1; SyncRep rep = ypSyncdataList.first(); repThread->appendSql(QString("insert into `ypsync_t_rec` (`id`,`uuid`,`data_str`, `send`, `store_time`) values (NULL,'%1','%2',0,'%3')") .arg(rep.Id).arg(rep.JsonStr).arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss"))); QByteArray Report = rep.JsonStr.toUtf8(); QNetworkRequest *req = new QNetworkRequest(); //req->setUrl(QUrl("http://218.242.51.14:8088/api-devicelog-collect/data/NonLoraData")); req->setUrl(QUrl("https://gw.opg-iot.com/api-devicelog-collect/data/NonLoraData")); req->setHeader(QNetworkRequest::ContentTypeHeader,"application/json; charset=UTF-8"); req->setHeader(QNetworkRequest::ContentLengthHeader,QString("%1").arg(Report.length()).toUtf8()); QNetworkReply *reply = netAccessManager->post(*req,Report); QReplayTimeout *pTimeout = new QReplayTimeout(reply,10000); connect(pTimeout, SIGNAL(net_timeout()),this,SLOT(reply_timeout())); } if((!isSending4)&&(ypSyncDisdataList.length()>0)){ isSending4 = true; ypdisCount=ypdisCount+1; SyncRep rep = ypSyncDisdataList.first(); repThread->appendSql(QString("insert into `ypsync_t_rec_dis` (`id`,`uuid`,`data_str`, `send`, `store_time`) values (NULL,'%1','%2',0,'%3')") .arg(rep.Id).arg(rep.JsonStr).arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss"))); QByteArray Report = rep.JsonStr.toUtf8(); QNetworkRequest *req = new QNetworkRequest(); //req->setUrl(QUrl("http://218.242.51.14:8088/api-devicelog-collect/data/NonLoraData")); req->setUrl(QUrl("https://gw.opg-iot.com/api-devicelog-collect/data/NonLoraData")); req->setHeader(QNetworkRequest::ContentTypeHeader,"application/json; charset=UTF-8"); req->setHeader(QNetworkRequest::ContentLengthHeader,QString("%1").arg(Report.length()).toUtf8()); QNetworkReply *reply = disnetAccessManager->post(*req,Report); QReplayTimeout *pTimeout = new QReplayTimeout(reply,10000); connect(pTimeout, SIGNAL(net_timeout()),this,SLOT(reply_timeout4())); } if((!isSending5)&&(ypSyncXydataList.length()>0)){ isSending5 = true; ypxyCount=ypxyCount+1; YpXySyncRep rep = ypSyncXydataList.first(); QByteArray Report = rep.JsonStr.toUtf8(); QNetworkRequest *req = new QNetworkRequest(); if(rep.Xh==1){ req->setUrl(QUrl("http://ypaqpt.edu.sh.cn/schoolSafe-yp/deviceAlarm")); }else if(rep.Xh==2){ req->setUrl(QUrl("http://ypaqpt.edu.sh.cn/schoolSafe-yp/deviceTime")); }else if(rep.Xh==3){ req->setUrl(QUrl("http://ypaqpt.edu.sh.cn/schoolSafe-yp/AlarmStatus")); } // else if(rep.Xh==4){ // req->setUrl(QUrl("http://iot.usky.cn/ytapi/admin/Manage/ceShiUrl")); // } req->setHeader(QNetworkRequest::ContentTypeHeader,"application/json; charset=UTF-8"); req->setHeader(QNetworkRequest::ContentLengthHeader,QString("%1").arg(Report.length()).toUtf8()); repThread->appendSql(QString("insert into `ypsync_t_rec_xy` (`id`,`uuid`,`data_str`, `send`, `store_time`) values (NULL,'%1','%2',0,'%3')") .arg(rep.Id).arg( req->url().toString()+"\r\n"+ // req->header(QNetworkRequest::ContentTypeHeader).toString()+"\r\n"+ // req->header(QNetworkRequest::ContentLengthHeader).toString()+"\r\n"+ rep.JsonStr).arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss"))); QNetworkReply *reply = xynetAccessManager->post(*req,Report); QReplayTimeout *pTimeout = new QReplayTimeout(reply,10000); connect(pTimeout, SIGNAL(net_timeout()),this,SLOT(reply_timeout5())); } if((!isSending6)&&(hpSyncdataLiet.length()>0)){ isSending6 = true; hpCount=hpCount+1; HpSyncRep rep = hpSyncdataLiet.first(); QByteArray Report = rep.JsonStr.toUtf8(); QNetworkRequest *req = new QNetworkRequest(); if(rep.Xh==1){ req->setUrl(QUrl("http://hpreceive.119.net/fireapi/matrix/position")); }else if(rep.Xh==0){ req->setUrl(QUrl("http://hpreceive.119.net/fireapi/matrix/receiveAll")); }else if(rep.Xh==2){ req->setUrl(QUrl("http://hpreceive.119.net/fireapi/operation/handleEvent")); // req->setUrl(QUrl("http://www.jd-ioe.com:80/ytapi/admin/order/jingan")); }else if(rep.Xh==3){ req->setUrl(QUrl("http://hpreceive.119.net/fireapi/matrix/receiveAll")); }else if(rep.Xh==4){ req->setUrl(QUrl("http://hpreceive.119.net/fireapi/matrix/receiveAll")); }else if(rep.Xh==5){ req->setUrl(QUrl("http://hpreceive.119.net/fireapi/operation/handleArtificial")); // req->setUrl(QUrl("http://172.16.120.183:5001")); }else if(rep.Xh==6){ req->setUrl(QUrl("http://hpreceive.119.net/fireapi/operation/handleSupervise")); logThread->appendData(QString("ceshidianziduchadan12[%1]").arg("http://jareceive.119.net/fireapi/operation/handleSupervise")); } // req->setUrl(QUrl("http://www.jd-ioe.com:80/ytapi/admin/order/jingan")); req->setHeader(QNetworkRequest::ContentTypeHeader,"application/json; charset=UTF-8"); req->setHeader(QNetworkRequest::ContentLengthHeader,QString("%1").arg(Report.length()).toUtf8()); repThread->appendSql(QString("insert into `hpsync_t_rec` (`id`,`uuid`,`data_str`, `send`, `store_time`) values (NULL,'%1','%2',0,'%3')") .arg(rep.Id).arg( req->url().toString()+"\r\n"+ // req->header(QNetworkRequest::ContentTypeHeader).toString()+"\r\n"+ // req->header(QNetworkRequest::ContentLengthHeader).toString()+"\r\n"+ rep.JsonStr).arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss"))); QNetworkReply *reply = hpnetAccessManager->post(*req,Report); QReplayTimeout *pTimeout = new QReplayTimeout(reply,10000); connect(pTimeout, SIGNAL(net_timeout()),this,SLOT(reply_timeout6())); } if((!isSending7)&&(NewcnSyncdataLiet.length()>0)){ isSending7 = true; NewCnSyncRep rep = NewcnSyncdataLiet.first(); QByteArray Report = rep.JsonStr.toUtf8(); QNetworkRequest *req = new QNetworkRequest(); if(rep.Xh==1){ req->setUrl(QUrl("http://new.cnfire119.cn/access/devlog/sprinkler/pipepressunusual")); }else if(rep.Xh==0){ req->setUrl(QUrl("http://new.cnfire119.cn/access/devlog/hydrant/pipepress")); }else if(rep.Xh==2){ req->setUrl(QUrl("http://new.cnfire119.cn/access/devlog/hydrant/tanklevel")); }else if(rep.Xh==3){ req->setUrl(QUrl("http://new.cnfire119.cn/access/devlog/hydrant/tanklevel")); }else if(rep.Xh==4){ req->setUrl(QUrl("http://new.cnfire119.cn/access/devlog/hydrant/pumpstatus")); }else if(rep.Xh==5){ req->setUrl(QUrl("http://new.cnfire119.cn/access/devlog/sprinkler/spraypump")); }else if(rep.Xh==6){ req->setUrl(QUrl("http://new.cnfire119.cn/access/event/fire/alarm/fireinfo")); }else if(rep.Xh==7){ req->setUrl(QUrl("http://new.cnfire119.cn/access/event/fault/alarm/freport")); }else if(rep.Xh==8){ req->setUrl(QUrl("http://new.cnfire119.cn/access/event/action/alarm/supervise")); }else if(rep.Xh==9){ req->setUrl(QUrl("http://new.cnfire119.cn/access/event/fire/alarm/manual")); }else if(rep.Xh==10){ req->setUrl(QUrl("http://new.cnfire119.cn/access/devlog/alarm/reset")); }else if(rep.Xh==11){ req->setUrl(QUrl("http://new.cnfire119.cn/access/event/action/alarm/linkagefeedback")); } req->setHeader(QNetworkRequest::ContentTypeHeader,"application/json; charset=UTF-8"); req->setRawHeader("appKey","748935525548687361"); req->setHeader(QNetworkRequest::ContentLengthHeader,QString("%1").arg(Report.length()).toUtf8()); repThread->appendSql(QString("insert into `newcnsync_t_rec` (`id`,`uuid`,`data_str`, `send`, `store_time`) values (NULL,'%1','%2',0,'%3')") .arg(rep.Id).arg( req->url().toString()+"\r\n"+ rep.JsonStr).arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss"))); QNetworkReply *reply = NewcnnetAccessManager->post(*req,Report); QReplayTimeout *pTimeout = new QReplayTimeout(reply,10000); connect(pTimeout, SIGNAL(net_timeout()),this,SLOT(reply_timeout7())); } if((!isSending8)&&(ypYwSyncDataList.length()>0)){ isSending8 = true; // printf("http://220.196.241.165:33921/usky/flushUsky"); YpYwSyncRep rep = ypYwSyncDataList.first(); QByteArray Report = rep.JsonStr.toUtf8(); QNetworkRequest *req = new QNetworkRequest(); if(rep.Xh==1){ // req->setUrl(QUrl("http://iot.usky.cn/ytapi/admin/Manage/dianQiCeShiUrl")); req->setUrl(QUrl("http://220.196.241.165:33921/usky/flushUsky")); }else if(rep.Xh==2){ req->setUrl(QUrl("http://220.196.241.165:33921/usky/flushUskyStatus")); } req->setHeader(QNetworkRequest::ContentTypeHeader,"application/json; charset=UTF-8"); req->setHeader(QNetworkRequest::ContentLengthHeader,QString("%1").arg(Report.length()).toUtf8()); repThread->appendSql(QString("insert into `ypywsync_t_rec` (`id`,`uuid`,`data_str`, `send`, `store_time`) values (NULL,'%1','%2',0,'%3')") .arg(rep.Id).arg( req->url().toString()+"\r\n"+ rep.JsonStr).arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss"))); QNetworkReply *reply = ypYwcnnetAccessManager->post(*req,Report); QReplayTimeout *pTimeout = new QReplayTimeout(reply,10000); connect(pTimeout, SIGNAL(net_timeout()),this,SLOT(reply_timeout8())); } if((!isSending9)&&(XfzdSyncdataLiet.length()>0)){ isSending9 = true; XfzdSyncRep rep = XfzdSyncdataLiet.first(); QByteArray Report = rep.JsonStr.toUtf8(); QNetworkRequest *req = new QNetworkRequest(); if(rep.Xh==1){ req->setUrl(QUrl("http://iot.shxf-119.com/access/devlog/sprinkler/pipepressunusual")); }else if(rep.Xh==0){ req->setUrl(QUrl("http://iot.shxf-119.com/access/devlog/hydrant/pipepress")); }else if(rep.Xh==2){ req->setUrl(QUrl("http://iot.shxf-119.com/access/devlog/hydrant/tanklevel")); }else if(rep.Xh==3){ req->setUrl(QUrl("http://iot.shxf-119.com/access/devlog/hydrant/tanklevel")); }else if(rep.Xh==4){ req->setUrl(QUrl("http://iot.shxf-119.com/access/devlog/hydrant/pumpstatus")); }else if(rep.Xh==5){ req->setUrl(QUrl("http://iot.shxf-119.com/access/devlog/sprinkler/spraypump")); }else if(rep.Xh==6){ req->setUrl(QUrl("http://iot.shxf-119.com/access/event/fire/alarm/fireinfo")); }else if(rep.Xh==7){ req->setUrl(QUrl("http://iot.shxf-119.com/access/event/fault/alarm/freport")); }else if(rep.Xh==8){ req->setUrl(QUrl("http://iot.shxf-119.com/access/event/action/alarm/supervise")); }else if(rep.Xh==9){ req->setUrl(QUrl("http://iot.shxf-119.com/access/event/fire/alarm/manual")); }else if(rep.Xh==10){ req->setUrl(QUrl("http://iot.shxf-119.com/access/devlog/alarm/reset")); }else if(rep.Xh==11){ req->setUrl(QUrl("http://iot.shxf-119.com/access/event/action/alarm/linkagefeedback")); }else if(rep.Xh==12){ req->setUrl(QUrl("http://iot.shxf-119.com/access/devlog/smoke/smokefan")); }else if(rep.Xh==13){ req->setUrl(QUrl("http://iot.shxf-119.com/access/devlog/hydrant/endpressure")); }else if(rep.Xh==14){ req->setUrl(QUrl("http://iot.shxf-119.com/access/devlog/sprinkler/endpressure")); }else if(rep.Xh==15){ req->setUrl(QUrl("http://iot.shxf-119.com/access/devlog/transmission/devicestatus")); } req->setHeader(QNetworkRequest::ContentTypeHeader,"application/json; charset=UTF-8"); req->setRawHeader("appKey","850404889644236801"); req->setHeader(QNetworkRequest::ContentLengthHeader,QString("%1").arg(Report.length()).toUtf8()); repThread->appendSql(QString("insert into `xfzdsync_t_rec` (`id`,`uuid`,`data_str`, `send`, `store_time`, `device_code`, `open_project_id`) values (NULL,'%1','%2',0,'%3','%4','%5')") .arg(rep.Id).arg( req->url().toString()+"\r\n"+ rep.JsonStr).arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss")).arg(rep.deviceCode).arg(rep.openProjectId)); QNetworkReply *reply = XfzdnetAccessManager->post(*req,Report); QReplayTimeout *pTimeout = new QReplayTimeout(reply,10000); connect(pTimeout, SIGNAL(net_timeout()),this,SLOT(reply_timeout9())); } if(sqlList.length()>0){ if(db.transaction()){ while(sqlList.length()>0){ db.exec(sqlList.first()); sqlList.removeFirst(); } db.commit(); } } if((tmp_time-work_time)>59){ work_time = tmp_time; qry = db.exec("select `app_name`, `app_path`, `keep_working`, `wait_time` , `log_limit`, `keep_size` from `app_t_conf`"); while(qry.next()){ QString app_name = qry.value(0).toString(); QString app_path = qry.value(1).toString(); bool keep_working = (qry.value(2).toUInt()==1); uint wait_time = qry.value(3).toUInt(); bool log_limit = (qry.value(4).toUInt()==1); qint64 keep_size = qry.value(5).toLongLong(); if(app_name.compare("workerman")==0){ QFileInfoList loglist= QDir(QString("%1").arg(app_path)).entryInfoList(); qint64 current_size = 0; uint current_time = 0; // bool nofile = true; for(int i=0;i=0)) { // nofile = false; current_size += info.size(); if(info.lastModified().toTime_t()>current_time) current_time = info.lastModified().toTime_t(); } } if(log_limit){ if(current_size>keep_size){ ret = system(QString("rm -f %1/*.log").arg(app_path).toUtf8().data()); db.exec(QString("insert into operation_t_rec (`id`, `app_name`, `operation_type`, `operation_comment`,`store_time`) values (NULL,'%1',2,'delete file %2/*.log', '%3')").arg(app_name).arg(app_path).arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss"))); } } }else{ QDir dir(QString("%1/log").arg(app_path)); dir.setSorting(QDir::Time|QDir::Reversed); QFileInfoList loglist = dir.entryInfoList(); qint64 current_size = 0; uint current_time = 0; // bool nofile = true; for(int i=0;icurrent_time) current_time = info.lastModified().toTime_t(); } } if(log_limit){ if(current_size>keep_size) { for(int i=0;i0)) { if(QFile(info.absoluteFilePath()).remove()) { db.exec(QString("insert into operation_t_rec (`id`, `app_name`, `operation_type`, `operation_comment`,`store_time`) values (NULL,'%1',2,'delete file %2', '%3')").arg(app_name).arg(info.fileName()).arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss"))); current_size -= f_size; } } if(current_size<=keep_size) break; } ret = system(QString("rm -f %1/vendor/workerman/*.log").arg(app_path).toUtf8().data()); } } uint c_time = QDateTime::currentDateTime().toTime_t(); if(keep_working) { if(((c_time-wait_time)>(current_time+(times*60))) &&(current_time>0)) { ret = system(QString("cd %1 && php start.php restart -d && cd").arg(app_path).toUtf8().data()); db.exec(QString("insert into operation_t_rec (`id`, `app_name`, `operation_type`, `operation_comment`,`store_time`) values (NULL,'%1',1,'restart(%2)', '%3')").arg(app_name).arg(QDateTime::fromTime_t(current_time).toString("yyyy-MM-dd HH:mm:ss")).arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss"))); } } } } qry.clear(); } times++; isRunning = false; mdb.close(); mdbOpened = false; } QList Core::getJaPnoValue(QString pnoset) { QList list; QJsonParseError json_error; QJsonDocument jsonDoc(QJsonDocument::fromJson(pnoset.toUtf8(),&json_error)); if(json_error.error == QJsonParseError::NoError){ QJsonArray json_root = jsonDoc.array(); for(int i=0;i-2)&&(name.length()>0)) list.append(JaPno(name,attr,port,defvalue1,defvalue2)); } } return list; } QList Core::getPnoValue(QString pnoset) { QList list; QJsonParseError json_error; QJsonDocument jsonDoc(QJsonDocument::fromJson(pnoset.toUtf8(),&json_error)); if(json_error.error == QJsonParseError::NoError){ QJsonArray json_root = jsonDoc.array(); for(int i=0;i-2)&&(name.length()>0)) list.append(CnPno(name,port,defvalue)); } } return list; } bool Core::chk_table(QString tablename, QStringList tables) { for(int i=0;i