瀏覽代碼

将SOE报警点位从所有遥信点位改成下面6个遥信点位(PhaseLoss 缺相\OverV 过压\UnderV 低压\BusOutage 母线停电\OverEvT 环境温度越限\DevAbnormal 设备异常)报警推送微信端 和 增加程序控制启停功能

James 3 年之前
父節點
當前提交
10bce8d7da
共有 4 個文件被更改,包括 135 次插入135 次删除
  1. 71 71
      ytWGZc/WGZcDog/dogcore.cpp
  2. 2 2
      ytWGZc/WGZcDog/dogcore.h
  3. 60 60
      ytWGZc/ytWGZcCore/zccore.cpp
  4. 2 2
      ytWGZc/ytWGZcCore/zccore.h

+ 71 - 71
ytWGZc/WGZcDog/dogcore.cpp

@@ -8,13 +8,13 @@ dogcore::dogcore(QObject *parent) : QObject(parent)
 
     hour = 255;
     isEqual = false;
-//    netAccessManager = new QNetworkAccessManager(this);
-//    connect(netAccessManager,&QNetworkAccessManager::finished,this,&dogcore::finishedSlot);
+    netAccessManager = new QNetworkAccessManager(this);
+    connect(netAccessManager,&QNetworkAccessManager::finished,this,&dogcore::finishedSlot);
 }
 
 dogcore::~dogcore()
 {
-//    netAccessManager->deleteLater();
+    netAccessManager->deleteLater();
 }
 
 void dogcore::start()
