diff --git a/CounterRealTime/CounterRealTime_zh_CN.ts b/CounterRealTime/CounterRealTime_zh_CN.ts
new file mode 100644
index 0000000..3cc47a9
--- /dev/null
+++ b/CounterRealTime/CounterRealTime_zh_CN.ts
@@ -0,0 +1,3 @@
+
+
+
diff --git a/CounterRealTime/CounterRealTime_zh_CN.ts b/CounterRealTime/CounterRealTime_zh_CN.ts
new file mode 100644
index 0000000..3cc47a9
--- /dev/null
+++ b/CounterRealTime/CounterRealTime_zh_CN.ts
@@ -0,0 +1,3 @@
+
+
+
diff --git a/CounterRealTime/CounterWindowRT.cpp b/CounterRealTime/CounterWindowRT.cpp
index d2fe9ed..47f7c2d 100644
--- a/CounterRealTime/CounterWindowRT.cpp
+++ b/CounterRealTime/CounterWindowRT.cpp
@@ -407,10 +407,11 @@
continue;
}
+ CounterChannel * channel = ConstCache::getInstance().channelMap.value(deviceId + "-" + channelNo); // 从map中找到对应的通道
+
if (channelDataJsonMap.contains(channelNo) == true)
{
QJsonObject channelDataItem = channelDataJsonMap.value(channelNo);
- CounterChannel * channel = ConstCache::getInstance().channelMap.value(deviceId + "-" + channelNo); // 从map中找到对应的通道
// 通道Label的序号
int channelIdx = devIdx * 16 + channelDataItem.value("channelNo").toInt() - 1;
@@ -450,9 +451,22 @@
channelValueList.at(channelIdx)->setText("");
}
} else {
+ // 计数器返回的无测量值的通道处理逻辑
+ int channelIdx = devIdx * 16 + i;
+
// 没有测量值的通道清空
- channelNameList.at(devIdx * 16 + i)->setText(QString("CH%1:%2").arg(channelNoStr).arg("-"));
- channelValueList.at(devIdx * 16 + i)->setText("");
+ channelNameList.at(channelIdx)->setText(QString("CH%1:%2").arg(channelNoStr).arg("-"));
+ channelValueList.at(channelIdx)->setText("");
+
+ // 当通道启用时显示通道离线 不再判断后台传回来的状态
+ // 当通道未启用时显示正常状态
+ if (channel != nullptr && channel->isActive() == true) {
+ channelNameList.at(channelIdx)->setStyleSheet(ConstCache::getInstance().qssConstMap.value("channelOffline"));
+ channelValueList.at(channelIdx)->setStyleSheet(ConstCache::getInstance().qssConstMap.value("channelOffline"));
+ } else {
+ channelNameList.at(channelIdx)->setStyleSheet(ConstCache::getInstance().qssConstMap.value(channelNameList.at(channelIdx)->property("labType").toString()));
+ channelValueList.at(channelIdx)->setStyleSheet(ConstCache::getInstance().qssConstMap.value(channelValueList.at(channelIdx)->property("labType").toString()));
+ }
}
}
}
@@ -477,18 +491,19 @@
}
// 是设备级的报警
- if (SettingConfig::getInstance().DEVICE_ALARM_CODES.contains(alarmCode) == true && alarmDev.contains(deviceId) == false) {
- if (alarmCode == "DEVICE_OFFLINE") {
+ if (SettingConfig::getInstance().DEVICE_ALARM_CODES.contains(alarmCode) == true) {
+ if (alarmCode == "DEVICE_OFFLINE" && offlineDev.contains(deviceId) == false) {
offlineDev.append(deviceId);
- } else if (alarmCode == "DEVICE_ALARM") {
+ } else if (alarmCode == "DEVICE_ALARM" && alarmDev.contains(deviceId) == false) {
alarmDev.append(deviceId);
}
}
- if (channelId.isEmpty() == false && SettingConfig::getInstance().CHANNEL_ALARM_CODES.contains(alarmCode) == true && alarmChannel.contains(channelId) == false) {
- if (alarmCode == "COUNTER_NO_DATA") {
+ if (channelId.isEmpty() == false && SettingConfig::getInstance().CHANNEL_ALARM_CODES.contains(alarmCode) == true) {
+ if (alarmCode == "COUNTER_NO_DATA" && offlineChannel.contains(channelId) == false) {
offlineChannel.append(channelId);
- } else if (alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION") {
+ } else if ((alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION") &&
+ alarmChannel.contains(channelId) == false) {
alarmChannel.append(channelId);
}
}
@@ -686,9 +701,9 @@
if (status == "0")
{
// 之前是正常的状态 新增报警状态
- if (alarmCode == "COUNTER_NO_DATA" && alarmChannel.contains(channelId) == false) {
+ if (alarmCode == "COUNTER_NO_DATA" && offlineChannel.contains(channelId) == false) {
offlineChannel.append(channelId);
- } else if (alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION" &&
+ } else if ((alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION") &&
alarmChannel.contains(channelId) == false) {
alarmChannel.append(channelId);
}
@@ -697,7 +712,7 @@
// 消警的逻辑
if (alarmCode == "COUNTER_NO_DATA" && offlineChannel.contains(channelId) == true) {
offlineChannel.removeOne(channelId);
- } else if (alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION" &&
+ } else if ((alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION") &&
alarmChannel.contains(channelId) == true) {
alarmChannel.removeOne(channelId);
}
diff --git a/CounterRealTime/CounterRealTime_zh_CN.ts b/CounterRealTime/CounterRealTime_zh_CN.ts
new file mode 100644
index 0000000..3cc47a9
--- /dev/null
+++ b/CounterRealTime/CounterRealTime_zh_CN.ts
@@ -0,0 +1,3 @@
+
+
+
diff --git a/CounterRealTime/CounterWindowRT.cpp b/CounterRealTime/CounterWindowRT.cpp
index d2fe9ed..47f7c2d 100644
--- a/CounterRealTime/CounterWindowRT.cpp
+++ b/CounterRealTime/CounterWindowRT.cpp
@@ -407,10 +407,11 @@
continue;
}
+ CounterChannel * channel = ConstCache::getInstance().channelMap.value(deviceId + "-" + channelNo); // 从map中找到对应的通道
+
if (channelDataJsonMap.contains(channelNo) == true)
{
QJsonObject channelDataItem = channelDataJsonMap.value(channelNo);
- CounterChannel * channel = ConstCache::getInstance().channelMap.value(deviceId + "-" + channelNo); // 从map中找到对应的通道
// 通道Label的序号
int channelIdx = devIdx * 16 + channelDataItem.value("channelNo").toInt() - 1;
@@ -450,9 +451,22 @@
channelValueList.at(channelIdx)->setText("");
}
} else {
+ // 计数器返回的无测量值的通道处理逻辑
+ int channelIdx = devIdx * 16 + i;
+
// 没有测量值的通道清空
- channelNameList.at(devIdx * 16 + i)->setText(QString("CH%1:%2").arg(channelNoStr).arg("-"));
- channelValueList.at(devIdx * 16 + i)->setText("");
+ channelNameList.at(channelIdx)->setText(QString("CH%1:%2").arg(channelNoStr).arg("-"));
+ channelValueList.at(channelIdx)->setText("");
+
+ // 当通道启用时显示通道离线 不再判断后台传回来的状态
+ // 当通道未启用时显示正常状态
+ if (channel != nullptr && channel->isActive() == true) {
+ channelNameList.at(channelIdx)->setStyleSheet(ConstCache::getInstance().qssConstMap.value("channelOffline"));
+ channelValueList.at(channelIdx)->setStyleSheet(ConstCache::getInstance().qssConstMap.value("channelOffline"));
+ } else {
+ channelNameList.at(channelIdx)->setStyleSheet(ConstCache::getInstance().qssConstMap.value(channelNameList.at(channelIdx)->property("labType").toString()));
+ channelValueList.at(channelIdx)->setStyleSheet(ConstCache::getInstance().qssConstMap.value(channelValueList.at(channelIdx)->property("labType").toString()));
+ }
}
}
}
@@ -477,18 +491,19 @@
}
// 是设备级的报警
- if (SettingConfig::getInstance().DEVICE_ALARM_CODES.contains(alarmCode) == true && alarmDev.contains(deviceId) == false) {
- if (alarmCode == "DEVICE_OFFLINE") {
+ if (SettingConfig::getInstance().DEVICE_ALARM_CODES.contains(alarmCode) == true) {
+ if (alarmCode == "DEVICE_OFFLINE" && offlineDev.contains(deviceId) == false) {
offlineDev.append(deviceId);
- } else if (alarmCode == "DEVICE_ALARM") {
+ } else if (alarmCode == "DEVICE_ALARM" && alarmDev.contains(deviceId) == false) {
alarmDev.append(deviceId);
}
}
- if (channelId.isEmpty() == false && SettingConfig::getInstance().CHANNEL_ALARM_CODES.contains(alarmCode) == true && alarmChannel.contains(channelId) == false) {
- if (alarmCode == "COUNTER_NO_DATA") {
+ if (channelId.isEmpty() == false && SettingConfig::getInstance().CHANNEL_ALARM_CODES.contains(alarmCode) == true) {
+ if (alarmCode == "COUNTER_NO_DATA" && offlineChannel.contains(channelId) == false) {
offlineChannel.append(channelId);
- } else if (alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION") {
+ } else if ((alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION") &&
+ alarmChannel.contains(channelId) == false) {
alarmChannel.append(channelId);
}
}
@@ -686,9 +701,9 @@
if (status == "0")
{
// 之前是正常的状态 新增报警状态
- if (alarmCode == "COUNTER_NO_DATA" && alarmChannel.contains(channelId) == false) {
+ if (alarmCode == "COUNTER_NO_DATA" && offlineChannel.contains(channelId) == false) {
offlineChannel.append(channelId);
- } else if (alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION" &&
+ } else if ((alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION") &&
alarmChannel.contains(channelId) == false) {
alarmChannel.append(channelId);
}
@@ -697,7 +712,7 @@
// 消警的逻辑
if (alarmCode == "COUNTER_NO_DATA" && offlineChannel.contains(channelId) == true) {
offlineChannel.removeOne(channelId);
- } else if (alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION" &&
+ } else if ((alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION") &&
alarmChannel.contains(channelId) == true) {
alarmChannel.removeOne(channelId);
}
diff --git a/CounterRealTime/common/HttpRequestController.cpp b/CounterRealTime/common/HttpRequestController.cpp
index 3d6d9a3..58ac632 100644
--- a/CounterRealTime/common/HttpRequestController.cpp
+++ b/CounterRealTime/common/HttpRequestController.cpp
@@ -59,6 +59,7 @@
resultObj.insert("code", 200); //
+ delete reply;
qDebug() << resultObj;
return resultObj;
@@ -94,6 +95,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
// qDebug() << resultObj;
return resultObj;
@@ -127,6 +129,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
qDebug() << resultObj;
return resultObj;
@@ -161,6 +164,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
qDebug() << resultObj;
return resultObj;
@@ -195,6 +199,7 @@
return 0;
}
+ delete reply;
qDebug() << resultObj;
return resultObj.value("data").toInt();
@@ -233,6 +238,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
qDebug() << resultObj;
return resultObj;
@@ -262,6 +268,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
qDebug() << resultObj;
return resultObj;
diff --git a/CounterRealTime/CounterRealTime_zh_CN.ts b/CounterRealTime/CounterRealTime_zh_CN.ts
new file mode 100644
index 0000000..3cc47a9
--- /dev/null
+++ b/CounterRealTime/CounterRealTime_zh_CN.ts
@@ -0,0 +1,3 @@
+
+
+
diff --git a/CounterRealTime/CounterWindowRT.cpp b/CounterRealTime/CounterWindowRT.cpp
index d2fe9ed..47f7c2d 100644
--- a/CounterRealTime/CounterWindowRT.cpp
+++ b/CounterRealTime/CounterWindowRT.cpp
@@ -407,10 +407,11 @@
continue;
}
+ CounterChannel * channel = ConstCache::getInstance().channelMap.value(deviceId + "-" + channelNo); // 从map中找到对应的通道
+
if (channelDataJsonMap.contains(channelNo) == true)
{
QJsonObject channelDataItem = channelDataJsonMap.value(channelNo);
- CounterChannel * channel = ConstCache::getInstance().channelMap.value(deviceId + "-" + channelNo); // 从map中找到对应的通道
// 通道Label的序号
int channelIdx = devIdx * 16 + channelDataItem.value("channelNo").toInt() - 1;
@@ -450,9 +451,22 @@
channelValueList.at(channelIdx)->setText("");
}
} else {
+ // 计数器返回的无测量值的通道处理逻辑
+ int channelIdx = devIdx * 16 + i;
+
// 没有测量值的通道清空
- channelNameList.at(devIdx * 16 + i)->setText(QString("CH%1:%2").arg(channelNoStr).arg("-"));
- channelValueList.at(devIdx * 16 + i)->setText("");
+ channelNameList.at(channelIdx)->setText(QString("CH%1:%2").arg(channelNoStr).arg("-"));
+ channelValueList.at(channelIdx)->setText("");
+
+ // 当通道启用时显示通道离线 不再判断后台传回来的状态
+ // 当通道未启用时显示正常状态
+ if (channel != nullptr && channel->isActive() == true) {
+ channelNameList.at(channelIdx)->setStyleSheet(ConstCache::getInstance().qssConstMap.value("channelOffline"));
+ channelValueList.at(channelIdx)->setStyleSheet(ConstCache::getInstance().qssConstMap.value("channelOffline"));
+ } else {
+ channelNameList.at(channelIdx)->setStyleSheet(ConstCache::getInstance().qssConstMap.value(channelNameList.at(channelIdx)->property("labType").toString()));
+ channelValueList.at(channelIdx)->setStyleSheet(ConstCache::getInstance().qssConstMap.value(channelValueList.at(channelIdx)->property("labType").toString()));
+ }
}
}
}
@@ -477,18 +491,19 @@
}
// 是设备级的报警
- if (SettingConfig::getInstance().DEVICE_ALARM_CODES.contains(alarmCode) == true && alarmDev.contains(deviceId) == false) {
- if (alarmCode == "DEVICE_OFFLINE") {
+ if (SettingConfig::getInstance().DEVICE_ALARM_CODES.contains(alarmCode) == true) {
+ if (alarmCode == "DEVICE_OFFLINE" && offlineDev.contains(deviceId) == false) {
offlineDev.append(deviceId);
- } else if (alarmCode == "DEVICE_ALARM") {
+ } else if (alarmCode == "DEVICE_ALARM" && alarmDev.contains(deviceId) == false) {
alarmDev.append(deviceId);
}
}
- if (channelId.isEmpty() == false && SettingConfig::getInstance().CHANNEL_ALARM_CODES.contains(alarmCode) == true && alarmChannel.contains(channelId) == false) {
- if (alarmCode == "COUNTER_NO_DATA") {
+ if (channelId.isEmpty() == false && SettingConfig::getInstance().CHANNEL_ALARM_CODES.contains(alarmCode) == true) {
+ if (alarmCode == "COUNTER_NO_DATA" && offlineChannel.contains(channelId) == false) {
offlineChannel.append(channelId);
- } else if (alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION") {
+ } else if ((alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION") &&
+ alarmChannel.contains(channelId) == false) {
alarmChannel.append(channelId);
}
}
@@ -686,9 +701,9 @@
if (status == "0")
{
// 之前是正常的状态 新增报警状态
- if (alarmCode == "COUNTER_NO_DATA" && alarmChannel.contains(channelId) == false) {
+ if (alarmCode == "COUNTER_NO_DATA" && offlineChannel.contains(channelId) == false) {
offlineChannel.append(channelId);
- } else if (alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION" &&
+ } else if ((alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION") &&
alarmChannel.contains(channelId) == false) {
alarmChannel.append(channelId);
}
@@ -697,7 +712,7 @@
// 消警的逻辑
if (alarmCode == "COUNTER_NO_DATA" && offlineChannel.contains(channelId) == true) {
offlineChannel.removeOne(channelId);
- } else if (alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION" &&
+ } else if ((alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION") &&
alarmChannel.contains(channelId) == true) {
alarmChannel.removeOne(channelId);
}
diff --git a/CounterRealTime/common/HttpRequestController.cpp b/CounterRealTime/common/HttpRequestController.cpp
index 3d6d9a3..58ac632 100644
--- a/CounterRealTime/common/HttpRequestController.cpp
+++ b/CounterRealTime/common/HttpRequestController.cpp
@@ -59,6 +59,7 @@
resultObj.insert("code", 200); //
+ delete reply;
qDebug() << resultObj;
return resultObj;
@@ -94,6 +95,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
// qDebug() << resultObj;
return resultObj;
@@ -127,6 +129,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
qDebug() << resultObj;
return resultObj;
@@ -161,6 +164,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
qDebug() << resultObj;
return resultObj;
@@ -195,6 +199,7 @@
return 0;
}
+ delete reply;
qDebug() << resultObj;
return resultObj.value("data").toInt();
@@ -233,6 +238,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
qDebug() << resultObj;
return resultObj;
@@ -262,6 +268,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
qDebug() << resultObj;
return resultObj;
diff --git a/CounterRealTime/common/HttpServer.cpp b/CounterRealTime/common/HttpServer.cpp
index c1a1b48..08887d4 100644
--- a/CounterRealTime/common/HttpServer.cpp
+++ b/CounterRealTime/common/HttpServer.cpp
@@ -26,16 +26,15 @@
void HttpServer::newConnection()
{
QTcpSocket * m_socket = httpServer->nextPendingConnection();
- QObject::connect(m_socket, &QTcpSocket::readyRead, this, &HttpServer::readyRead);
+ connect(m_socket, &QTcpSocket::readyRead, this, &HttpServer::readyRead);
}
void HttpServer::readyRead()
{
QTcpSocket * socket = qobject_cast(sender());
if(socket) {
- QByteArray request = socket->readAll();
-
- qDebug() << "Request Data:" << request;
+// QByteArray request = socket->readAll();
+// qDebug() << "Request Data:" << request;
QByteArray response = this->buildHeartBeatResponse().toUtf8();
@@ -50,6 +49,8 @@
socket->flush();
socket->waitForBytesWritten(http.size() + response.size());
socket->close();
+
+ socket->deleteLater();
}
}
diff --git a/CounterRealTime/CounterRealTime_zh_CN.ts b/CounterRealTime/CounterRealTime_zh_CN.ts
new file mode 100644
index 0000000..3cc47a9
--- /dev/null
+++ b/CounterRealTime/CounterRealTime_zh_CN.ts
@@ -0,0 +1,3 @@
+
+
+
diff --git a/CounterRealTime/CounterWindowRT.cpp b/CounterRealTime/CounterWindowRT.cpp
index d2fe9ed..47f7c2d 100644
--- a/CounterRealTime/CounterWindowRT.cpp
+++ b/CounterRealTime/CounterWindowRT.cpp
@@ -407,10 +407,11 @@
continue;
}
+ CounterChannel * channel = ConstCache::getInstance().channelMap.value(deviceId + "-" + channelNo); // 从map中找到对应的通道
+
if (channelDataJsonMap.contains(channelNo) == true)
{
QJsonObject channelDataItem = channelDataJsonMap.value(channelNo);
- CounterChannel * channel = ConstCache::getInstance().channelMap.value(deviceId + "-" + channelNo); // 从map中找到对应的通道
// 通道Label的序号
int channelIdx = devIdx * 16 + channelDataItem.value("channelNo").toInt() - 1;
@@ -450,9 +451,22 @@
channelValueList.at(channelIdx)->setText("");
}
} else {
+ // 计数器返回的无测量值的通道处理逻辑
+ int channelIdx = devIdx * 16 + i;
+
// 没有测量值的通道清空
- channelNameList.at(devIdx * 16 + i)->setText(QString("CH%1:%2").arg(channelNoStr).arg("-"));
- channelValueList.at(devIdx * 16 + i)->setText("");
+ channelNameList.at(channelIdx)->setText(QString("CH%1:%2").arg(channelNoStr).arg("-"));
+ channelValueList.at(channelIdx)->setText("");
+
+ // 当通道启用时显示通道离线 不再判断后台传回来的状态
+ // 当通道未启用时显示正常状态
+ if (channel != nullptr && channel->isActive() == true) {
+ channelNameList.at(channelIdx)->setStyleSheet(ConstCache::getInstance().qssConstMap.value("channelOffline"));
+ channelValueList.at(channelIdx)->setStyleSheet(ConstCache::getInstance().qssConstMap.value("channelOffline"));
+ } else {
+ channelNameList.at(channelIdx)->setStyleSheet(ConstCache::getInstance().qssConstMap.value(channelNameList.at(channelIdx)->property("labType").toString()));
+ channelValueList.at(channelIdx)->setStyleSheet(ConstCache::getInstance().qssConstMap.value(channelValueList.at(channelIdx)->property("labType").toString()));
+ }
}
}
}
@@ -477,18 +491,19 @@
}
// 是设备级的报警
- if (SettingConfig::getInstance().DEVICE_ALARM_CODES.contains(alarmCode) == true && alarmDev.contains(deviceId) == false) {
- if (alarmCode == "DEVICE_OFFLINE") {
+ if (SettingConfig::getInstance().DEVICE_ALARM_CODES.contains(alarmCode) == true) {
+ if (alarmCode == "DEVICE_OFFLINE" && offlineDev.contains(deviceId) == false) {
offlineDev.append(deviceId);
- } else if (alarmCode == "DEVICE_ALARM") {
+ } else if (alarmCode == "DEVICE_ALARM" && alarmDev.contains(deviceId) == false) {
alarmDev.append(deviceId);
}
}
- if (channelId.isEmpty() == false && SettingConfig::getInstance().CHANNEL_ALARM_CODES.contains(alarmCode) == true && alarmChannel.contains(channelId) == false) {
- if (alarmCode == "COUNTER_NO_DATA") {
+ if (channelId.isEmpty() == false && SettingConfig::getInstance().CHANNEL_ALARM_CODES.contains(alarmCode) == true) {
+ if (alarmCode == "COUNTER_NO_DATA" && offlineChannel.contains(channelId) == false) {
offlineChannel.append(channelId);
- } else if (alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION") {
+ } else if ((alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION") &&
+ alarmChannel.contains(channelId) == false) {
alarmChannel.append(channelId);
}
}
@@ -686,9 +701,9 @@
if (status == "0")
{
// 之前是正常的状态 新增报警状态
- if (alarmCode == "COUNTER_NO_DATA" && alarmChannel.contains(channelId) == false) {
+ if (alarmCode == "COUNTER_NO_DATA" && offlineChannel.contains(channelId) == false) {
offlineChannel.append(channelId);
- } else if (alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION" &&
+ } else if ((alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION") &&
alarmChannel.contains(channelId) == false) {
alarmChannel.append(channelId);
}
@@ -697,7 +712,7 @@
// 消警的逻辑
if (alarmCode == "COUNTER_NO_DATA" && offlineChannel.contains(channelId) == true) {
offlineChannel.removeOne(channelId);
- } else if (alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION" &&
+ } else if ((alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION") &&
alarmChannel.contains(channelId) == true) {
alarmChannel.removeOne(channelId);
}
diff --git a/CounterRealTime/common/HttpRequestController.cpp b/CounterRealTime/common/HttpRequestController.cpp
index 3d6d9a3..58ac632 100644
--- a/CounterRealTime/common/HttpRequestController.cpp
+++ b/CounterRealTime/common/HttpRequestController.cpp
@@ -59,6 +59,7 @@
resultObj.insert("code", 200); //
+ delete reply;
qDebug() << resultObj;
return resultObj;
@@ -94,6 +95,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
// qDebug() << resultObj;
return resultObj;
@@ -127,6 +129,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
qDebug() << resultObj;
return resultObj;
@@ -161,6 +164,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
qDebug() << resultObj;
return resultObj;
@@ -195,6 +199,7 @@
return 0;
}
+ delete reply;
qDebug() << resultObj;
return resultObj.value("data").toInt();
@@ -233,6 +238,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
qDebug() << resultObj;
return resultObj;
@@ -262,6 +268,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
qDebug() << resultObj;
return resultObj;
diff --git a/CounterRealTime/common/HttpServer.cpp b/CounterRealTime/common/HttpServer.cpp
index c1a1b48..08887d4 100644
--- a/CounterRealTime/common/HttpServer.cpp
+++ b/CounterRealTime/common/HttpServer.cpp
@@ -26,16 +26,15 @@
void HttpServer::newConnection()
{
QTcpSocket * m_socket = httpServer->nextPendingConnection();
- QObject::connect(m_socket, &QTcpSocket::readyRead, this, &HttpServer::readyRead);
+ connect(m_socket, &QTcpSocket::readyRead, this, &HttpServer::readyRead);
}
void HttpServer::readyRead()
{
QTcpSocket * socket = qobject_cast(sender());
if(socket) {
- QByteArray request = socket->readAll();
-
- qDebug() << "Request Data:" << request;
+// QByteArray request = socket->readAll();
+// qDebug() << "Request Data:" << request;
QByteArray response = this->buildHeartBeatResponse().toUtf8();
@@ -50,6 +49,8 @@
socket->flush();
socket->waitForBytesWritten(http.size() + response.size());
socket->close();
+
+ socket->deleteLater();
}
}
diff --git a/DeviceHub/device/FrequencyTuning.cpp b/DeviceHub/device/FrequencyTuning.cpp
index 36522e0..94e82b7 100644
--- a/DeviceHub/device/FrequencyTuning.cpp
+++ b/DeviceHub/device/FrequencyTuning.cpp
@@ -1,4 +1,4 @@
-#include "FrequencyTuning.h"
+#include "FrequencyTuning.h"
#include
#include
#include "DeviceHubWindow.h"
@@ -38,7 +38,7 @@
// buffer.append("$GLN,0,192.168.1.126,255.255.255.0,192.168.1.1,255.255.255.255,3000,2000,2001*71").append("\r\n");
// buffer.append("$GLF,0,0,0,0,00000,0,0,0,0,0,0,0,0,0,0,0,1900,2355,0,0,0,0,0,1,1,1*4C").append("\r\n");
// buffer.append("$GLP,0,1000,0,100,20000*45").append("\r\n");
- buffer.append("000$1C2BM1304-3021010071204312*$572BM1304-30210100713 -2.52E-10 +3.02E-14 -000000002000 00000");
+ buffer.append("000$1C2BM1304-3021010071204312*$572BM1304-30210100713 +0.000000000000 +0.000000000000 -000000002000 00000");
this->dataReceivedHandler(buffer);
QTimer::singleShot(20, this, [=](){
diff --git a/CounterRealTime/CounterRealTime_zh_CN.ts b/CounterRealTime/CounterRealTime_zh_CN.ts
new file mode 100644
index 0000000..3cc47a9
--- /dev/null
+++ b/CounterRealTime/CounterRealTime_zh_CN.ts
@@ -0,0 +1,3 @@
+
+
+
diff --git a/CounterRealTime/CounterWindowRT.cpp b/CounterRealTime/CounterWindowRT.cpp
index d2fe9ed..47f7c2d 100644
--- a/CounterRealTime/CounterWindowRT.cpp
+++ b/CounterRealTime/CounterWindowRT.cpp
@@ -407,10 +407,11 @@
continue;
}
+ CounterChannel * channel = ConstCache::getInstance().channelMap.value(deviceId + "-" + channelNo); // 从map中找到对应的通道
+
if (channelDataJsonMap.contains(channelNo) == true)
{
QJsonObject channelDataItem = channelDataJsonMap.value(channelNo);
- CounterChannel * channel = ConstCache::getInstance().channelMap.value(deviceId + "-" + channelNo); // 从map中找到对应的通道
// 通道Label的序号
int channelIdx = devIdx * 16 + channelDataItem.value("channelNo").toInt() - 1;
@@ -450,9 +451,22 @@
channelValueList.at(channelIdx)->setText("");
}
} else {
+ // 计数器返回的无测量值的通道处理逻辑
+ int channelIdx = devIdx * 16 + i;
+
// 没有测量值的通道清空
- channelNameList.at(devIdx * 16 + i)->setText(QString("CH%1:%2").arg(channelNoStr).arg("-"));
- channelValueList.at(devIdx * 16 + i)->setText("");
+ channelNameList.at(channelIdx)->setText(QString("CH%1:%2").arg(channelNoStr).arg("-"));
+ channelValueList.at(channelIdx)->setText("");
+
+ // 当通道启用时显示通道离线 不再判断后台传回来的状态
+ // 当通道未启用时显示正常状态
+ if (channel != nullptr && channel->isActive() == true) {
+ channelNameList.at(channelIdx)->setStyleSheet(ConstCache::getInstance().qssConstMap.value("channelOffline"));
+ channelValueList.at(channelIdx)->setStyleSheet(ConstCache::getInstance().qssConstMap.value("channelOffline"));
+ } else {
+ channelNameList.at(channelIdx)->setStyleSheet(ConstCache::getInstance().qssConstMap.value(channelNameList.at(channelIdx)->property("labType").toString()));
+ channelValueList.at(channelIdx)->setStyleSheet(ConstCache::getInstance().qssConstMap.value(channelValueList.at(channelIdx)->property("labType").toString()));
+ }
}
}
}
@@ -477,18 +491,19 @@
}
// 是设备级的报警
- if (SettingConfig::getInstance().DEVICE_ALARM_CODES.contains(alarmCode) == true && alarmDev.contains(deviceId) == false) {
- if (alarmCode == "DEVICE_OFFLINE") {
+ if (SettingConfig::getInstance().DEVICE_ALARM_CODES.contains(alarmCode) == true) {
+ if (alarmCode == "DEVICE_OFFLINE" && offlineDev.contains(deviceId) == false) {
offlineDev.append(deviceId);
- } else if (alarmCode == "DEVICE_ALARM") {
+ } else if (alarmCode == "DEVICE_ALARM" && alarmDev.contains(deviceId) == false) {
alarmDev.append(deviceId);
}
}
- if (channelId.isEmpty() == false && SettingConfig::getInstance().CHANNEL_ALARM_CODES.contains(alarmCode) == true && alarmChannel.contains(channelId) == false) {
- if (alarmCode == "COUNTER_NO_DATA") {
+ if (channelId.isEmpty() == false && SettingConfig::getInstance().CHANNEL_ALARM_CODES.contains(alarmCode) == true) {
+ if (alarmCode == "COUNTER_NO_DATA" && offlineChannel.contains(channelId) == false) {
offlineChannel.append(channelId);
- } else if (alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION") {
+ } else if ((alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION") &&
+ alarmChannel.contains(channelId) == false) {
alarmChannel.append(channelId);
}
}
@@ -686,9 +701,9 @@
if (status == "0")
{
// 之前是正常的状态 新增报警状态
- if (alarmCode == "COUNTER_NO_DATA" && alarmChannel.contains(channelId) == false) {
+ if (alarmCode == "COUNTER_NO_DATA" && offlineChannel.contains(channelId) == false) {
offlineChannel.append(channelId);
- } else if (alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION" &&
+ } else if ((alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION") &&
alarmChannel.contains(channelId) == false) {
alarmChannel.append(channelId);
}
@@ -697,7 +712,7 @@
// 消警的逻辑
if (alarmCode == "COUNTER_NO_DATA" && offlineChannel.contains(channelId) == true) {
offlineChannel.removeOne(channelId);
- } else if (alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION" &&
+ } else if ((alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION") &&
alarmChannel.contains(channelId) == true) {
alarmChannel.removeOne(channelId);
}
diff --git a/CounterRealTime/common/HttpRequestController.cpp b/CounterRealTime/common/HttpRequestController.cpp
index 3d6d9a3..58ac632 100644
--- a/CounterRealTime/common/HttpRequestController.cpp
+++ b/CounterRealTime/common/HttpRequestController.cpp
@@ -59,6 +59,7 @@
resultObj.insert("code", 200); //
+ delete reply;
qDebug() << resultObj;
return resultObj;
@@ -94,6 +95,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
// qDebug() << resultObj;
return resultObj;
@@ -127,6 +129,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
qDebug() << resultObj;
return resultObj;
@@ -161,6 +164,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
qDebug() << resultObj;
return resultObj;
@@ -195,6 +199,7 @@
return 0;
}
+ delete reply;
qDebug() << resultObj;
return resultObj.value("data").toInt();
@@ -233,6 +238,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
qDebug() << resultObj;
return resultObj;
@@ -262,6 +268,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
qDebug() << resultObj;
return resultObj;
diff --git a/CounterRealTime/common/HttpServer.cpp b/CounterRealTime/common/HttpServer.cpp
index c1a1b48..08887d4 100644
--- a/CounterRealTime/common/HttpServer.cpp
+++ b/CounterRealTime/common/HttpServer.cpp
@@ -26,16 +26,15 @@
void HttpServer::newConnection()
{
QTcpSocket * m_socket = httpServer->nextPendingConnection();
- QObject::connect(m_socket, &QTcpSocket::readyRead, this, &HttpServer::readyRead);
+ connect(m_socket, &QTcpSocket::readyRead, this, &HttpServer::readyRead);
}
void HttpServer::readyRead()
{
QTcpSocket * socket = qobject_cast(sender());
if(socket) {
- QByteArray request = socket->readAll();
-
- qDebug() << "Request Data:" << request;
+// QByteArray request = socket->readAll();
+// qDebug() << "Request Data:" << request;
QByteArray response = this->buildHeartBeatResponse().toUtf8();
@@ -50,6 +49,8 @@
socket->flush();
socket->waitForBytesWritten(http.size() + response.size());
socket->close();
+
+ socket->deleteLater();
}
}
diff --git a/DeviceHub/device/FrequencyTuning.cpp b/DeviceHub/device/FrequencyTuning.cpp
index 36522e0..94e82b7 100644
--- a/DeviceHub/device/FrequencyTuning.cpp
+++ b/DeviceHub/device/FrequencyTuning.cpp
@@ -1,4 +1,4 @@
-#include "FrequencyTuning.h"
+#include "FrequencyTuning.h"
#include
#include
#include "DeviceHubWindow.h"
@@ -38,7 +38,7 @@
// buffer.append("$GLN,0,192.168.1.126,255.255.255.0,192.168.1.1,255.255.255.255,3000,2000,2001*71").append("\r\n");
// buffer.append("$GLF,0,0,0,0,00000,0,0,0,0,0,0,0,0,0,0,0,1900,2355,0,0,0,0,0,1,1,1*4C").append("\r\n");
// buffer.append("$GLP,0,1000,0,100,20000*45").append("\r\n");
- buffer.append("000$1C2BM1304-3021010071204312*$572BM1304-30210100713 -2.52E-10 +3.02E-14 -000000002000 00000");
+ buffer.append("000$1C2BM1304-3021010071204312*$572BM1304-30210100713 +0.000000000000 +0.000000000000 -000000002000 00000");
this->dataReceivedHandler(buffer);
QTimer::singleShot(20, this, [=](){
diff --git a/DeviceHub/protocol/FrequencyTuningProtocolTX.cpp b/DeviceHub/protocol/FrequencyTuningProtocolTX.cpp
index 77e60da..18e7199 100644
--- a/DeviceHub/protocol/FrequencyTuningProtocolTX.cpp
+++ b/DeviceHub/protocol/FrequencyTuningProtocolTX.cpp
@@ -47,8 +47,8 @@
QList subValues = content.split(0x20);
if (subValues.size() == 6)
{
- ((FrequencyTuningStatusFreqDto *)ftFrameData)->freqAdjust = subValues.at(1).toDouble();
- ((FrequencyTuningStatusFreqDto *)ftFrameData)->freqAdjustAcc = subValues.at(2).toDouble();
+ ((FrequencyTuningStatusFreqDto *)ftFrameData)->freqAdjust = subValues.at(1).toDouble() * CALCULATE_FACTOR;
+ ((FrequencyTuningStatusFreqDto *)ftFrameData)->freqAdjustAcc = subValues.at(2).toDouble() * CALCULATE_FACTOR;
((FrequencyTuningStatusFreqDto *)ftFrameData)->phaseShift = subValues.at(3).toLongLong();
((FrequencyTuningStatusFreqDto *)ftFrameData)->pulseWidth = subValues.at(4).toLongLong();
((FrequencyTuningStatusFreqDto *)ftFrameData)->phaseAdjust = subValues.at(5).toDouble();
@@ -87,7 +87,8 @@
{
// 频率偏移设置 or 频率偏移步进量设置
commandBytes.append(0x20);
- QString valueStr = QString::number(valueSet.toDouble(), 'e', 2).toUpper();
+ double value = valueSet.toDouble() / CALCULATE_FACTOR;
+ QString valueStr = QString::number(value, 'f', 12);
if (valueSet.toDouble() >= 0)
{
valueStr.prepend('+');
diff --git a/CounterRealTime/CounterRealTime_zh_CN.ts b/CounterRealTime/CounterRealTime_zh_CN.ts
new file mode 100644
index 0000000..3cc47a9
--- /dev/null
+++ b/CounterRealTime/CounterRealTime_zh_CN.ts
@@ -0,0 +1,3 @@
+
+
+
diff --git a/CounterRealTime/CounterWindowRT.cpp b/CounterRealTime/CounterWindowRT.cpp
index d2fe9ed..47f7c2d 100644
--- a/CounterRealTime/CounterWindowRT.cpp
+++ b/CounterRealTime/CounterWindowRT.cpp
@@ -407,10 +407,11 @@
continue;
}
+ CounterChannel * channel = ConstCache::getInstance().channelMap.value(deviceId + "-" + channelNo); // 从map中找到对应的通道
+
if (channelDataJsonMap.contains(channelNo) == true)
{
QJsonObject channelDataItem = channelDataJsonMap.value(channelNo);
- CounterChannel * channel = ConstCache::getInstance().channelMap.value(deviceId + "-" + channelNo); // 从map中找到对应的通道
// 通道Label的序号
int channelIdx = devIdx * 16 + channelDataItem.value("channelNo").toInt() - 1;
@@ -450,9 +451,22 @@
channelValueList.at(channelIdx)->setText("");
}
} else {
+ // 计数器返回的无测量值的通道处理逻辑
+ int channelIdx = devIdx * 16 + i;
+
// 没有测量值的通道清空
- channelNameList.at(devIdx * 16 + i)->setText(QString("CH%1:%2").arg(channelNoStr).arg("-"));
- channelValueList.at(devIdx * 16 + i)->setText("");
+ channelNameList.at(channelIdx)->setText(QString("CH%1:%2").arg(channelNoStr).arg("-"));
+ channelValueList.at(channelIdx)->setText("");
+
+ // 当通道启用时显示通道离线 不再判断后台传回来的状态
+ // 当通道未启用时显示正常状态
+ if (channel != nullptr && channel->isActive() == true) {
+ channelNameList.at(channelIdx)->setStyleSheet(ConstCache::getInstance().qssConstMap.value("channelOffline"));
+ channelValueList.at(channelIdx)->setStyleSheet(ConstCache::getInstance().qssConstMap.value("channelOffline"));
+ } else {
+ channelNameList.at(channelIdx)->setStyleSheet(ConstCache::getInstance().qssConstMap.value(channelNameList.at(channelIdx)->property("labType").toString()));
+ channelValueList.at(channelIdx)->setStyleSheet(ConstCache::getInstance().qssConstMap.value(channelValueList.at(channelIdx)->property("labType").toString()));
+ }
}
}
}
@@ -477,18 +491,19 @@
}
// 是设备级的报警
- if (SettingConfig::getInstance().DEVICE_ALARM_CODES.contains(alarmCode) == true && alarmDev.contains(deviceId) == false) {
- if (alarmCode == "DEVICE_OFFLINE") {
+ if (SettingConfig::getInstance().DEVICE_ALARM_CODES.contains(alarmCode) == true) {
+ if (alarmCode == "DEVICE_OFFLINE" && offlineDev.contains(deviceId) == false) {
offlineDev.append(deviceId);
- } else if (alarmCode == "DEVICE_ALARM") {
+ } else if (alarmCode == "DEVICE_ALARM" && alarmDev.contains(deviceId) == false) {
alarmDev.append(deviceId);
}
}
- if (channelId.isEmpty() == false && SettingConfig::getInstance().CHANNEL_ALARM_CODES.contains(alarmCode) == true && alarmChannel.contains(channelId) == false) {
- if (alarmCode == "COUNTER_NO_DATA") {
+ if (channelId.isEmpty() == false && SettingConfig::getInstance().CHANNEL_ALARM_CODES.contains(alarmCode) == true) {
+ if (alarmCode == "COUNTER_NO_DATA" && offlineChannel.contains(channelId) == false) {
offlineChannel.append(channelId);
- } else if (alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION") {
+ } else if ((alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION") &&
+ alarmChannel.contains(channelId) == false) {
alarmChannel.append(channelId);
}
}
@@ -686,9 +701,9 @@
if (status == "0")
{
// 之前是正常的状态 新增报警状态
- if (alarmCode == "COUNTER_NO_DATA" && alarmChannel.contains(channelId) == false) {
+ if (alarmCode == "COUNTER_NO_DATA" && offlineChannel.contains(channelId) == false) {
offlineChannel.append(channelId);
- } else if (alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION" &&
+ } else if ((alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION") &&
alarmChannel.contains(channelId) == false) {
alarmChannel.append(channelId);
}
@@ -697,7 +712,7 @@
// 消警的逻辑
if (alarmCode == "COUNTER_NO_DATA" && offlineChannel.contains(channelId) == true) {
offlineChannel.removeOne(channelId);
- } else if (alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION" &&
+ } else if ((alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION") &&
alarmChannel.contains(channelId) == true) {
alarmChannel.removeOne(channelId);
}
diff --git a/CounterRealTime/common/HttpRequestController.cpp b/CounterRealTime/common/HttpRequestController.cpp
index 3d6d9a3..58ac632 100644
--- a/CounterRealTime/common/HttpRequestController.cpp
+++ b/CounterRealTime/common/HttpRequestController.cpp
@@ -59,6 +59,7 @@
resultObj.insert("code", 200); //
+ delete reply;
qDebug() << resultObj;
return resultObj;
@@ -94,6 +95,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
// qDebug() << resultObj;
return resultObj;
@@ -127,6 +129,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
qDebug() << resultObj;
return resultObj;
@@ -161,6 +164,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
qDebug() << resultObj;
return resultObj;
@@ -195,6 +199,7 @@
return 0;
}
+ delete reply;
qDebug() << resultObj;
return resultObj.value("data").toInt();
@@ -233,6 +238,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
qDebug() << resultObj;
return resultObj;
@@ -262,6 +268,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
qDebug() << resultObj;
return resultObj;
diff --git a/CounterRealTime/common/HttpServer.cpp b/CounterRealTime/common/HttpServer.cpp
index c1a1b48..08887d4 100644
--- a/CounterRealTime/common/HttpServer.cpp
+++ b/CounterRealTime/common/HttpServer.cpp
@@ -26,16 +26,15 @@
void HttpServer::newConnection()
{
QTcpSocket * m_socket = httpServer->nextPendingConnection();
- QObject::connect(m_socket, &QTcpSocket::readyRead, this, &HttpServer::readyRead);
+ connect(m_socket, &QTcpSocket::readyRead, this, &HttpServer::readyRead);
}
void HttpServer::readyRead()
{
QTcpSocket * socket = qobject_cast(sender());
if(socket) {
- QByteArray request = socket->readAll();
-
- qDebug() << "Request Data:" << request;
+// QByteArray request = socket->readAll();
+// qDebug() << "Request Data:" << request;
QByteArray response = this->buildHeartBeatResponse().toUtf8();
@@ -50,6 +49,8 @@
socket->flush();
socket->waitForBytesWritten(http.size() + response.size());
socket->close();
+
+ socket->deleteLater();
}
}
diff --git a/DeviceHub/device/FrequencyTuning.cpp b/DeviceHub/device/FrequencyTuning.cpp
index 36522e0..94e82b7 100644
--- a/DeviceHub/device/FrequencyTuning.cpp
+++ b/DeviceHub/device/FrequencyTuning.cpp
@@ -1,4 +1,4 @@
-#include "FrequencyTuning.h"
+#include "FrequencyTuning.h"
#include
#include
#include "DeviceHubWindow.h"
@@ -38,7 +38,7 @@
// buffer.append("$GLN,0,192.168.1.126,255.255.255.0,192.168.1.1,255.255.255.255,3000,2000,2001*71").append("\r\n");
// buffer.append("$GLF,0,0,0,0,00000,0,0,0,0,0,0,0,0,0,0,0,1900,2355,0,0,0,0,0,1,1,1*4C").append("\r\n");
// buffer.append("$GLP,0,1000,0,100,20000*45").append("\r\n");
- buffer.append("000$1C2BM1304-3021010071204312*$572BM1304-30210100713 -2.52E-10 +3.02E-14 -000000002000 00000");
+ buffer.append("000$1C2BM1304-3021010071204312*$572BM1304-30210100713 +0.000000000000 +0.000000000000 -000000002000 00000");
this->dataReceivedHandler(buffer);
QTimer::singleShot(20, this, [=](){
diff --git a/DeviceHub/protocol/FrequencyTuningProtocolTX.cpp b/DeviceHub/protocol/FrequencyTuningProtocolTX.cpp
index 77e60da..18e7199 100644
--- a/DeviceHub/protocol/FrequencyTuningProtocolTX.cpp
+++ b/DeviceHub/protocol/FrequencyTuningProtocolTX.cpp
@@ -47,8 +47,8 @@
QList subValues = content.split(0x20);
if (subValues.size() == 6)
{
- ((FrequencyTuningStatusFreqDto *)ftFrameData)->freqAdjust = subValues.at(1).toDouble();
- ((FrequencyTuningStatusFreqDto *)ftFrameData)->freqAdjustAcc = subValues.at(2).toDouble();
+ ((FrequencyTuningStatusFreqDto *)ftFrameData)->freqAdjust = subValues.at(1).toDouble() * CALCULATE_FACTOR;
+ ((FrequencyTuningStatusFreqDto *)ftFrameData)->freqAdjustAcc = subValues.at(2).toDouble() * CALCULATE_FACTOR;
((FrequencyTuningStatusFreqDto *)ftFrameData)->phaseShift = subValues.at(3).toLongLong();
((FrequencyTuningStatusFreqDto *)ftFrameData)->pulseWidth = subValues.at(4).toLongLong();
((FrequencyTuningStatusFreqDto *)ftFrameData)->phaseAdjust = subValues.at(5).toDouble();
@@ -87,7 +87,8 @@
{
// 频率偏移设置 or 频率偏移步进量设置
commandBytes.append(0x20);
- QString valueStr = QString::number(valueSet.toDouble(), 'e', 2).toUpper();
+ double value = valueSet.toDouble() / CALCULATE_FACTOR;
+ QString valueStr = QString::number(value, 'f', 12);
if (valueSet.toDouble() >= 0)
{
valueStr.prepend('+');
diff --git a/DeviceHub/protocol/FrequencyTuningProtocolTX.h b/DeviceHub/protocol/FrequencyTuningProtocolTX.h
index ac3b903..f61a0f0 100644
--- a/DeviceHub/protocol/FrequencyTuningProtocolTX.h
+++ b/DeviceHub/protocol/FrequencyTuningProtocolTX.h
@@ -9,6 +9,8 @@
#include "dto/FrequencyTuningStatusLockDto.h"
#include "dto/CommandReplyDto.h"
+static const double CALCULATE_FACTOR = 1E-7;
+
class FrequencyTuningProtocolTX : public DeviceProtocolBase
{
public:
diff --git a/CounterRealTime/CounterRealTime_zh_CN.ts b/CounterRealTime/CounterRealTime_zh_CN.ts
new file mode 100644
index 0000000..3cc47a9
--- /dev/null
+++ b/CounterRealTime/CounterRealTime_zh_CN.ts
@@ -0,0 +1,3 @@
+
+
+
diff --git a/CounterRealTime/CounterWindowRT.cpp b/CounterRealTime/CounterWindowRT.cpp
index d2fe9ed..47f7c2d 100644
--- a/CounterRealTime/CounterWindowRT.cpp
+++ b/CounterRealTime/CounterWindowRT.cpp
@@ -407,10 +407,11 @@
continue;
}
+ CounterChannel * channel = ConstCache::getInstance().channelMap.value(deviceId + "-" + channelNo); // 从map中找到对应的通道
+
if (channelDataJsonMap.contains(channelNo) == true)
{
QJsonObject channelDataItem = channelDataJsonMap.value(channelNo);
- CounterChannel * channel = ConstCache::getInstance().channelMap.value(deviceId + "-" + channelNo); // 从map中找到对应的通道
// 通道Label的序号
int channelIdx = devIdx * 16 + channelDataItem.value("channelNo").toInt() - 1;
@@ -450,9 +451,22 @@
channelValueList.at(channelIdx)->setText("");
}
} else {
+ // 计数器返回的无测量值的通道处理逻辑
+ int channelIdx = devIdx * 16 + i;
+
// 没有测量值的通道清空
- channelNameList.at(devIdx * 16 + i)->setText(QString("CH%1:%2").arg(channelNoStr).arg("-"));
- channelValueList.at(devIdx * 16 + i)->setText("");
+ channelNameList.at(channelIdx)->setText(QString("CH%1:%2").arg(channelNoStr).arg("-"));
+ channelValueList.at(channelIdx)->setText("");
+
+ // 当通道启用时显示通道离线 不再判断后台传回来的状态
+ // 当通道未启用时显示正常状态
+ if (channel != nullptr && channel->isActive() == true) {
+ channelNameList.at(channelIdx)->setStyleSheet(ConstCache::getInstance().qssConstMap.value("channelOffline"));
+ channelValueList.at(channelIdx)->setStyleSheet(ConstCache::getInstance().qssConstMap.value("channelOffline"));
+ } else {
+ channelNameList.at(channelIdx)->setStyleSheet(ConstCache::getInstance().qssConstMap.value(channelNameList.at(channelIdx)->property("labType").toString()));
+ channelValueList.at(channelIdx)->setStyleSheet(ConstCache::getInstance().qssConstMap.value(channelValueList.at(channelIdx)->property("labType").toString()));
+ }
}
}
}
@@ -477,18 +491,19 @@
}
// 是设备级的报警
- if (SettingConfig::getInstance().DEVICE_ALARM_CODES.contains(alarmCode) == true && alarmDev.contains(deviceId) == false) {
- if (alarmCode == "DEVICE_OFFLINE") {
+ if (SettingConfig::getInstance().DEVICE_ALARM_CODES.contains(alarmCode) == true) {
+ if (alarmCode == "DEVICE_OFFLINE" && offlineDev.contains(deviceId) == false) {
offlineDev.append(deviceId);
- } else if (alarmCode == "DEVICE_ALARM") {
+ } else if (alarmCode == "DEVICE_ALARM" && alarmDev.contains(deviceId) == false) {
alarmDev.append(deviceId);
}
}
- if (channelId.isEmpty() == false && SettingConfig::getInstance().CHANNEL_ALARM_CODES.contains(alarmCode) == true && alarmChannel.contains(channelId) == false) {
- if (alarmCode == "COUNTER_NO_DATA") {
+ if (channelId.isEmpty() == false && SettingConfig::getInstance().CHANNEL_ALARM_CODES.contains(alarmCode) == true) {
+ if (alarmCode == "COUNTER_NO_DATA" && offlineChannel.contains(channelId) == false) {
offlineChannel.append(channelId);
- } else if (alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION") {
+ } else if ((alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION") &&
+ alarmChannel.contains(channelId) == false) {
alarmChannel.append(channelId);
}
}
@@ -686,9 +701,9 @@
if (status == "0")
{
// 之前是正常的状态 新增报警状态
- if (alarmCode == "COUNTER_NO_DATA" && alarmChannel.contains(channelId) == false) {
+ if (alarmCode == "COUNTER_NO_DATA" && offlineChannel.contains(channelId) == false) {
offlineChannel.append(channelId);
- } else if (alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION" &&
+ } else if ((alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION") &&
alarmChannel.contains(channelId) == false) {
alarmChannel.append(channelId);
}
@@ -697,7 +712,7 @@
// 消警的逻辑
if (alarmCode == "COUNTER_NO_DATA" && offlineChannel.contains(channelId) == true) {
offlineChannel.removeOne(channelId);
- } else if (alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION" &&
+ } else if ((alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION") &&
alarmChannel.contains(channelId) == true) {
alarmChannel.removeOne(channelId);
}
diff --git a/CounterRealTime/common/HttpRequestController.cpp b/CounterRealTime/common/HttpRequestController.cpp
index 3d6d9a3..58ac632 100644
--- a/CounterRealTime/common/HttpRequestController.cpp
+++ b/CounterRealTime/common/HttpRequestController.cpp
@@ -59,6 +59,7 @@
resultObj.insert("code", 200); //
+ delete reply;
qDebug() << resultObj;
return resultObj;
@@ -94,6 +95,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
// qDebug() << resultObj;
return resultObj;
@@ -127,6 +129,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
qDebug() << resultObj;
return resultObj;
@@ -161,6 +164,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
qDebug() << resultObj;
return resultObj;
@@ -195,6 +199,7 @@
return 0;
}
+ delete reply;
qDebug() << resultObj;
return resultObj.value("data").toInt();
@@ -233,6 +238,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
qDebug() << resultObj;
return resultObj;
@@ -262,6 +268,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
qDebug() << resultObj;
return resultObj;
diff --git a/CounterRealTime/common/HttpServer.cpp b/CounterRealTime/common/HttpServer.cpp
index c1a1b48..08887d4 100644
--- a/CounterRealTime/common/HttpServer.cpp
+++ b/CounterRealTime/common/HttpServer.cpp
@@ -26,16 +26,15 @@
void HttpServer::newConnection()
{
QTcpSocket * m_socket = httpServer->nextPendingConnection();
- QObject::connect(m_socket, &QTcpSocket::readyRead, this, &HttpServer::readyRead);
+ connect(m_socket, &QTcpSocket::readyRead, this, &HttpServer::readyRead);
}
void HttpServer::readyRead()
{
QTcpSocket * socket = qobject_cast(sender());
if(socket) {
- QByteArray request = socket->readAll();
-
- qDebug() << "Request Data:" << request;
+// QByteArray request = socket->readAll();
+// qDebug() << "Request Data:" << request;
QByteArray response = this->buildHeartBeatResponse().toUtf8();
@@ -50,6 +49,8 @@
socket->flush();
socket->waitForBytesWritten(http.size() + response.size());
socket->close();
+
+ socket->deleteLater();
}
}
diff --git a/DeviceHub/device/FrequencyTuning.cpp b/DeviceHub/device/FrequencyTuning.cpp
index 36522e0..94e82b7 100644
--- a/DeviceHub/device/FrequencyTuning.cpp
+++ b/DeviceHub/device/FrequencyTuning.cpp
@@ -1,4 +1,4 @@
-#include "FrequencyTuning.h"
+#include "FrequencyTuning.h"
#include
#include
#include "DeviceHubWindow.h"
@@ -38,7 +38,7 @@
// buffer.append("$GLN,0,192.168.1.126,255.255.255.0,192.168.1.1,255.255.255.255,3000,2000,2001*71").append("\r\n");
// buffer.append("$GLF,0,0,0,0,00000,0,0,0,0,0,0,0,0,0,0,0,1900,2355,0,0,0,0,0,1,1,1*4C").append("\r\n");
// buffer.append("$GLP,0,1000,0,100,20000*45").append("\r\n");
- buffer.append("000$1C2BM1304-3021010071204312*$572BM1304-30210100713 -2.52E-10 +3.02E-14 -000000002000 00000");
+ buffer.append("000$1C2BM1304-3021010071204312*$572BM1304-30210100713 +0.000000000000 +0.000000000000 -000000002000 00000");
this->dataReceivedHandler(buffer);
QTimer::singleShot(20, this, [=](){
diff --git a/DeviceHub/protocol/FrequencyTuningProtocolTX.cpp b/DeviceHub/protocol/FrequencyTuningProtocolTX.cpp
index 77e60da..18e7199 100644
--- a/DeviceHub/protocol/FrequencyTuningProtocolTX.cpp
+++ b/DeviceHub/protocol/FrequencyTuningProtocolTX.cpp
@@ -47,8 +47,8 @@
QList subValues = content.split(0x20);
if (subValues.size() == 6)
{
- ((FrequencyTuningStatusFreqDto *)ftFrameData)->freqAdjust = subValues.at(1).toDouble();
- ((FrequencyTuningStatusFreqDto *)ftFrameData)->freqAdjustAcc = subValues.at(2).toDouble();
+ ((FrequencyTuningStatusFreqDto *)ftFrameData)->freqAdjust = subValues.at(1).toDouble() * CALCULATE_FACTOR;
+ ((FrequencyTuningStatusFreqDto *)ftFrameData)->freqAdjustAcc = subValues.at(2).toDouble() * CALCULATE_FACTOR;
((FrequencyTuningStatusFreqDto *)ftFrameData)->phaseShift = subValues.at(3).toLongLong();
((FrequencyTuningStatusFreqDto *)ftFrameData)->pulseWidth = subValues.at(4).toLongLong();
((FrequencyTuningStatusFreqDto *)ftFrameData)->phaseAdjust = subValues.at(5).toDouble();
@@ -87,7 +87,8 @@
{
// 频率偏移设置 or 频率偏移步进量设置
commandBytes.append(0x20);
- QString valueStr = QString::number(valueSet.toDouble(), 'e', 2).toUpper();
+ double value = valueSet.toDouble() / CALCULATE_FACTOR;
+ QString valueStr = QString::number(value, 'f', 12);
if (valueSet.toDouble() >= 0)
{
valueStr.prepend('+');
diff --git a/DeviceHub/protocol/FrequencyTuningProtocolTX.h b/DeviceHub/protocol/FrequencyTuningProtocolTX.h
index ac3b903..f61a0f0 100644
--- a/DeviceHub/protocol/FrequencyTuningProtocolTX.h
+++ b/DeviceHub/protocol/FrequencyTuningProtocolTX.h
@@ -9,6 +9,8 @@
#include "dto/FrequencyTuningStatusLockDto.h"
#include "dto/CommandReplyDto.h"
+static const double CALCULATE_FACTOR = 1E-7;
+
class FrequencyTuningProtocolTX : public DeviceProtocolBase
{
public:
diff --git a/DeviceHub/protocol/dto/FrequencyTuningStatusFreqDto.cpp b/DeviceHub/protocol/dto/FrequencyTuningStatusFreqDto.cpp
index 406a141..2175f32 100644
--- a/DeviceHub/protocol/dto/FrequencyTuningStatusFreqDto.cpp
+++ b/DeviceHub/protocol/dto/FrequencyTuningStatusFreqDto.cpp
@@ -1,4 +1,4 @@
-#include "FrequencyTuningStatusFreqDto.h"
+#include "FrequencyTuningStatusFreqDto.h"
FrequencyTuningStatusFreqDto::FrequencyTuningStatusFreqDto(QObject *parent) : DeviceFrameBaseDto(parent)
{
@@ -11,8 +11,8 @@
QJsonObject dataObj;
dataObj.insert("devStatus", devStatus);
- dataObj.insert("freqAdjust", freqAdjust);
- dataObj.insert("freqAdjustAcc", freqAdjustAcc);
+ dataObj.insert("freqAdjust", QString::number(freqAdjust, 'e', 4));
+ dataObj.insert("freqAdjustAcc", QString::number(freqAdjustAcc, 'e', 4));
dataObj.insert("pulseWidth", pulseWidth);
dataObj.insert("phaseAdjust", phaseAdjust);
dataObj.insert("phaseShift", phaseShift);
diff --git a/CounterRealTime/CounterRealTime_zh_CN.ts b/CounterRealTime/CounterRealTime_zh_CN.ts
new file mode 100644
index 0000000..3cc47a9
--- /dev/null
+++ b/CounterRealTime/CounterRealTime_zh_CN.ts
@@ -0,0 +1,3 @@
+
+
+
diff --git a/CounterRealTime/CounterWindowRT.cpp b/CounterRealTime/CounterWindowRT.cpp
index d2fe9ed..47f7c2d 100644
--- a/CounterRealTime/CounterWindowRT.cpp
+++ b/CounterRealTime/CounterWindowRT.cpp
@@ -407,10 +407,11 @@
continue;
}
+ CounterChannel * channel = ConstCache::getInstance().channelMap.value(deviceId + "-" + channelNo); // 从map中找到对应的通道
+
if (channelDataJsonMap.contains(channelNo) == true)
{
QJsonObject channelDataItem = channelDataJsonMap.value(channelNo);
- CounterChannel * channel = ConstCache::getInstance().channelMap.value(deviceId + "-" + channelNo); // 从map中找到对应的通道
// 通道Label的序号
int channelIdx = devIdx * 16 + channelDataItem.value("channelNo").toInt() - 1;
@@ -450,9 +451,22 @@
channelValueList.at(channelIdx)->setText("");
}
} else {
+ // 计数器返回的无测量值的通道处理逻辑
+ int channelIdx = devIdx * 16 + i;
+
// 没有测量值的通道清空
- channelNameList.at(devIdx * 16 + i)->setText(QString("CH%1:%2").arg(channelNoStr).arg("-"));
- channelValueList.at(devIdx * 16 + i)->setText("");
+ channelNameList.at(channelIdx)->setText(QString("CH%1:%2").arg(channelNoStr).arg("-"));
+ channelValueList.at(channelIdx)->setText("");
+
+ // 当通道启用时显示通道离线 不再判断后台传回来的状态
+ // 当通道未启用时显示正常状态
+ if (channel != nullptr && channel->isActive() == true) {
+ channelNameList.at(channelIdx)->setStyleSheet(ConstCache::getInstance().qssConstMap.value("channelOffline"));
+ channelValueList.at(channelIdx)->setStyleSheet(ConstCache::getInstance().qssConstMap.value("channelOffline"));
+ } else {
+ channelNameList.at(channelIdx)->setStyleSheet(ConstCache::getInstance().qssConstMap.value(channelNameList.at(channelIdx)->property("labType").toString()));
+ channelValueList.at(channelIdx)->setStyleSheet(ConstCache::getInstance().qssConstMap.value(channelValueList.at(channelIdx)->property("labType").toString()));
+ }
}
}
}
@@ -477,18 +491,19 @@
}
// 是设备级的报警
- if (SettingConfig::getInstance().DEVICE_ALARM_CODES.contains(alarmCode) == true && alarmDev.contains(deviceId) == false) {
- if (alarmCode == "DEVICE_OFFLINE") {
+ if (SettingConfig::getInstance().DEVICE_ALARM_CODES.contains(alarmCode) == true) {
+ if (alarmCode == "DEVICE_OFFLINE" && offlineDev.contains(deviceId) == false) {
offlineDev.append(deviceId);
- } else if (alarmCode == "DEVICE_ALARM") {
+ } else if (alarmCode == "DEVICE_ALARM" && alarmDev.contains(deviceId) == false) {
alarmDev.append(deviceId);
}
}
- if (channelId.isEmpty() == false && SettingConfig::getInstance().CHANNEL_ALARM_CODES.contains(alarmCode) == true && alarmChannel.contains(channelId) == false) {
- if (alarmCode == "COUNTER_NO_DATA") {
+ if (channelId.isEmpty() == false && SettingConfig::getInstance().CHANNEL_ALARM_CODES.contains(alarmCode) == true) {
+ if (alarmCode == "COUNTER_NO_DATA" && offlineChannel.contains(channelId) == false) {
offlineChannel.append(channelId);
- } else if (alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION") {
+ } else if ((alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION") &&
+ alarmChannel.contains(channelId) == false) {
alarmChannel.append(channelId);
}
}
@@ -686,9 +701,9 @@
if (status == "0")
{
// 之前是正常的状态 新增报警状态
- if (alarmCode == "COUNTER_NO_DATA" && alarmChannel.contains(channelId) == false) {
+ if (alarmCode == "COUNTER_NO_DATA" && offlineChannel.contains(channelId) == false) {
offlineChannel.append(channelId);
- } else if (alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION" &&
+ } else if ((alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION") &&
alarmChannel.contains(channelId) == false) {
alarmChannel.append(channelId);
}
@@ -697,7 +712,7 @@
// 消警的逻辑
if (alarmCode == "COUNTER_NO_DATA" && offlineChannel.contains(channelId) == true) {
offlineChannel.removeOne(channelId);
- } else if (alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION" &&
+ } else if ((alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION") &&
alarmChannel.contains(channelId) == true) {
alarmChannel.removeOne(channelId);
}
diff --git a/CounterRealTime/common/HttpRequestController.cpp b/CounterRealTime/common/HttpRequestController.cpp
index 3d6d9a3..58ac632 100644
--- a/CounterRealTime/common/HttpRequestController.cpp
+++ b/CounterRealTime/common/HttpRequestController.cpp
@@ -59,6 +59,7 @@
resultObj.insert("code", 200); //
+ delete reply;
qDebug() << resultObj;
return resultObj;
@@ -94,6 +95,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
// qDebug() << resultObj;
return resultObj;
@@ -127,6 +129,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
qDebug() << resultObj;
return resultObj;
@@ -161,6 +164,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
qDebug() << resultObj;
return resultObj;
@@ -195,6 +199,7 @@
return 0;
}
+ delete reply;
qDebug() << resultObj;
return resultObj.value("data").toInt();
@@ -233,6 +238,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
qDebug() << resultObj;
return resultObj;
@@ -262,6 +268,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
qDebug() << resultObj;
return resultObj;
diff --git a/CounterRealTime/common/HttpServer.cpp b/CounterRealTime/common/HttpServer.cpp
index c1a1b48..08887d4 100644
--- a/CounterRealTime/common/HttpServer.cpp
+++ b/CounterRealTime/common/HttpServer.cpp
@@ -26,16 +26,15 @@
void HttpServer::newConnection()
{
QTcpSocket * m_socket = httpServer->nextPendingConnection();
- QObject::connect(m_socket, &QTcpSocket::readyRead, this, &HttpServer::readyRead);
+ connect(m_socket, &QTcpSocket::readyRead, this, &HttpServer::readyRead);
}
void HttpServer::readyRead()
{
QTcpSocket * socket = qobject_cast(sender());
if(socket) {
- QByteArray request = socket->readAll();
-
- qDebug() << "Request Data:" << request;
+// QByteArray request = socket->readAll();
+// qDebug() << "Request Data:" << request;
QByteArray response = this->buildHeartBeatResponse().toUtf8();
@@ -50,6 +49,8 @@
socket->flush();
socket->waitForBytesWritten(http.size() + response.size());
socket->close();
+
+ socket->deleteLater();
}
}
diff --git a/DeviceHub/device/FrequencyTuning.cpp b/DeviceHub/device/FrequencyTuning.cpp
index 36522e0..94e82b7 100644
--- a/DeviceHub/device/FrequencyTuning.cpp
+++ b/DeviceHub/device/FrequencyTuning.cpp
@@ -1,4 +1,4 @@
-#include "FrequencyTuning.h"
+#include "FrequencyTuning.h"
#include
#include
#include "DeviceHubWindow.h"
@@ -38,7 +38,7 @@
// buffer.append("$GLN,0,192.168.1.126,255.255.255.0,192.168.1.1,255.255.255.255,3000,2000,2001*71").append("\r\n");
// buffer.append("$GLF,0,0,0,0,00000,0,0,0,0,0,0,0,0,0,0,0,1900,2355,0,0,0,0,0,1,1,1*4C").append("\r\n");
// buffer.append("$GLP,0,1000,0,100,20000*45").append("\r\n");
- buffer.append("000$1C2BM1304-3021010071204312*$572BM1304-30210100713 -2.52E-10 +3.02E-14 -000000002000 00000");
+ buffer.append("000$1C2BM1304-3021010071204312*$572BM1304-30210100713 +0.000000000000 +0.000000000000 -000000002000 00000");
this->dataReceivedHandler(buffer);
QTimer::singleShot(20, this, [=](){
diff --git a/DeviceHub/protocol/FrequencyTuningProtocolTX.cpp b/DeviceHub/protocol/FrequencyTuningProtocolTX.cpp
index 77e60da..18e7199 100644
--- a/DeviceHub/protocol/FrequencyTuningProtocolTX.cpp
+++ b/DeviceHub/protocol/FrequencyTuningProtocolTX.cpp
@@ -47,8 +47,8 @@
QList subValues = content.split(0x20);
if (subValues.size() == 6)
{
- ((FrequencyTuningStatusFreqDto *)ftFrameData)->freqAdjust = subValues.at(1).toDouble();
- ((FrequencyTuningStatusFreqDto *)ftFrameData)->freqAdjustAcc = subValues.at(2).toDouble();
+ ((FrequencyTuningStatusFreqDto *)ftFrameData)->freqAdjust = subValues.at(1).toDouble() * CALCULATE_FACTOR;
+ ((FrequencyTuningStatusFreqDto *)ftFrameData)->freqAdjustAcc = subValues.at(2).toDouble() * CALCULATE_FACTOR;
((FrequencyTuningStatusFreqDto *)ftFrameData)->phaseShift = subValues.at(3).toLongLong();
((FrequencyTuningStatusFreqDto *)ftFrameData)->pulseWidth = subValues.at(4).toLongLong();
((FrequencyTuningStatusFreqDto *)ftFrameData)->phaseAdjust = subValues.at(5).toDouble();
@@ -87,7 +87,8 @@
{
// 频率偏移设置 or 频率偏移步进量设置
commandBytes.append(0x20);
- QString valueStr = QString::number(valueSet.toDouble(), 'e', 2).toUpper();
+ double value = valueSet.toDouble() / CALCULATE_FACTOR;
+ QString valueStr = QString::number(value, 'f', 12);
if (valueSet.toDouble() >= 0)
{
valueStr.prepend('+');
diff --git a/DeviceHub/protocol/FrequencyTuningProtocolTX.h b/DeviceHub/protocol/FrequencyTuningProtocolTX.h
index ac3b903..f61a0f0 100644
--- a/DeviceHub/protocol/FrequencyTuningProtocolTX.h
+++ b/DeviceHub/protocol/FrequencyTuningProtocolTX.h
@@ -9,6 +9,8 @@
#include "dto/FrequencyTuningStatusLockDto.h"
#include "dto/CommandReplyDto.h"
+static const double CALCULATE_FACTOR = 1E-7;
+
class FrequencyTuningProtocolTX : public DeviceProtocolBase
{
public:
diff --git a/DeviceHub/protocol/dto/FrequencyTuningStatusFreqDto.cpp b/DeviceHub/protocol/dto/FrequencyTuningStatusFreqDto.cpp
index 406a141..2175f32 100644
--- a/DeviceHub/protocol/dto/FrequencyTuningStatusFreqDto.cpp
+++ b/DeviceHub/protocol/dto/FrequencyTuningStatusFreqDto.cpp
@@ -1,4 +1,4 @@
-#include "FrequencyTuningStatusFreqDto.h"
+#include "FrequencyTuningStatusFreqDto.h"
FrequencyTuningStatusFreqDto::FrequencyTuningStatusFreqDto(QObject *parent) : DeviceFrameBaseDto(parent)
{
@@ -11,8 +11,8 @@
QJsonObject dataObj;
dataObj.insert("devStatus", devStatus);
- dataObj.insert("freqAdjust", freqAdjust);
- dataObj.insert("freqAdjustAcc", freqAdjustAcc);
+ dataObj.insert("freqAdjust", QString::number(freqAdjust, 'e', 4));
+ dataObj.insert("freqAdjustAcc", QString::number(freqAdjustAcc, 'e', 4));
dataObj.insert("pulseWidth", pulseWidth);
dataObj.insert("phaseAdjust", phaseAdjust);
dataObj.insert("phaseShift", phaseShift);
diff --git a/PhaseCompAcq/common/HttpRequestController.cpp b/PhaseCompAcq/common/HttpRequestController.cpp
index 4327e44..e782868 100644
--- a/PhaseCompAcq/common/HttpRequestController.cpp
+++ b/PhaseCompAcq/common/HttpRequestController.cpp
@@ -59,6 +59,7 @@
resultObj.insert("code", 200); //
+ delete reply;
qDebug() << resultObj;
return resultObj;
@@ -94,6 +95,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
qDebug() << resultObj;
return resultObj;
@@ -127,6 +129,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
qDebug() << resultObj;
return resultObj;
@@ -156,6 +159,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
// qDebug() << resultObj;
return resultObj;
diff --git a/CounterRealTime/CounterRealTime_zh_CN.ts b/CounterRealTime/CounterRealTime_zh_CN.ts
new file mode 100644
index 0000000..3cc47a9
--- /dev/null
+++ b/CounterRealTime/CounterRealTime_zh_CN.ts
@@ -0,0 +1,3 @@
+
+
+
diff --git a/CounterRealTime/CounterWindowRT.cpp b/CounterRealTime/CounterWindowRT.cpp
index d2fe9ed..47f7c2d 100644
--- a/CounterRealTime/CounterWindowRT.cpp
+++ b/CounterRealTime/CounterWindowRT.cpp
@@ -407,10 +407,11 @@
continue;
}
+ CounterChannel * channel = ConstCache::getInstance().channelMap.value(deviceId + "-" + channelNo); // 从map中找到对应的通道
+
if (channelDataJsonMap.contains(channelNo) == true)
{
QJsonObject channelDataItem = channelDataJsonMap.value(channelNo);
- CounterChannel * channel = ConstCache::getInstance().channelMap.value(deviceId + "-" + channelNo); // 从map中找到对应的通道
// 通道Label的序号
int channelIdx = devIdx * 16 + channelDataItem.value("channelNo").toInt() - 1;
@@ -450,9 +451,22 @@
channelValueList.at(channelIdx)->setText("");
}
} else {
+ // 计数器返回的无测量值的通道处理逻辑
+ int channelIdx = devIdx * 16 + i;
+
// 没有测量值的通道清空
- channelNameList.at(devIdx * 16 + i)->setText(QString("CH%1:%2").arg(channelNoStr).arg("-"));
- channelValueList.at(devIdx * 16 + i)->setText("");
+ channelNameList.at(channelIdx)->setText(QString("CH%1:%2").arg(channelNoStr).arg("-"));
+ channelValueList.at(channelIdx)->setText("");
+
+ // 当通道启用时显示通道离线 不再判断后台传回来的状态
+ // 当通道未启用时显示正常状态
+ if (channel != nullptr && channel->isActive() == true) {
+ channelNameList.at(channelIdx)->setStyleSheet(ConstCache::getInstance().qssConstMap.value("channelOffline"));
+ channelValueList.at(channelIdx)->setStyleSheet(ConstCache::getInstance().qssConstMap.value("channelOffline"));
+ } else {
+ channelNameList.at(channelIdx)->setStyleSheet(ConstCache::getInstance().qssConstMap.value(channelNameList.at(channelIdx)->property("labType").toString()));
+ channelValueList.at(channelIdx)->setStyleSheet(ConstCache::getInstance().qssConstMap.value(channelValueList.at(channelIdx)->property("labType").toString()));
+ }
}
}
}
@@ -477,18 +491,19 @@
}
// 是设备级的报警
- if (SettingConfig::getInstance().DEVICE_ALARM_CODES.contains(alarmCode) == true && alarmDev.contains(deviceId) == false) {
- if (alarmCode == "DEVICE_OFFLINE") {
+ if (SettingConfig::getInstance().DEVICE_ALARM_CODES.contains(alarmCode) == true) {
+ if (alarmCode == "DEVICE_OFFLINE" && offlineDev.contains(deviceId) == false) {
offlineDev.append(deviceId);
- } else if (alarmCode == "DEVICE_ALARM") {
+ } else if (alarmCode == "DEVICE_ALARM" && alarmDev.contains(deviceId) == false) {
alarmDev.append(deviceId);
}
}
- if (channelId.isEmpty() == false && SettingConfig::getInstance().CHANNEL_ALARM_CODES.contains(alarmCode) == true && alarmChannel.contains(channelId) == false) {
- if (alarmCode == "COUNTER_NO_DATA") {
+ if (channelId.isEmpty() == false && SettingConfig::getInstance().CHANNEL_ALARM_CODES.contains(alarmCode) == true) {
+ if (alarmCode == "COUNTER_NO_DATA" && offlineChannel.contains(channelId) == false) {
offlineChannel.append(channelId);
- } else if (alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION") {
+ } else if ((alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION") &&
+ alarmChannel.contains(channelId) == false) {
alarmChannel.append(channelId);
}
}
@@ -686,9 +701,9 @@
if (status == "0")
{
// 之前是正常的状态 新增报警状态
- if (alarmCode == "COUNTER_NO_DATA" && alarmChannel.contains(channelId) == false) {
+ if (alarmCode == "COUNTER_NO_DATA" && offlineChannel.contains(channelId) == false) {
offlineChannel.append(channelId);
- } else if (alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION" &&
+ } else if ((alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION") &&
alarmChannel.contains(channelId) == false) {
alarmChannel.append(channelId);
}
@@ -697,7 +712,7 @@
// 消警的逻辑
if (alarmCode == "COUNTER_NO_DATA" && offlineChannel.contains(channelId) == true) {
offlineChannel.removeOne(channelId);
- } else if (alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION" &&
+ } else if ((alarmCode == "FREQUENCY_HOPPING" || alarmCode == "PHASE_HOPPING" || alarmCode == "BAD_DATA" || alarmCode == "DATA_EXCEPTION") &&
alarmChannel.contains(channelId) == true) {
alarmChannel.removeOne(channelId);
}
diff --git a/CounterRealTime/common/HttpRequestController.cpp b/CounterRealTime/common/HttpRequestController.cpp
index 3d6d9a3..58ac632 100644
--- a/CounterRealTime/common/HttpRequestController.cpp
+++ b/CounterRealTime/common/HttpRequestController.cpp
@@ -59,6 +59,7 @@
resultObj.insert("code", 200); //
+ delete reply;
qDebug() << resultObj;
return resultObj;
@@ -94,6 +95,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
// qDebug() << resultObj;
return resultObj;
@@ -127,6 +129,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
qDebug() << resultObj;
return resultObj;
@@ -161,6 +164,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
qDebug() << resultObj;
return resultObj;
@@ -195,6 +199,7 @@
return 0;
}
+ delete reply;
qDebug() << resultObj;
return resultObj.value("data").toInt();
@@ -233,6 +238,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
qDebug() << resultObj;
return resultObj;
@@ -262,6 +268,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
qDebug() << resultObj;
return resultObj;
diff --git a/CounterRealTime/common/HttpServer.cpp b/CounterRealTime/common/HttpServer.cpp
index c1a1b48..08887d4 100644
--- a/CounterRealTime/common/HttpServer.cpp
+++ b/CounterRealTime/common/HttpServer.cpp
@@ -26,16 +26,15 @@
void HttpServer::newConnection()
{
QTcpSocket * m_socket = httpServer->nextPendingConnection();
- QObject::connect(m_socket, &QTcpSocket::readyRead, this, &HttpServer::readyRead);
+ connect(m_socket, &QTcpSocket::readyRead, this, &HttpServer::readyRead);
}
void HttpServer::readyRead()
{
QTcpSocket * socket = qobject_cast(sender());
if(socket) {
- QByteArray request = socket->readAll();
-
- qDebug() << "Request Data:" << request;
+// QByteArray request = socket->readAll();
+// qDebug() << "Request Data:" << request;
QByteArray response = this->buildHeartBeatResponse().toUtf8();
@@ -50,6 +49,8 @@
socket->flush();
socket->waitForBytesWritten(http.size() + response.size());
socket->close();
+
+ socket->deleteLater();
}
}
diff --git a/DeviceHub/device/FrequencyTuning.cpp b/DeviceHub/device/FrequencyTuning.cpp
index 36522e0..94e82b7 100644
--- a/DeviceHub/device/FrequencyTuning.cpp
+++ b/DeviceHub/device/FrequencyTuning.cpp
@@ -1,4 +1,4 @@
-#include "FrequencyTuning.h"
+#include "FrequencyTuning.h"
#include
#include
#include "DeviceHubWindow.h"
@@ -38,7 +38,7 @@
// buffer.append("$GLN,0,192.168.1.126,255.255.255.0,192.168.1.1,255.255.255.255,3000,2000,2001*71").append("\r\n");
// buffer.append("$GLF,0,0,0,0,00000,0,0,0,0,0,0,0,0,0,0,0,1900,2355,0,0,0,0,0,1,1,1*4C").append("\r\n");
// buffer.append("$GLP,0,1000,0,100,20000*45").append("\r\n");
- buffer.append("000$1C2BM1304-3021010071204312*$572BM1304-30210100713 -2.52E-10 +3.02E-14 -000000002000 00000");
+ buffer.append("000$1C2BM1304-3021010071204312*$572BM1304-30210100713 +0.000000000000 +0.000000000000 -000000002000 00000");
this->dataReceivedHandler(buffer);
QTimer::singleShot(20, this, [=](){
diff --git a/DeviceHub/protocol/FrequencyTuningProtocolTX.cpp b/DeviceHub/protocol/FrequencyTuningProtocolTX.cpp
index 77e60da..18e7199 100644
--- a/DeviceHub/protocol/FrequencyTuningProtocolTX.cpp
+++ b/DeviceHub/protocol/FrequencyTuningProtocolTX.cpp
@@ -47,8 +47,8 @@
QList subValues = content.split(0x20);
if (subValues.size() == 6)
{
- ((FrequencyTuningStatusFreqDto *)ftFrameData)->freqAdjust = subValues.at(1).toDouble();
- ((FrequencyTuningStatusFreqDto *)ftFrameData)->freqAdjustAcc = subValues.at(2).toDouble();
+ ((FrequencyTuningStatusFreqDto *)ftFrameData)->freqAdjust = subValues.at(1).toDouble() * CALCULATE_FACTOR;
+ ((FrequencyTuningStatusFreqDto *)ftFrameData)->freqAdjustAcc = subValues.at(2).toDouble() * CALCULATE_FACTOR;
((FrequencyTuningStatusFreqDto *)ftFrameData)->phaseShift = subValues.at(3).toLongLong();
((FrequencyTuningStatusFreqDto *)ftFrameData)->pulseWidth = subValues.at(4).toLongLong();
((FrequencyTuningStatusFreqDto *)ftFrameData)->phaseAdjust = subValues.at(5).toDouble();
@@ -87,7 +87,8 @@
{
// 频率偏移设置 or 频率偏移步进量设置
commandBytes.append(0x20);
- QString valueStr = QString::number(valueSet.toDouble(), 'e', 2).toUpper();
+ double value = valueSet.toDouble() / CALCULATE_FACTOR;
+ QString valueStr = QString::number(value, 'f', 12);
if (valueSet.toDouble() >= 0)
{
valueStr.prepend('+');
diff --git a/DeviceHub/protocol/FrequencyTuningProtocolTX.h b/DeviceHub/protocol/FrequencyTuningProtocolTX.h
index ac3b903..f61a0f0 100644
--- a/DeviceHub/protocol/FrequencyTuningProtocolTX.h
+++ b/DeviceHub/protocol/FrequencyTuningProtocolTX.h
@@ -9,6 +9,8 @@
#include "dto/FrequencyTuningStatusLockDto.h"
#include "dto/CommandReplyDto.h"
+static const double CALCULATE_FACTOR = 1E-7;
+
class FrequencyTuningProtocolTX : public DeviceProtocolBase
{
public:
diff --git a/DeviceHub/protocol/dto/FrequencyTuningStatusFreqDto.cpp b/DeviceHub/protocol/dto/FrequencyTuningStatusFreqDto.cpp
index 406a141..2175f32 100644
--- a/DeviceHub/protocol/dto/FrequencyTuningStatusFreqDto.cpp
+++ b/DeviceHub/protocol/dto/FrequencyTuningStatusFreqDto.cpp
@@ -1,4 +1,4 @@
-#include "FrequencyTuningStatusFreqDto.h"
+#include "FrequencyTuningStatusFreqDto.h"
FrequencyTuningStatusFreqDto::FrequencyTuningStatusFreqDto(QObject *parent) : DeviceFrameBaseDto(parent)
{
@@ -11,8 +11,8 @@
QJsonObject dataObj;
dataObj.insert("devStatus", devStatus);
- dataObj.insert("freqAdjust", freqAdjust);
- dataObj.insert("freqAdjustAcc", freqAdjustAcc);
+ dataObj.insert("freqAdjust", QString::number(freqAdjust, 'e', 4));
+ dataObj.insert("freqAdjustAcc", QString::number(freqAdjustAcc, 'e', 4));
dataObj.insert("pulseWidth", pulseWidth);
dataObj.insert("phaseAdjust", phaseAdjust);
dataObj.insert("phaseShift", phaseShift);
diff --git a/PhaseCompAcq/common/HttpRequestController.cpp b/PhaseCompAcq/common/HttpRequestController.cpp
index 4327e44..e782868 100644
--- a/PhaseCompAcq/common/HttpRequestController.cpp
+++ b/PhaseCompAcq/common/HttpRequestController.cpp
@@ -59,6 +59,7 @@
resultObj.insert("code", 200); //
+ delete reply;
qDebug() << resultObj;
return resultObj;
@@ -94,6 +95,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
qDebug() << resultObj;
return resultObj;
@@ -127,6 +129,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
qDebug() << resultObj;
return resultObj;
@@ -156,6 +159,7 @@
resultObj.insert("code", -1);
}
+ delete reply;
// qDebug() << resultObj;
return resultObj;
diff --git a/PhaseCompAcq/common/HttpServer.cpp b/PhaseCompAcq/common/HttpServer.cpp
index c1a1b48..08887d4 100644
--- a/PhaseCompAcq/common/HttpServer.cpp
+++ b/PhaseCompAcq/common/HttpServer.cpp
@@ -26,16 +26,15 @@
void HttpServer::newConnection()
{
QTcpSocket * m_socket = httpServer->nextPendingConnection();
- QObject::connect(m_socket, &QTcpSocket::readyRead, this, &HttpServer::readyRead);
+ connect(m_socket, &QTcpSocket::readyRead, this, &HttpServer::readyRead);
}
void HttpServer::readyRead()
{
QTcpSocket * socket = qobject_cast(sender());
if(socket) {
- QByteArray request = socket->readAll();
-
- qDebug() << "Request Data:" << request;
+// QByteArray request = socket->readAll();
+// qDebug() << "Request Data:" << request;
QByteArray response = this->buildHeartBeatResponse().toUtf8();
@@ -50,6 +49,8 @@
socket->flush();
socket->waitForBytesWritten(http.size() + response.size());
socket->close();
+
+ socket->deleteLater();
}
}