diff --git a/CounterRealTime/CounterSettingForm.cpp b/CounterRealTime/CounterSettingForm.cpp index da1d4eb..619dfd0 100644 --- a/CounterRealTime/CounterSettingForm.cpp +++ b/CounterRealTime/CounterSettingForm.cpp @@ -1,7 +1,7 @@ #include "CounterSettingForm.h" #include "ui_CounterSettingForm.h" -#include +#include CounterSettingForm::CounterSettingForm(QWidget *parent) : QWidget(parent), @@ -40,6 +40,7 @@ void CounterSettingForm::initCounterSelect() { + ui->iptPasswd->setText(""); ui->selectCounter->clear(); ui->selectCounter->addItem("== 请选择 ==", "-1"); QList devIds = SettingConfig::getInstance().MASTER == 1 ? ConstCache::getInstance().deviceIdLoopA : ConstCache::getInstance().deviceIdLoopB; @@ -290,69 +291,84 @@ QJsonArray channelSettingUpdated; - for (int i = 0; i < 16; i++) - { - QString channelCode; - double delay; - bool active; - if (i < 8) { - channelCode = clockListLeft.at(i)->text(); - delay = delayListLeft.at(i)->value(); - active = activeListLeft.at(i)->isChecked(); - } else if (i < 16) { - channelCode = clockListRight.at(i - 8)->text(); - delay = delayListRight.at(i - 8)->value(); - active = activeListRight.at(i - 8)->isChecked(); - } + QString password = ui->iptPasswd->text(); + QByteArray byteA = password.toUtf8().toBase64(); + QString passwordBase64 = QString(byteA.data()); - CounterChannel * channelPrt = ConstCache::getInstance().channelMap.value(QString("%1-%2").arg(deviceId).arg(i+1)); - if (channelPrt != nullptr) + if (password.isEmpty() == true) { + QMessageBox box(QMessageBox::Warning, "失败", "请输入密码", NULL); + box.setStandardButtons(QMessageBox::Ok); + box.button(QMessageBox::Ok)->setText("确定"); + box.exec(); + } else if (passwordBase64 != SettingConfig::getInstance().PASSWORD) { + QMessageBox box(QMessageBox::Warning, "失败", "密码验证失败", NULL); + box.setStandardButtons(QMessageBox::Ok); + box.button(QMessageBox::Ok)->setText("确定"); + box.exec(); + } else { + for (int i = 0; i < 16; i++) { - bool isUpdated = isChannelSettingUpdated(i, channelPrt); - if (isUpdated == true) { - channelPrt->setChannelCode(channelCode); - channelPrt->setDelays(QString::number(delay)); - channelPrt->setActive(active); + QString channelCode; + double delay; + bool active; + if (i < 8) { + channelCode = clockListLeft.at(i)->text(); + delay = delayListLeft.at(i)->value(); + active = activeListLeft.at(i)->isChecked(); + } else if (i < 16) { + channelCode = clockListRight.at(i - 8)->text(); + delay = delayListRight.at(i - 8)->value(); + active = activeListRight.at(i - 8)->isChecked(); + } + + CounterChannel * channelPrt = ConstCache::getInstance().channelMap.value(QString("%1-%2").arg(deviceId).arg(i+1)); + if (channelPrt != nullptr) + { + bool isUpdated = isChannelSettingUpdated(i, channelPrt); + if (isUpdated == true) { + channelPrt->setChannelCode(channelCode); + channelPrt->setDelays(QString::number(delay)); + channelPrt->setActive(active); + + QJsonObject channelObj; + channelObj.insert("id", channelPrt->getChannelId()); + channelObj.insert("deviceId", deviceId); + channelObj.insert("channelNo", channelPrt->getChannelNo()); + channelObj.insert("isUse", channelPrt->getIsUse()); + channelObj.insert("name", channelPrt->getName()); + + channelObj.insert("delays", QString::number(delay)); + channelObj.insert("isActive", active == true ? "1" : "0"); + channelObj.insert("channelCode", channelCode); + channelSettingUpdated.append(channelObj); + } + } else if (active == true) { + CounterChannel * newChannel = new CounterChannel(); + newChannel->setActive(true); + newChannel->setChannelCode(channelCode); + newChannel->setDelays(QString::number(delay)); + + ConstCache::getInstance().channelMap.insert(QString("%1-%2").arg(deviceId).arg(i+1), newChannel); QJsonObject channelObj; - channelObj.insert("id", channelPrt->getChannelId()); + channelObj.insert("id", ""); channelObj.insert("deviceId", deviceId); - channelObj.insert("channelNo", channelPrt->getChannelNo()); - channelObj.insert("isUse", channelPrt->getIsUse()); - channelObj.insert("name", channelPrt->getName()); + channelObj.insert("channelNo", QString::number(i + 1)); + channelObj.insert("isUse", SettingConfig::getInstance().MASTER); + channelObj.insert("name", QString("钟%1-1PPS").arg(channelCode)); channelObj.insert("delays", QString::number(delay)); channelObj.insert("isActive", active == true ? "1" : "0"); channelObj.insert("channelCode", channelCode); channelSettingUpdated.append(channelObj); } - } else if (active == true) { - CounterChannel * newChannel = new CounterChannel(); - newChannel->setActive(true); - newChannel->setChannelCode(channelCode); - newChannel->setDelays(QString::number(delay)); + } - ConstCache::getInstance().channelMap.insert(QString("%1-%2").arg(deviceId).arg(i+1), newChannel); - - QJsonObject channelObj; - channelObj.insert("id", ""); - channelObj.insert("deviceId", deviceId); - channelObj.insert("channelNo", QString::number(i + 1)); - channelObj.insert("isUse", SettingConfig::getInstance().MASTER); - channelObj.insert("name", QString("钟%1-1PPS").arg(channelCode)); - - channelObj.insert("delays", QString::number(delay)); - channelObj.insert("isActive", active == true ? "1" : "0"); - channelObj.insert("channelCode", channelCode); - channelSettingUpdated.append(channelObj); + if (channelSettingUpdated.size() > 0) { + emit this->channelSettingSubmit(channelSettingUpdated); + this->close(); } } - - if (channelSettingUpdated.size() > 0) { - emit this->channelSettingSubmit(channelSettingUpdated); - } - - this->close(); } void CounterSettingForm::on_btnChanelSetDialog_rejected() diff --git a/CounterRealTime/CounterSettingForm.cpp b/CounterRealTime/CounterSettingForm.cpp index da1d4eb..619dfd0 100644 --- a/CounterRealTime/CounterSettingForm.cpp +++ b/CounterRealTime/CounterSettingForm.cpp @@ -1,7 +1,7 @@ #include "CounterSettingForm.h" #include "ui_CounterSettingForm.h" -#include +#include CounterSettingForm::CounterSettingForm(QWidget *parent) : QWidget(parent), @@ -40,6 +40,7 @@ void CounterSettingForm::initCounterSelect() { + ui->iptPasswd->setText(""); ui->selectCounter->clear(); ui->selectCounter->addItem("== 请选择 ==", "-1"); QList devIds = SettingConfig::getInstance().MASTER == 1 ? ConstCache::getInstance().deviceIdLoopA : ConstCache::getInstance().deviceIdLoopB; @@ -290,69 +291,84 @@ QJsonArray channelSettingUpdated; - for (int i = 0; i < 16; i++) - { - QString channelCode; - double delay; - bool active; - if (i < 8) { - channelCode = clockListLeft.at(i)->text(); - delay = delayListLeft.at(i)->value(); - active = activeListLeft.at(i)->isChecked(); - } else if (i < 16) { - channelCode = clockListRight.at(i - 8)->text(); - delay = delayListRight.at(i - 8)->value(); - active = activeListRight.at(i - 8)->isChecked(); - } + QString password = ui->iptPasswd->text(); + QByteArray byteA = password.toUtf8().toBase64(); + QString passwordBase64 = QString(byteA.data()); - CounterChannel * channelPrt = ConstCache::getInstance().channelMap.value(QString("%1-%2").arg(deviceId).arg(i+1)); - if (channelPrt != nullptr) + if (password.isEmpty() == true) { + QMessageBox box(QMessageBox::Warning, "失败", "请输入密码", NULL); + box.setStandardButtons(QMessageBox::Ok); + box.button(QMessageBox::Ok)->setText("确定"); + box.exec(); + } else if (passwordBase64 != SettingConfig::getInstance().PASSWORD) { + QMessageBox box(QMessageBox::Warning, "失败", "密码验证失败", NULL); + box.setStandardButtons(QMessageBox::Ok); + box.button(QMessageBox::Ok)->setText("确定"); + box.exec(); + } else { + for (int i = 0; i < 16; i++) { - bool isUpdated = isChannelSettingUpdated(i, channelPrt); - if (isUpdated == true) { - channelPrt->setChannelCode(channelCode); - channelPrt->setDelays(QString::number(delay)); - channelPrt->setActive(active); + QString channelCode; + double delay; + bool active; + if (i < 8) { + channelCode = clockListLeft.at(i)->text(); + delay = delayListLeft.at(i)->value(); + active = activeListLeft.at(i)->isChecked(); + } else if (i < 16) { + channelCode = clockListRight.at(i - 8)->text(); + delay = delayListRight.at(i - 8)->value(); + active = activeListRight.at(i - 8)->isChecked(); + } + + CounterChannel * channelPrt = ConstCache::getInstance().channelMap.value(QString("%1-%2").arg(deviceId).arg(i+1)); + if (channelPrt != nullptr) + { + bool isUpdated = isChannelSettingUpdated(i, channelPrt); + if (isUpdated == true) { + channelPrt->setChannelCode(channelCode); + channelPrt->setDelays(QString::number(delay)); + channelPrt->setActive(active); + + QJsonObject channelObj; + channelObj.insert("id", channelPrt->getChannelId()); + channelObj.insert("deviceId", deviceId); + channelObj.insert("channelNo", channelPrt->getChannelNo()); + channelObj.insert("isUse", channelPrt->getIsUse()); + channelObj.insert("name", channelPrt->getName()); + + channelObj.insert("delays", QString::number(delay)); + channelObj.insert("isActive", active == true ? "1" : "0"); + channelObj.insert("channelCode", channelCode); + channelSettingUpdated.append(channelObj); + } + } else if (active == true) { + CounterChannel * newChannel = new CounterChannel(); + newChannel->setActive(true); + newChannel->setChannelCode(channelCode); + newChannel->setDelays(QString::number(delay)); + + ConstCache::getInstance().channelMap.insert(QString("%1-%2").arg(deviceId).arg(i+1), newChannel); QJsonObject channelObj; - channelObj.insert("id", channelPrt->getChannelId()); + channelObj.insert("id", ""); channelObj.insert("deviceId", deviceId); - channelObj.insert("channelNo", channelPrt->getChannelNo()); - channelObj.insert("isUse", channelPrt->getIsUse()); - channelObj.insert("name", channelPrt->getName()); + channelObj.insert("channelNo", QString::number(i + 1)); + channelObj.insert("isUse", SettingConfig::getInstance().MASTER); + channelObj.insert("name", QString("钟%1-1PPS").arg(channelCode)); channelObj.insert("delays", QString::number(delay)); channelObj.insert("isActive", active == true ? "1" : "0"); channelObj.insert("channelCode", channelCode); channelSettingUpdated.append(channelObj); } - } else if (active == true) { - CounterChannel * newChannel = new CounterChannel(); - newChannel->setActive(true); - newChannel->setChannelCode(channelCode); - newChannel->setDelays(QString::number(delay)); + } - ConstCache::getInstance().channelMap.insert(QString("%1-%2").arg(deviceId).arg(i+1), newChannel); - - QJsonObject channelObj; - channelObj.insert("id", ""); - channelObj.insert("deviceId", deviceId); - channelObj.insert("channelNo", QString::number(i + 1)); - channelObj.insert("isUse", SettingConfig::getInstance().MASTER); - channelObj.insert("name", QString("钟%1-1PPS").arg(channelCode)); - - channelObj.insert("delays", QString::number(delay)); - channelObj.insert("isActive", active == true ? "1" : "0"); - channelObj.insert("channelCode", channelCode); - channelSettingUpdated.append(channelObj); + if (channelSettingUpdated.size() > 0) { + emit this->channelSettingSubmit(channelSettingUpdated); + this->close(); } } - - if (channelSettingUpdated.size() > 0) { - emit this->channelSettingSubmit(channelSettingUpdated); - } - - this->close(); } void CounterSettingForm::on_btnChanelSetDialog_rejected() diff --git a/CounterRealTime/CounterSettingForm.ui b/CounterRealTime/CounterSettingForm.ui index 6c7fffc..a0d4438 100644 --- a/CounterRealTime/CounterSettingForm.ui +++ b/CounterRealTime/CounterSettingForm.ui @@ -95,7 +95,7 @@ - 0 + 1 @@ -403,6 +403,9 @@ 请选择计数器 + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + @@ -433,9 +436,9 @@ - 0 + 480 480 - 960 + 480 64 @@ -455,6 +458,59 @@ QDialogButtonBox::Cancel|QDialogButtonBox::Ok + + + + 0 + 480 + 150 + 64 + + + + + 0 + 0 + + + + + 0 + 64 + + + + + 16777215 + 41 + + + + 请输入密码 + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + 180 + 492 + 300 + 40 + + + + + 0 + 40 + + + + QLineEdit::Password + + diff --git a/CounterRealTime/CounterSettingForm.cpp b/CounterRealTime/CounterSettingForm.cpp index da1d4eb..619dfd0 100644 --- a/CounterRealTime/CounterSettingForm.cpp +++ b/CounterRealTime/CounterSettingForm.cpp @@ -1,7 +1,7 @@ #include "CounterSettingForm.h" #include "ui_CounterSettingForm.h" -#include +#include CounterSettingForm::CounterSettingForm(QWidget *parent) : QWidget(parent), @@ -40,6 +40,7 @@ void CounterSettingForm::initCounterSelect() { + ui->iptPasswd->setText(""); ui->selectCounter->clear(); ui->selectCounter->addItem("== 请选择 ==", "-1"); QList devIds = SettingConfig::getInstance().MASTER == 1 ? ConstCache::getInstance().deviceIdLoopA : ConstCache::getInstance().deviceIdLoopB; @@ -290,69 +291,84 @@ QJsonArray channelSettingUpdated; - for (int i = 0; i < 16; i++) - { - QString channelCode; - double delay; - bool active; - if (i < 8) { - channelCode = clockListLeft.at(i)->text(); - delay = delayListLeft.at(i)->value(); - active = activeListLeft.at(i)->isChecked(); - } else if (i < 16) { - channelCode = clockListRight.at(i - 8)->text(); - delay = delayListRight.at(i - 8)->value(); - active = activeListRight.at(i - 8)->isChecked(); - } + QString password = ui->iptPasswd->text(); + QByteArray byteA = password.toUtf8().toBase64(); + QString passwordBase64 = QString(byteA.data()); - CounterChannel * channelPrt = ConstCache::getInstance().channelMap.value(QString("%1-%2").arg(deviceId).arg(i+1)); - if (channelPrt != nullptr) + if (password.isEmpty() == true) { + QMessageBox box(QMessageBox::Warning, "失败", "请输入密码", NULL); + box.setStandardButtons(QMessageBox::Ok); + box.button(QMessageBox::Ok)->setText("确定"); + box.exec(); + } else if (passwordBase64 != SettingConfig::getInstance().PASSWORD) { + QMessageBox box(QMessageBox::Warning, "失败", "密码验证失败", NULL); + box.setStandardButtons(QMessageBox::Ok); + box.button(QMessageBox::Ok)->setText("确定"); + box.exec(); + } else { + for (int i = 0; i < 16; i++) { - bool isUpdated = isChannelSettingUpdated(i, channelPrt); - if (isUpdated == true) { - channelPrt->setChannelCode(channelCode); - channelPrt->setDelays(QString::number(delay)); - channelPrt->setActive(active); + QString channelCode; + double delay; + bool active; + if (i < 8) { + channelCode = clockListLeft.at(i)->text(); + delay = delayListLeft.at(i)->value(); + active = activeListLeft.at(i)->isChecked(); + } else if (i < 16) { + channelCode = clockListRight.at(i - 8)->text(); + delay = delayListRight.at(i - 8)->value(); + active = activeListRight.at(i - 8)->isChecked(); + } + + CounterChannel * channelPrt = ConstCache::getInstance().channelMap.value(QString("%1-%2").arg(deviceId).arg(i+1)); + if (channelPrt != nullptr) + { + bool isUpdated = isChannelSettingUpdated(i, channelPrt); + if (isUpdated == true) { + channelPrt->setChannelCode(channelCode); + channelPrt->setDelays(QString::number(delay)); + channelPrt->setActive(active); + + QJsonObject channelObj; + channelObj.insert("id", channelPrt->getChannelId()); + channelObj.insert("deviceId", deviceId); + channelObj.insert("channelNo", channelPrt->getChannelNo()); + channelObj.insert("isUse", channelPrt->getIsUse()); + channelObj.insert("name", channelPrt->getName()); + + channelObj.insert("delays", QString::number(delay)); + channelObj.insert("isActive", active == true ? "1" : "0"); + channelObj.insert("channelCode", channelCode); + channelSettingUpdated.append(channelObj); + } + } else if (active == true) { + CounterChannel * newChannel = new CounterChannel(); + newChannel->setActive(true); + newChannel->setChannelCode(channelCode); + newChannel->setDelays(QString::number(delay)); + + ConstCache::getInstance().channelMap.insert(QString("%1-%2").arg(deviceId).arg(i+1), newChannel); QJsonObject channelObj; - channelObj.insert("id", channelPrt->getChannelId()); + channelObj.insert("id", ""); channelObj.insert("deviceId", deviceId); - channelObj.insert("channelNo", channelPrt->getChannelNo()); - channelObj.insert("isUse", channelPrt->getIsUse()); - channelObj.insert("name", channelPrt->getName()); + channelObj.insert("channelNo", QString::number(i + 1)); + channelObj.insert("isUse", SettingConfig::getInstance().MASTER); + channelObj.insert("name", QString("钟%1-1PPS").arg(channelCode)); channelObj.insert("delays", QString::number(delay)); channelObj.insert("isActive", active == true ? "1" : "0"); channelObj.insert("channelCode", channelCode); channelSettingUpdated.append(channelObj); } - } else if (active == true) { - CounterChannel * newChannel = new CounterChannel(); - newChannel->setActive(true); - newChannel->setChannelCode(channelCode); - newChannel->setDelays(QString::number(delay)); + } - ConstCache::getInstance().channelMap.insert(QString("%1-%2").arg(deviceId).arg(i+1), newChannel); - - QJsonObject channelObj; - channelObj.insert("id", ""); - channelObj.insert("deviceId", deviceId); - channelObj.insert("channelNo", QString::number(i + 1)); - channelObj.insert("isUse", SettingConfig::getInstance().MASTER); - channelObj.insert("name", QString("钟%1-1PPS").arg(channelCode)); - - channelObj.insert("delays", QString::number(delay)); - channelObj.insert("isActive", active == true ? "1" : "0"); - channelObj.insert("channelCode", channelCode); - channelSettingUpdated.append(channelObj); + if (channelSettingUpdated.size() > 0) { + emit this->channelSettingSubmit(channelSettingUpdated); + this->close(); } } - - if (channelSettingUpdated.size() > 0) { - emit this->channelSettingSubmit(channelSettingUpdated); - } - - this->close(); } void CounterSettingForm::on_btnChanelSetDialog_rejected() diff --git a/CounterRealTime/CounterSettingForm.ui b/CounterRealTime/CounterSettingForm.ui index 6c7fffc..a0d4438 100644 --- a/CounterRealTime/CounterSettingForm.ui +++ b/CounterRealTime/CounterSettingForm.ui @@ -95,7 +95,7 @@ - 0 + 1 @@ -403,6 +403,9 @@ 请选择计数器 + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + @@ -433,9 +436,9 @@ - 0 + 480 480 - 960 + 480 64 @@ -455,6 +458,59 @@ QDialogButtonBox::Cancel|QDialogButtonBox::Ok + + + + 0 + 480 + 150 + 64 + + + + + 0 + 0 + + + + + 0 + 64 + + + + + 16777215 + 41 + + + + 请输入密码 + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + 180 + 492 + 300 + 40 + + + + + 0 + 40 + + + + QLineEdit::Password + + diff --git a/CounterRealTime/common/utils/SettingConfig.cpp b/CounterRealTime/common/utils/SettingConfig.cpp index 539ef19..b6c72d7 100644 --- a/CounterRealTime/common/utils/SettingConfig.cpp +++ b/CounterRealTime/common/utils/SettingConfig.cpp @@ -48,6 +48,7 @@ MASTER_HOST = getProperty("client", "masterHost").toString(); MASTER_PORT = getProperty("client", "masterPort").toInt(); DISPLAY_COUNT = getProperty("client", "displayCount", "4").toInt(); + PASSWORD = getProperty("client", "password").toString(); SERVER_PORT = getProperty("client", "serverPort").toInt(); CLIENT_TITLE = getProperty("client", "title").toString(); diff --git a/CounterRealTime/CounterSettingForm.cpp b/CounterRealTime/CounterSettingForm.cpp index da1d4eb..619dfd0 100644 --- a/CounterRealTime/CounterSettingForm.cpp +++ b/CounterRealTime/CounterSettingForm.cpp @@ -1,7 +1,7 @@ #include "CounterSettingForm.h" #include "ui_CounterSettingForm.h" -#include +#include CounterSettingForm::CounterSettingForm(QWidget *parent) : QWidget(parent), @@ -40,6 +40,7 @@ void CounterSettingForm::initCounterSelect() { + ui->iptPasswd->setText(""); ui->selectCounter->clear(); ui->selectCounter->addItem("== 请选择 ==", "-1"); QList devIds = SettingConfig::getInstance().MASTER == 1 ? ConstCache::getInstance().deviceIdLoopA : ConstCache::getInstance().deviceIdLoopB; @@ -290,69 +291,84 @@ QJsonArray channelSettingUpdated; - for (int i = 0; i < 16; i++) - { - QString channelCode; - double delay; - bool active; - if (i < 8) { - channelCode = clockListLeft.at(i)->text(); - delay = delayListLeft.at(i)->value(); - active = activeListLeft.at(i)->isChecked(); - } else if (i < 16) { - channelCode = clockListRight.at(i - 8)->text(); - delay = delayListRight.at(i - 8)->value(); - active = activeListRight.at(i - 8)->isChecked(); - } + QString password = ui->iptPasswd->text(); + QByteArray byteA = password.toUtf8().toBase64(); + QString passwordBase64 = QString(byteA.data()); - CounterChannel * channelPrt = ConstCache::getInstance().channelMap.value(QString("%1-%2").arg(deviceId).arg(i+1)); - if (channelPrt != nullptr) + if (password.isEmpty() == true) { + QMessageBox box(QMessageBox::Warning, "失败", "请输入密码", NULL); + box.setStandardButtons(QMessageBox::Ok); + box.button(QMessageBox::Ok)->setText("确定"); + box.exec(); + } else if (passwordBase64 != SettingConfig::getInstance().PASSWORD) { + QMessageBox box(QMessageBox::Warning, "失败", "密码验证失败", NULL); + box.setStandardButtons(QMessageBox::Ok); + box.button(QMessageBox::Ok)->setText("确定"); + box.exec(); + } else { + for (int i = 0; i < 16; i++) { - bool isUpdated = isChannelSettingUpdated(i, channelPrt); - if (isUpdated == true) { - channelPrt->setChannelCode(channelCode); - channelPrt->setDelays(QString::number(delay)); - channelPrt->setActive(active); + QString channelCode; + double delay; + bool active; + if (i < 8) { + channelCode = clockListLeft.at(i)->text(); + delay = delayListLeft.at(i)->value(); + active = activeListLeft.at(i)->isChecked(); + } else if (i < 16) { + channelCode = clockListRight.at(i - 8)->text(); + delay = delayListRight.at(i - 8)->value(); + active = activeListRight.at(i - 8)->isChecked(); + } + + CounterChannel * channelPrt = ConstCache::getInstance().channelMap.value(QString("%1-%2").arg(deviceId).arg(i+1)); + if (channelPrt != nullptr) + { + bool isUpdated = isChannelSettingUpdated(i, channelPrt); + if (isUpdated == true) { + channelPrt->setChannelCode(channelCode); + channelPrt->setDelays(QString::number(delay)); + channelPrt->setActive(active); + + QJsonObject channelObj; + channelObj.insert("id", channelPrt->getChannelId()); + channelObj.insert("deviceId", deviceId); + channelObj.insert("channelNo", channelPrt->getChannelNo()); + channelObj.insert("isUse", channelPrt->getIsUse()); + channelObj.insert("name", channelPrt->getName()); + + channelObj.insert("delays", QString::number(delay)); + channelObj.insert("isActive", active == true ? "1" : "0"); + channelObj.insert("channelCode", channelCode); + channelSettingUpdated.append(channelObj); + } + } else if (active == true) { + CounterChannel * newChannel = new CounterChannel(); + newChannel->setActive(true); + newChannel->setChannelCode(channelCode); + newChannel->setDelays(QString::number(delay)); + + ConstCache::getInstance().channelMap.insert(QString("%1-%2").arg(deviceId).arg(i+1), newChannel); QJsonObject channelObj; - channelObj.insert("id", channelPrt->getChannelId()); + channelObj.insert("id", ""); channelObj.insert("deviceId", deviceId); - channelObj.insert("channelNo", channelPrt->getChannelNo()); - channelObj.insert("isUse", channelPrt->getIsUse()); - channelObj.insert("name", channelPrt->getName()); + channelObj.insert("channelNo", QString::number(i + 1)); + channelObj.insert("isUse", SettingConfig::getInstance().MASTER); + channelObj.insert("name", QString("钟%1-1PPS").arg(channelCode)); channelObj.insert("delays", QString::number(delay)); channelObj.insert("isActive", active == true ? "1" : "0"); channelObj.insert("channelCode", channelCode); channelSettingUpdated.append(channelObj); } - } else if (active == true) { - CounterChannel * newChannel = new CounterChannel(); - newChannel->setActive(true); - newChannel->setChannelCode(channelCode); - newChannel->setDelays(QString::number(delay)); + } - ConstCache::getInstance().channelMap.insert(QString("%1-%2").arg(deviceId).arg(i+1), newChannel); - - QJsonObject channelObj; - channelObj.insert("id", ""); - channelObj.insert("deviceId", deviceId); - channelObj.insert("channelNo", QString::number(i + 1)); - channelObj.insert("isUse", SettingConfig::getInstance().MASTER); - channelObj.insert("name", QString("钟%1-1PPS").arg(channelCode)); - - channelObj.insert("delays", QString::number(delay)); - channelObj.insert("isActive", active == true ? "1" : "0"); - channelObj.insert("channelCode", channelCode); - channelSettingUpdated.append(channelObj); + if (channelSettingUpdated.size() > 0) { + emit this->channelSettingSubmit(channelSettingUpdated); + this->close(); } } - - if (channelSettingUpdated.size() > 0) { - emit this->channelSettingSubmit(channelSettingUpdated); - } - - this->close(); } void CounterSettingForm::on_btnChanelSetDialog_rejected() diff --git a/CounterRealTime/CounterSettingForm.ui b/CounterRealTime/CounterSettingForm.ui index 6c7fffc..a0d4438 100644 --- a/CounterRealTime/CounterSettingForm.ui +++ b/CounterRealTime/CounterSettingForm.ui @@ -95,7 +95,7 @@ - 0 + 1 @@ -403,6 +403,9 @@ 请选择计数器 + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + @@ -433,9 +436,9 @@ - 0 + 480 480 - 960 + 480 64 @@ -455,6 +458,59 @@ QDialogButtonBox::Cancel|QDialogButtonBox::Ok + + + + 0 + 480 + 150 + 64 + + + + + 0 + 0 + + + + + 0 + 64 + + + + + 16777215 + 41 + + + + 请输入密码 + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + 180 + 492 + 300 + 40 + + + + + 0 + 40 + + + + QLineEdit::Password + + diff --git a/CounterRealTime/common/utils/SettingConfig.cpp b/CounterRealTime/common/utils/SettingConfig.cpp index 539ef19..b6c72d7 100644 --- a/CounterRealTime/common/utils/SettingConfig.cpp +++ b/CounterRealTime/common/utils/SettingConfig.cpp @@ -48,6 +48,7 @@ MASTER_HOST = getProperty("client", "masterHost").toString(); MASTER_PORT = getProperty("client", "masterPort").toInt(); DISPLAY_COUNT = getProperty("client", "displayCount", "4").toInt(); + PASSWORD = getProperty("client", "password").toString(); SERVER_PORT = getProperty("client", "serverPort").toInt(); CLIENT_TITLE = getProperty("client", "title").toString(); diff --git a/CounterRealTime/common/utils/SettingConfig.h b/CounterRealTime/common/utils/SettingConfig.h index 4df9a1a..5b8735a 100644 --- a/CounterRealTime/common/utils/SettingConfig.h +++ b/CounterRealTime/common/utils/SettingConfig.h @@ -71,6 +71,7 @@ quint16 MASTER_PORT; // 显示计数器数量 qint8 DISPLAY_COUNT; + QString PASSWORD; // 服务监听端口号 quint16 SERVER_PORT; QString CLIENT_TITLE; diff --git a/CounterRealTime/CounterSettingForm.cpp b/CounterRealTime/CounterSettingForm.cpp index da1d4eb..619dfd0 100644 --- a/CounterRealTime/CounterSettingForm.cpp +++ b/CounterRealTime/CounterSettingForm.cpp @@ -1,7 +1,7 @@ #include "CounterSettingForm.h" #include "ui_CounterSettingForm.h" -#include +#include CounterSettingForm::CounterSettingForm(QWidget *parent) : QWidget(parent), @@ -40,6 +40,7 @@ void CounterSettingForm::initCounterSelect() { + ui->iptPasswd->setText(""); ui->selectCounter->clear(); ui->selectCounter->addItem("== 请选择 ==", "-1"); QList devIds = SettingConfig::getInstance().MASTER == 1 ? ConstCache::getInstance().deviceIdLoopA : ConstCache::getInstance().deviceIdLoopB; @@ -290,69 +291,84 @@ QJsonArray channelSettingUpdated; - for (int i = 0; i < 16; i++) - { - QString channelCode; - double delay; - bool active; - if (i < 8) { - channelCode = clockListLeft.at(i)->text(); - delay = delayListLeft.at(i)->value(); - active = activeListLeft.at(i)->isChecked(); - } else if (i < 16) { - channelCode = clockListRight.at(i - 8)->text(); - delay = delayListRight.at(i - 8)->value(); - active = activeListRight.at(i - 8)->isChecked(); - } + QString password = ui->iptPasswd->text(); + QByteArray byteA = password.toUtf8().toBase64(); + QString passwordBase64 = QString(byteA.data()); - CounterChannel * channelPrt = ConstCache::getInstance().channelMap.value(QString("%1-%2").arg(deviceId).arg(i+1)); - if (channelPrt != nullptr) + if (password.isEmpty() == true) { + QMessageBox box(QMessageBox::Warning, "失败", "请输入密码", NULL); + box.setStandardButtons(QMessageBox::Ok); + box.button(QMessageBox::Ok)->setText("确定"); + box.exec(); + } else if (passwordBase64 != SettingConfig::getInstance().PASSWORD) { + QMessageBox box(QMessageBox::Warning, "失败", "密码验证失败", NULL); + box.setStandardButtons(QMessageBox::Ok); + box.button(QMessageBox::Ok)->setText("确定"); + box.exec(); + } else { + for (int i = 0; i < 16; i++) { - bool isUpdated = isChannelSettingUpdated(i, channelPrt); - if (isUpdated == true) { - channelPrt->setChannelCode(channelCode); - channelPrt->setDelays(QString::number(delay)); - channelPrt->setActive(active); + QString channelCode; + double delay; + bool active; + if (i < 8) { + channelCode = clockListLeft.at(i)->text(); + delay = delayListLeft.at(i)->value(); + active = activeListLeft.at(i)->isChecked(); + } else if (i < 16) { + channelCode = clockListRight.at(i - 8)->text(); + delay = delayListRight.at(i - 8)->value(); + active = activeListRight.at(i - 8)->isChecked(); + } + + CounterChannel * channelPrt = ConstCache::getInstance().channelMap.value(QString("%1-%2").arg(deviceId).arg(i+1)); + if (channelPrt != nullptr) + { + bool isUpdated = isChannelSettingUpdated(i, channelPrt); + if (isUpdated == true) { + channelPrt->setChannelCode(channelCode); + channelPrt->setDelays(QString::number(delay)); + channelPrt->setActive(active); + + QJsonObject channelObj; + channelObj.insert("id", channelPrt->getChannelId()); + channelObj.insert("deviceId", deviceId); + channelObj.insert("channelNo", channelPrt->getChannelNo()); + channelObj.insert("isUse", channelPrt->getIsUse()); + channelObj.insert("name", channelPrt->getName()); + + channelObj.insert("delays", QString::number(delay)); + channelObj.insert("isActive", active == true ? "1" : "0"); + channelObj.insert("channelCode", channelCode); + channelSettingUpdated.append(channelObj); + } + } else if (active == true) { + CounterChannel * newChannel = new CounterChannel(); + newChannel->setActive(true); + newChannel->setChannelCode(channelCode); + newChannel->setDelays(QString::number(delay)); + + ConstCache::getInstance().channelMap.insert(QString("%1-%2").arg(deviceId).arg(i+1), newChannel); QJsonObject channelObj; - channelObj.insert("id", channelPrt->getChannelId()); + channelObj.insert("id", ""); channelObj.insert("deviceId", deviceId); - channelObj.insert("channelNo", channelPrt->getChannelNo()); - channelObj.insert("isUse", channelPrt->getIsUse()); - channelObj.insert("name", channelPrt->getName()); + channelObj.insert("channelNo", QString::number(i + 1)); + channelObj.insert("isUse", SettingConfig::getInstance().MASTER); + channelObj.insert("name", QString("钟%1-1PPS").arg(channelCode)); channelObj.insert("delays", QString::number(delay)); channelObj.insert("isActive", active == true ? "1" : "0"); channelObj.insert("channelCode", channelCode); channelSettingUpdated.append(channelObj); } - } else if (active == true) { - CounterChannel * newChannel = new CounterChannel(); - newChannel->setActive(true); - newChannel->setChannelCode(channelCode); - newChannel->setDelays(QString::number(delay)); + } - ConstCache::getInstance().channelMap.insert(QString("%1-%2").arg(deviceId).arg(i+1), newChannel); - - QJsonObject channelObj; - channelObj.insert("id", ""); - channelObj.insert("deviceId", deviceId); - channelObj.insert("channelNo", QString::number(i + 1)); - channelObj.insert("isUse", SettingConfig::getInstance().MASTER); - channelObj.insert("name", QString("钟%1-1PPS").arg(channelCode)); - - channelObj.insert("delays", QString::number(delay)); - channelObj.insert("isActive", active == true ? "1" : "0"); - channelObj.insert("channelCode", channelCode); - channelSettingUpdated.append(channelObj); + if (channelSettingUpdated.size() > 0) { + emit this->channelSettingSubmit(channelSettingUpdated); + this->close(); } } - - if (channelSettingUpdated.size() > 0) { - emit this->channelSettingSubmit(channelSettingUpdated); - } - - this->close(); } void CounterSettingForm::on_btnChanelSetDialog_rejected() diff --git a/CounterRealTime/CounterSettingForm.ui b/CounterRealTime/CounterSettingForm.ui index 6c7fffc..a0d4438 100644 --- a/CounterRealTime/CounterSettingForm.ui +++ b/CounterRealTime/CounterSettingForm.ui @@ -95,7 +95,7 @@ - 0 + 1 @@ -403,6 +403,9 @@ 请选择计数器 + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + @@ -433,9 +436,9 @@ - 0 + 480 480 - 960 + 480 64 @@ -455,6 +458,59 @@ QDialogButtonBox::Cancel|QDialogButtonBox::Ok + + + + 0 + 480 + 150 + 64 + + + + + 0 + 0 + + + + + 0 + 64 + + + + + 16777215 + 41 + + + + 请输入密码 + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + 180 + 492 + 300 + 40 + + + + + 0 + 40 + + + + QLineEdit::Password + + diff --git a/CounterRealTime/common/utils/SettingConfig.cpp b/CounterRealTime/common/utils/SettingConfig.cpp index 539ef19..b6c72d7 100644 --- a/CounterRealTime/common/utils/SettingConfig.cpp +++ b/CounterRealTime/common/utils/SettingConfig.cpp @@ -48,6 +48,7 @@ MASTER_HOST = getProperty("client", "masterHost").toString(); MASTER_PORT = getProperty("client", "masterPort").toInt(); DISPLAY_COUNT = getProperty("client", "displayCount", "4").toInt(); + PASSWORD = getProperty("client", "password").toString(); SERVER_PORT = getProperty("client", "serverPort").toInt(); CLIENT_TITLE = getProperty("client", "title").toString(); diff --git a/CounterRealTime/common/utils/SettingConfig.h b/CounterRealTime/common/utils/SettingConfig.h index 4df9a1a..5b8735a 100644 --- a/CounterRealTime/common/utils/SettingConfig.h +++ b/CounterRealTime/common/utils/SettingConfig.h @@ -71,6 +71,7 @@ quint16 MASTER_PORT; // 显示计数器数量 qint8 DISPLAY_COUNT; + QString PASSWORD; // 服务监听端口号 quint16 SERVER_PORT; QString CLIENT_TITLE; diff --git a/CounterRealTime/conf/config.ini b/CounterRealTime/conf/config.ini index a6eae2f..1df42d8 100644 --- a/CounterRealTime/conf/config.ini +++ b/CounterRealTime/conf/config.ini @@ -26,6 +26,7 @@ masterHost=192.168.20.52 masterPort=5201 displayCount=4 +password=MTIzNDU2 serverPort=5905 [alarm] diff --git a/CounterRealTime/CounterSettingForm.cpp b/CounterRealTime/CounterSettingForm.cpp index da1d4eb..619dfd0 100644 --- a/CounterRealTime/CounterSettingForm.cpp +++ b/CounterRealTime/CounterSettingForm.cpp @@ -1,7 +1,7 @@ #include "CounterSettingForm.h" #include "ui_CounterSettingForm.h" -#include +#include CounterSettingForm::CounterSettingForm(QWidget *parent) : QWidget(parent), @@ -40,6 +40,7 @@ void CounterSettingForm::initCounterSelect() { + ui->iptPasswd->setText(""); ui->selectCounter->clear(); ui->selectCounter->addItem("== 请选择 ==", "-1"); QList devIds = SettingConfig::getInstance().MASTER == 1 ? ConstCache::getInstance().deviceIdLoopA : ConstCache::getInstance().deviceIdLoopB; @@ -290,69 +291,84 @@ QJsonArray channelSettingUpdated; - for (int i = 0; i < 16; i++) - { - QString channelCode; - double delay; - bool active; - if (i < 8) { - channelCode = clockListLeft.at(i)->text(); - delay = delayListLeft.at(i)->value(); - active = activeListLeft.at(i)->isChecked(); - } else if (i < 16) { - channelCode = clockListRight.at(i - 8)->text(); - delay = delayListRight.at(i - 8)->value(); - active = activeListRight.at(i - 8)->isChecked(); - } + QString password = ui->iptPasswd->text(); + QByteArray byteA = password.toUtf8().toBase64(); + QString passwordBase64 = QString(byteA.data()); - CounterChannel * channelPrt = ConstCache::getInstance().channelMap.value(QString("%1-%2").arg(deviceId).arg(i+1)); - if (channelPrt != nullptr) + if (password.isEmpty() == true) { + QMessageBox box(QMessageBox::Warning, "失败", "请输入密码", NULL); + box.setStandardButtons(QMessageBox::Ok); + box.button(QMessageBox::Ok)->setText("确定"); + box.exec(); + } else if (passwordBase64 != SettingConfig::getInstance().PASSWORD) { + QMessageBox box(QMessageBox::Warning, "失败", "密码验证失败", NULL); + box.setStandardButtons(QMessageBox::Ok); + box.button(QMessageBox::Ok)->setText("确定"); + box.exec(); + } else { + for (int i = 0; i < 16; i++) { - bool isUpdated = isChannelSettingUpdated(i, channelPrt); - if (isUpdated == true) { - channelPrt->setChannelCode(channelCode); - channelPrt->setDelays(QString::number(delay)); - channelPrt->setActive(active); + QString channelCode; + double delay; + bool active; + if (i < 8) { + channelCode = clockListLeft.at(i)->text(); + delay = delayListLeft.at(i)->value(); + active = activeListLeft.at(i)->isChecked(); + } else if (i < 16) { + channelCode = clockListRight.at(i - 8)->text(); + delay = delayListRight.at(i - 8)->value(); + active = activeListRight.at(i - 8)->isChecked(); + } + + CounterChannel * channelPrt = ConstCache::getInstance().channelMap.value(QString("%1-%2").arg(deviceId).arg(i+1)); + if (channelPrt != nullptr) + { + bool isUpdated = isChannelSettingUpdated(i, channelPrt); + if (isUpdated == true) { + channelPrt->setChannelCode(channelCode); + channelPrt->setDelays(QString::number(delay)); + channelPrt->setActive(active); + + QJsonObject channelObj; + channelObj.insert("id", channelPrt->getChannelId()); + channelObj.insert("deviceId", deviceId); + channelObj.insert("channelNo", channelPrt->getChannelNo()); + channelObj.insert("isUse", channelPrt->getIsUse()); + channelObj.insert("name", channelPrt->getName()); + + channelObj.insert("delays", QString::number(delay)); + channelObj.insert("isActive", active == true ? "1" : "0"); + channelObj.insert("channelCode", channelCode); + channelSettingUpdated.append(channelObj); + } + } else if (active == true) { + CounterChannel * newChannel = new CounterChannel(); + newChannel->setActive(true); + newChannel->setChannelCode(channelCode); + newChannel->setDelays(QString::number(delay)); + + ConstCache::getInstance().channelMap.insert(QString("%1-%2").arg(deviceId).arg(i+1), newChannel); QJsonObject channelObj; - channelObj.insert("id", channelPrt->getChannelId()); + channelObj.insert("id", ""); channelObj.insert("deviceId", deviceId); - channelObj.insert("channelNo", channelPrt->getChannelNo()); - channelObj.insert("isUse", channelPrt->getIsUse()); - channelObj.insert("name", channelPrt->getName()); + channelObj.insert("channelNo", QString::number(i + 1)); + channelObj.insert("isUse", SettingConfig::getInstance().MASTER); + channelObj.insert("name", QString("钟%1-1PPS").arg(channelCode)); channelObj.insert("delays", QString::number(delay)); channelObj.insert("isActive", active == true ? "1" : "0"); channelObj.insert("channelCode", channelCode); channelSettingUpdated.append(channelObj); } - } else if (active == true) { - CounterChannel * newChannel = new CounterChannel(); - newChannel->setActive(true); - newChannel->setChannelCode(channelCode); - newChannel->setDelays(QString::number(delay)); + } - ConstCache::getInstance().channelMap.insert(QString("%1-%2").arg(deviceId).arg(i+1), newChannel); - - QJsonObject channelObj; - channelObj.insert("id", ""); - channelObj.insert("deviceId", deviceId); - channelObj.insert("channelNo", QString::number(i + 1)); - channelObj.insert("isUse", SettingConfig::getInstance().MASTER); - channelObj.insert("name", QString("钟%1-1PPS").arg(channelCode)); - - channelObj.insert("delays", QString::number(delay)); - channelObj.insert("isActive", active == true ? "1" : "0"); - channelObj.insert("channelCode", channelCode); - channelSettingUpdated.append(channelObj); + if (channelSettingUpdated.size() > 0) { + emit this->channelSettingSubmit(channelSettingUpdated); + this->close(); } } - - if (channelSettingUpdated.size() > 0) { - emit this->channelSettingSubmit(channelSettingUpdated); - } - - this->close(); } void CounterSettingForm::on_btnChanelSetDialog_rejected() diff --git a/CounterRealTime/CounterSettingForm.ui b/CounterRealTime/CounterSettingForm.ui index 6c7fffc..a0d4438 100644 --- a/CounterRealTime/CounterSettingForm.ui +++ b/CounterRealTime/CounterSettingForm.ui @@ -95,7 +95,7 @@ - 0 + 1 @@ -403,6 +403,9 @@ 请选择计数器 + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + @@ -433,9 +436,9 @@ - 0 + 480 480 - 960 + 480 64 @@ -455,6 +458,59 @@ QDialogButtonBox::Cancel|QDialogButtonBox::Ok + + + + 0 + 480 + 150 + 64 + + + + + 0 + 0 + + + + + 0 + 64 + + + + + 16777215 + 41 + + + + 请输入密码 + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + 180 + 492 + 300 + 40 + + + + + 0 + 40 + + + + QLineEdit::Password + + diff --git a/CounterRealTime/common/utils/SettingConfig.cpp b/CounterRealTime/common/utils/SettingConfig.cpp index 539ef19..b6c72d7 100644 --- a/CounterRealTime/common/utils/SettingConfig.cpp +++ b/CounterRealTime/common/utils/SettingConfig.cpp @@ -48,6 +48,7 @@ MASTER_HOST = getProperty("client", "masterHost").toString(); MASTER_PORT = getProperty("client", "masterPort").toInt(); DISPLAY_COUNT = getProperty("client", "displayCount", "4").toInt(); + PASSWORD = getProperty("client", "password").toString(); SERVER_PORT = getProperty("client", "serverPort").toInt(); CLIENT_TITLE = getProperty("client", "title").toString(); diff --git a/CounterRealTime/common/utils/SettingConfig.h b/CounterRealTime/common/utils/SettingConfig.h index 4df9a1a..5b8735a 100644 --- a/CounterRealTime/common/utils/SettingConfig.h +++ b/CounterRealTime/common/utils/SettingConfig.h @@ -71,6 +71,7 @@ quint16 MASTER_PORT; // 显示计数器数量 qint8 DISPLAY_COUNT; + QString PASSWORD; // 服务监听端口号 quint16 SERVER_PORT; QString CLIENT_TITLE; diff --git a/CounterRealTime/conf/config.ini b/CounterRealTime/conf/config.ini index a6eae2f..1df42d8 100644 --- a/CounterRealTime/conf/config.ini +++ b/CounterRealTime/conf/config.ini @@ -26,6 +26,7 @@ masterHost=192.168.20.52 masterPort=5201 displayCount=4 +password=MTIzNDU2 serverPort=5905 [alarm] diff --git a/CounterRealTime/qss/mainClock.css b/CounterRealTime/qss/mainClock.css index 2a191ba..3d51134 100644 --- a/CounterRealTime/qss/mainClock.css +++ b/CounterRealTime/qss/mainClock.css @@ -295,6 +295,20 @@ font-size: 16px; margin-left: 30px; } +QWidget#tabChannel QLabel#labelPasswd { + color: #FFFFFF; + font-family: "Microsoft Yahei"; + font-size: 16px; + margin-left: 30px; +} +QWidget#tabChannel QLineEdit#iptPasswd { + color: #FFFFFF; + font-family: "Microsoft Yahei"; + font-size: 16px; + background-color: transparent; + border: 1px solid #0BB2E9; + border-radius: 6px; +} QComboBox#selectCounter { border: 1px solid #0BB2E9;