@@ -25,94 +25,94 @@ void dogcore::start()
 
 void dogcore::time_out()
 {
-//    if(hour != QDateTime::currentDateTime().time().hour()){
-//        hour = QDateTime::currentDateTime().time().hour();
+    if(hour != QDateTime::currentDateTime().time().hour()){
+        hour = QDateTime::currentDateTime().time().hour();
 
-//        QByteArray post_data;
-//        uint t = QDateTime::currentDateTime().toTime_t();
+        QByteArray post_data;
+        uint t = QDateTime::currentDateTime().toTime_t();
 
-//        QString tmp="";
-//            QString number= QString("%1%2%3").arg("usky").arg(t).arg("056ac8fae059c9c9e700b734922edfc8");
-//            QByteArray str;
-//            str = QCryptographicHash::hash(number.toLatin1(),QCryptographicHash::Md5);
-//            tmp.append(str.toHex());
+        QString tmp="";
+            QString number= QString("%1%2%3").arg("usky").arg(t).arg("056ac8fae059c9c9e700b734922edfc8");
+            QByteArray str;
+            str = QCryptographicHash::hash(number.toLatin1(),QCryptographicHash::Md5);
+            tmp.append(str.toHex());
 
 
-//        post_data.append(QString("requestType=%1&").arg(3));
-//        post_data.append(QString("publicKey=%1&").arg(tmp));
-//        post_data.append(QString("timeStamp=%1").arg(t));
+        post_data.append(QString("requestType=%1&").arg(3));
+        post_data.append(QString("publicKey=%1&").arg(tmp));
+        post_data.append(QString("timeStamp=%1").arg(t));
 
-//        QNetworkRequest *req = new QNetworkRequest();
-//        req->setUrl(QUrl("https://iot.usky.cn/ytapi/admin/Manage/wooGiApi"));
-//        req->setHeader(QNetworkRequest::ContentTypeHeader,"application/x-www-form-urlencoded");
-//        req->setHeader(QNetworkRequest::ContentLengthHeader,post_data.length());
-//        QNetworkReply* reply = netAccessManager->post(*req,post_data);
-//    }
+        QNetworkRequest *req = new QNetworkRequest();
+        req->setUrl(QUrl("https://iot.usky.cn/ytapi/admin/Manage/wooGiApi"));
+        req->setHeader(QNetworkRequest::ContentTypeHeader,"application/x-www-form-urlencoded");
+        req->setHeader(QNetworkRequest::ContentLengthHeader,post_data.length());
+        QNetworkReply* reply = netAccessManager->post(*req,post_data);
+    }
 
     uint chkTime = QDateTime::currentDateTime().toTime_t();
-//    if(((chkTime-dogshm->time) > 30) && isEqual){
-//        if(system("killall ytWGZcCore") != -1){
-//            if(system("/root/bin/ytWGZcCore &") != -1){
-
-//            }
-//        }
-//    }
-    if((chkTime-dogshm->time) > 30){
+    if(((chkTime-dogshm->time) > 30) && isEqual){
         if(system("killall ytWGZcCore") != -1){
             if(system("/root/bin/ytWGZcCore &") != -1){
 
             }
         }
     }
+//    if((chkTime-dogshm->time) > 30){
+//        if(system("killall ytWGZcCore") != -1){
+//            if(system("/root/bin/ytWGZcCore &") != -1){
+
+//            }
+//        }
+//    }
 }
 
-//void dogcore::finishedSlot(QNetworkReply *reply)
-//{
-//    //printf("enter finishedSlot ++++++++++++++\n");
-//    QVariant status_code = reply->attribute(QNetworkRequest::HttpStatusCodeAttribute);
-//    if(status_code == 200){
-//        if(reply->error() == QNetworkReply::NoError){
-//            QString message = QString::fromUtf8(reply->readAll());
-//            QByteArray data = message.toLatin1();
-//            QJsonParseError json_err;
-//            QJsonDocument jsondoc(QJsonDocument::fromJson(data,&json_err));
-//            //printf("json_err.error = %d\n ",json_err.error);
-//            if(json_err.error==QJsonParseError::NoError){
-//                QJsonObject root = jsondoc.object();
-//                QJsonObject obj = root.value("data").toObject();
-//                QString num = "";
-//                int t = 0;
-//                if((!obj.value("publicKey").isUndefined())&&(!obj.value("publicKey").isNull())){
-//                    num = obj.value("publicKey").toString();
-//                }
-//                if((!obj.value("timeStamp").isUndefined())&&(!obj.value("timeStamp").isNull())){
-//                    t = obj.value("timeStamp").toInt();
-//                }
-
-//                QString temp="";
-//                QString number = QString("%1%2%3").arg("usky").arg(t).arg("056ac8fae059c9c9e700b734922edfc8");
-//                QByteArray str = QCryptographicHash::hash(number.toLatin1(),QCryptographicHash::Md5);
-//                temp.append(str.toHex());
-//                if(QString::compare(num,temp)!=0){
-//                    isEqual = false;
-//                }
-//                else{
-//                    isEqual = true;
-//                }
+void dogcore::finishedSlot(QNetworkReply *reply)
+{
+    //printf("enter finishedSlot ++++++++++++++\n");
+    QVariant status_code = reply->attribute(QNetworkRequest::HttpStatusCodeAttribute);
+    if(status_code == 200){
+        if(reply->error() == QNetworkReply::NoError){
+            QString message = QString::fromUtf8(reply->readAll());
+            QByteArray data = message.toLatin1();
+            QJsonParseError json_err;
+            QJsonDocument jsondoc(QJsonDocument::fromJson(data,&json_err));
+            //printf("json_err.error = %d\n ",json_err.error);
+            if(json_err.error==QJsonParseError::NoError){
+                QJsonObject root = jsondoc.object();
+                QJsonObject obj = root.value("data").toObject();
+                QString num = "";
+                int t = 0;
+                if((!obj.value("publicKey").isUndefined())&&(!obj.value("publicKey").isNull())){
+                    num = obj.value("publicKey").toString();
+                }
+                if((!obj.value("timeStamp").isUndefined())&&(!obj.value("timeStamp").isNull())){
+                    t = obj.value("timeStamp").toInt();
+                }
+
+                QString temp="";
+                QString number = QString("%1%2%3").arg("usky").arg(t).arg("056ac8fae059c9c9e700b734922edfc8");
+                QByteArray str = QCryptographicHash::hash(number.toLatin1(),QCryptographicHash::Md5);
+                temp.append(str.toHex());
+                if(QString::compare(num,temp)!=0){
+                    isEqual = false;
+                }
+                else{
+                    isEqual = true;
+                }
 
 
-//            }
+            }
 
 
-//        }else{
+        }else{
 
-//        }
+        }
 
-//    }else{
+    }else{
 
-//    }
+    }
 
-//    reply->abort();
-//    reply->close();
-//    reply->deleteLater();
-//}
+    reply->abort();
+    reply->close();
+    reply->deleteLater();
+}

+ 2 - 2
ytWGZc/WGZcDog/dogcore.h

@@ -23,14 +23,14 @@ signals:
 
 public slots:
     void time_out();
-//    void finishedSlot(QNetworkReply *reply);
+    void finishedSlot(QNetworkReply *reply);
 
 private:
     QTimer *timer;
 
     int hour;
     bool isEqual;
-//    QNetworkAccessManager *netAccessManager;
+    QNetworkAccessManager *netAccessManager;
 };
 
 #endif // DOGCORE_H

+ 60 - 60
ytWGZc/ytWGZcCore/zccore.cpp

@@ -9,8 +9,8 @@ ZCCore::ZCCore(QObject *parent) : QObject(parent)
     connect(timer,&QTimer::timeout,this,&ZCCore::time_out);
 
     hour = 255;
-//    netAccessManager = new QNetworkAccessManager(this);
-//    connect(netAccessManager,&QNetworkAccessManager::finished,this,&ZCCore::finishedSlot);
+    netAccessManager = new QNetworkAccessManager(this);
+    connect(netAccessManager,&QNetworkAccessManager::finished,this,&ZCCore::finishedSlot);
 
     netAccessManager1 = new QNetworkAccessManager(this);
     connect(netAccessManager1,&QNetworkAccessManager::finished,this,&ZCCore::finishedSlot1);
@@ -50,31 +50,31 @@ void ZCCore::time_out()
         sendData();
     }
 
-//    if(hour != QDateTime::currentDateTime().time().hour()){
-//        hour = QDateTime::currentDateTime().time().hour();
+    if(hour != QDateTime::currentDateTime().time().hour()){
+        hour = QDateTime::currentDateTime().time().hour();
 
-//        QByteArray post_data;
-//        uint t = QDateTime::currentDateTime().toTime_t();
+        QByteArray post_data;
+        uint t = QDateTime::currentDateTime().toTime_t();
 
-//        QString tmp="";
-//            QString number= QString("%1%2%3").arg("usky").arg(t).arg("056ac8fae059c9c9e700b734922edfc8");
-//            QByteArray str;
-//            str = QCryptographicHash::hash(number.toLatin1(),QCryptographicHash::Md5);
-//            tmp.append(str.toHex());
+        QString tmp="";
+            QString number= QString("%1%2%3").arg("usky").arg(t).arg("056ac8fae059c9c9e700b734922edfc8");
+            QByteArray str;
+            str = QCryptographicHash::hash(number.toLatin1(),QCryptographicHash::Md5);
+            tmp.append(str.toHex());
 
 
-//        post_data.append(QString("requestType=%1&").arg(3));
-//        post_data.append(QString("publicKey=%1&").arg(tmp));
-//        post_data.append(QString("timeStamp=%1").arg(t));
+        post_data.append(QString("requestType=%1&").arg(3));
+        post_data.append(QString("publicKey=%1&").arg(tmp));
+        post_data.append(QString("timeStamp=%1").arg(t));
 
-//        QNetworkRequest *req = new QNetworkRequest();
-//        req->setUrl(QUrl("https://iot.usky.cn/ytapi/admin/Manage/wooGiApi"));
-//        req->setHeader(QNetworkRequest::ContentTypeHeader,"application/x-www-form-urlencoded");
-//        req->setHeader(QNetworkRequest::ContentLengthHeader,post_data.length());
-//        QNetworkReply* reply = netAccessManager->post(*req,post_data);
+        QNetworkRequest *req = new QNetworkRequest();
+        req->setUrl(QUrl("https://iot.usky.cn/ytapi/admin/Manage/wooGiApi"));
+        req->setHeader(QNetworkRequest::ContentTypeHeader,"application/x-www-form-urlencoded");
+        req->setHeader(QNetworkRequest::ContentLengthHeader,post_data.length());
+        QNetworkReply* reply = netAccessManager->post(*req,post_data);
 
 
-//    }
+    }
 }
 
 void ZCCore::comLog(QString comData)
@@ -111,7 +111,7 @@ void ZCCore::AlarmReport(QString DeviceCode,QString lastid,QString SETime,QStrin
                         }
                     }
                     for(int j=0;j<33;j++){
-                        if(MeasName.compare(zcdev->devs[i].alarm[j].measName)==0){
+                        if((MeasName.compare(zcdev->devs[i].alarm[j].measName)==0)&&((QString("PhaseLoss")).compare(MeasName)==0 || (QString("OverV")).compare(MeasName)==0 || (QString("UnderV")).compare(MeasName)==0 || (QString("BusOutage")).compare(MeasName)==0 || (QString("OverEvT")).compare(MeasName)==0 || (QString("DevAbnormal")).compare(MeasName)==0)){
                             if(DigitalValue.compare("0")==0){
                                 if((soeTime-zcdev->devs[i].alarm[j].soeTime0)>60){
                                     if((soeTime-busTime0)>60){
@@ -181,55 +181,55 @@ void ZCCore::sendData()
 
 }
 
-//void ZCCore::finishedSlot(QNetworkReply *reply)
-//{
-//    printf("enter finishedSlot ++++++++++++++\n");
-//    QVariant status_code = reply->attribute(QNetworkRequest::HttpStatusCodeAttribute);
-//    if(status_code == 200){
-//        if(reply->error() == QNetworkReply::NoError){
-//            QString message = QString::fromUtf8(reply->readAll());
-//            QByteArray data = message.toLatin1();
-//            QJsonParseError json_err;
-//            QJsonDocument jsondoc(QJsonDocument::fromJson(data,&json_err));
-//            //printf("json_err.error = %d\n ",json_err.error);
-//            if(json_err.error==QJsonParseError::NoError){
-//                QJsonObject root = jsondoc.object();
-//                QJsonObject obj = root.value("data").toObject();
-//                QString num = "";
-//                int t = 0;
-//                if((!obj.value("publicKey").isUndefined())&&(!obj.value("publicKey").isNull())){
-//                    num = obj.value("publicKey").toString();
-//                }
-//                if((!obj.value("timeStamp").isUndefined())&&(!obj.value("timeStamp").isNull())){
-//                    t = obj.value("timeStamp").toInt();
-//                }
-
-//                QString temp="";
-//                QString number = QString("%1%2%3").arg("usky").arg(t).arg("056ac8fae059c9c9e700b734922edfc8");
-//                QByteArray str = QCryptographicHash::hash(number.toLatin1(),QCryptographicHash::Md5);
-//                temp.append(str.toHex());
-//                if(QString::compare(num,temp)!=0){
-//                    exit(1);
-//                }
+void ZCCore::finishedSlot(QNetworkReply *reply)
+{
+    printf("enter finishedSlot ++++++++++++++\n");
+    QVariant status_code = reply->attribute(QNetworkRequest::HttpStatusCodeAttribute);
+    if(status_code == 200){
+        if(reply->error() == QNetworkReply::NoError){
+            QString message = QString::fromUtf8(reply->readAll());
+            QByteArray data = message.toLatin1();
+            QJsonParseError json_err;
+            QJsonDocument jsondoc(QJsonDocument::fromJson(data,&json_err));
+            //printf("json_err.error = %d\n ",json_err.error);
+            if(json_err.error==QJsonParseError::NoError){
+                QJsonObject root = jsondoc.object();
+                QJsonObject obj = root.value("data").toObject();
+                QString num = "";
+                int t = 0;
+                if((!obj.value("publicKey").isUndefined())&&(!obj.value("publicKey").isNull())){
+                    num = obj.value("publicKey").toString();
+                }
+                if((!obj.value("timeStamp").isUndefined())&&(!obj.value("timeStamp").isNull())){
+                    t = obj.value("timeStamp").toInt();
+                }
 
+                QString temp="";
+                QString number = QString("%1%2%3").arg("usky").arg(t).arg("056ac8fae059c9c9e700b734922edfc8");
+                QByteArray str = QCryptographicHash::hash(number.toLatin1(),QCryptographicHash::Md5);
+                temp.append(str.toHex());
+                if(QString::compare(num,temp)!=0){
+                    exit(1);
+                }
 
-//            }
 
+            }
 
-//        }else{
 
-//        }
+        }else{
 
-//    }else{
+        }
+
+    }else{
 
-//    }
+    }
 
-//    reply->abort();
-//    reply->close();
-//    reply->deleteLater();
+    reply->abort();
+    reply->close();
+    reply->deleteLater();
 
 
-//}
+}
 
 void ZCCore::finishedSlot1(QNetworkReply *reply)
 {

+ 2 - 2
ytWGZc/ytWGZcCore/zccore.h

@@ -47,7 +47,7 @@ signals:
 
 public slots:
     void time_out();
-//    void finishedSlot(QNetworkReply *reply);
+    void finishedSlot(QNetworkReply *reply);
     void finishedSlot1(QNetworkReply *reply);
     void comLog(QString comData);
     void appendsql(QString sql);
@@ -58,7 +58,7 @@ private:
     QTimer *timer;
 
     int hour;
-//    QNetworkAccessManager *netAccessManager;
+    QNetworkAccessManager *netAccessManager;
     QNetworkAccessManager *netAccessManager1;
     bool isFinish;