diff --git a/acceleration.cpp b/acceleration.cpp index a26746e..04edd6e 100644 --- a/acceleration.cpp +++ b/acceleration.cpp @@ -139,6 +139,18 @@ void Acceleration::on_pushButton_confirm_clicked() { QMessageBox::warning(this, QStringLiteral("警告"), "危险 + 高 必须大于 警报 + 高"); return; } + if(ui->spinBox_high_pass_low->value() > ui->spinBox_high_pass_high->value()){ + QMessageBox::warning(this, QStringLiteral("警告"), "带通1配置错误!"); + return; + } + if(ui->spinBox_low_pass_low->value() > ui->spinBox_low_pass_high->value()){ + QMessageBox::warning(this, QStringLiteral("警告"), "带通2配置错误!"); + return; + } + if(ui->spinBox_band_pass_low->value() > ui->spinBox_band_pass_high->value()){ + QMessageBox::warning(this, QStringLiteral("警告"), "带通3配置错误!"); + return; + } std::shared_ptr ptr = std::dynamic_pointer_cast(base_ptr); ptr->base_config_[channel - 1].channel_type = kVibAcc; std::shared_ptr variable_base = ptr->GetChannelPtr(channel); diff --git a/acceleration.ui b/acceleration.ui index ef712f0..a184801 100644 --- a/acceleration.ui +++ b/acceleration.ui @@ -236,6 +236,9 @@ 16777215 + + 30 + @@ -259,6 +262,15 @@ 16777215 + + 3000 + + + 1 + + + 3000 + diff --git a/mainwindow.cpp b/mainwindow.cpp index 9a5ac5c..a460c62 100644 --- a/mainwindow.cpp +++ b/mainwindow.cpp @@ -116,7 +116,7 @@ MainWindow::MainWindow(QWidget *parent) //qInstallMessageHandler(messageHandler); #endif QDate buildDate = QLocale( QLocale::English ).toDate( QString(__DATE__).replace(" ", " 0"), "MMM dd yyyy"); - QString Version = "V1.0_" + buildDate.toString("yyyyMMdd") + "_8417"; + QString Version = "V1.0_" + buildDate.toString("yyyyMMdd") + "_24f3"; ui->label_version->setText(Version); } @@ -216,6 +216,8 @@ void MainWindow::createMenu(const QString &rootTitle, QPushButton *parent) { mainMenu->addSeparator(); QAction *version = mainMenu->addAction("查看版本"); mainMenu->addSeparator(); + QAction *copy_sub_card = mainMenu->addAction("复制板卡配置"); + QAction *move_sub_card = mainMenu->addAction("移动板卡配置"); QAction *config_sub_card = mainMenu->addAction("更新配置"); QAction *get_sub_log = mainMenu->addAction("获取日志"); QAction *get_sub_card_voltage = mainMenu->addAction("获取电压范围"); @@ -249,6 +251,8 @@ void MainWindow::createMenu(const QString &rootTitle, QPushButton *parent) { QObject::connect(get_sub_card_voltage, &QAction::triggered, this, &MainWindow::onMenuActionTriggered); QObject::connect(get_vib_version, &QAction::triggered, this, &MainWindow::onMenuActionTriggered); QObject::connect(get_card_processID, &QAction::triggered, this, &MainWindow::onMenuActionTriggered); + QObject::connect(copy_sub_card, &QAction::triggered, this, &MainWindow::onMenuActionTriggered); + QObject::connect(move_sub_card, &QAction::triggered, this, &MainWindow::onMenuActionTriggered); } @@ -433,6 +437,10 @@ void MainWindow::onMenuActionTriggered() { GetVibVersion(button_id); }else if(action->text() == "获取进程号"){ GetCardProcessID(button_id); + }else if(action->text() == "复制板卡配置"){ + GetCardProcessID(button_id); + }else if(action->text() == "移动板卡配置"){ + GetCardProcessID(button_id); } break; // 找到按钮后,跳出循环 } @@ -698,6 +706,7 @@ void MainWindow::on_pushButton_open_clicked() { std::shared_ptr base_ptr = ConfigMgr::Instance()->GetSlotPtr(i + 1); if(base_ptr != nullptr){ ConfigMgr::Instance()->RemoveCard(base_ptr); + ConfigMgr::Instance()->card_type_[i] = 0; } } ConfigMgr::Instance()->Load(tsi_config_file); @@ -902,6 +911,40 @@ void MainWindow::GetCardProcessID(int slot){ qint64 bytesWritten = m_tcpClient->sendData((char*)&get_card_processID_req, length); m_tcpClient->waitForRead(); qDebug() << "bytesWritten: " << bytesWritten; +} +void MainWindow::CopySubCard(int slot){ + slot_no = slot; + QString strTips = QString("请输入1到15之间的数值"); + bool ok = false; + int value = QInputDialog::getInt(this, tr("输入整数对话框"), strTips, 0, 1, 15, 1, &ok); + if(!ok) return; + if(value < 1){ + QMessageBox::information(this, QStringLiteral("提示"), QStringLiteral("请输入正确的板卡号!")); + return ; + } + int card_type_old = -1, card_type_new = -1; + std::shared_ptr base_ptr_old = ConfigMgr::Instance()->GetSlotPtr(slot_no); + if(base_ptr_old != nullptr){ + card_type_old = base_ptr_old->card_type_; + } + std::shared_ptr base_ptr_new = ConfigMgr::Instance()->GetSlotPtr(value); + if(base_ptr_new != nullptr){ + card_type_new = base_ptr_new->card_type_; + if(card_type_old != card_type_new){ + QMessageBox::warning(this, QStringLiteral("警告"), QStringLiteral("请选择相同的板卡类型!")); + return ; + } + }else{ + QMessageBox::warning(this, QStringLiteral("警告"), QStringLiteral("目标板卡无配置,请使用“移动板卡配置”!")); + return ; + } + std::shared_ptr vib_data = std::make_shared(); + vib_data->slot_ = value; + vib_data->relative_number = value; + ConfigMgr::Instance()->AddCard(vib_data); +} +void MainWindow::MoveSubCard(int slot){ + } void MainWindow::readData(const QByteArray &data) { qDebug() << "Received from server:" << data; @@ -1086,7 +1129,9 @@ void MainWindow::onCloseConfig(){ for (int i = 0; i < SLOT_NUM; i++) { std::shared_ptr base_ptr = ConfigMgr::Instance()->GetSlotPtr(i + 1); if(base_ptr != nullptr){ + qDebug() << "i" << i << base_ptr->card_type_; ConfigMgr::Instance()->RemoveCard(base_ptr); + ConfigMgr::Instance()->card_type_[i] = 0; } } tsi_config_file = ""; @@ -1188,3 +1233,9 @@ void MainWindow::on_pushButton_upload_config_clicked(){ UploadConfigFile(0x1); } + +void MainWindow::on_pushButton_close_clicked() +{ + onCloseConfig(); +} + diff --git a/mainwindow.h b/mainwindow.h index 4473e19..b133837 100644 --- a/mainwindow.h +++ b/mainwindow.h @@ -64,7 +64,8 @@ private: void GetVoltageRangeValue(int slot); void GetVibVersion(int slot); void GetCardProcessID(int slot); - + void CopySubCard(int slot); + void MoveSubCard(int slot); private slots: @@ -95,5 +96,6 @@ private slots: void on_pushButton_download_clicked(); void on_pushButton_upload_clicked(); void on_pushButton_upload_config_clicked(); + void on_pushButton_close_clicked(); }; #endif // MAINWINDOW_H diff --git a/mainwindow.ui b/mainwindow.ui index 16668a8..d3ddb22 100644 --- a/mainwindow.ui +++ b/mainwindow.ui @@ -91,7 +91,7 @@ - 140 + 200 20 45 45 @@ -119,7 +119,7 @@ - 260 + 320 20 45 45 @@ -147,7 +147,7 @@ - 200 + 260 20 45 45 @@ -172,6 +172,34 @@ 配置 + + + + 140 + 20 + 45 + 45 + + + + + 45 + 45 + + + + + 45 + 45 + + + + 打开配置文件 + + + 关闭 + + diff --git a/pressure_pulsation.cpp b/pressure_pulsation.cpp index 8b33008..d33dff6 100644 --- a/pressure_pulsation.cpp +++ b/pressure_pulsation.cpp @@ -139,6 +139,18 @@ void PressurePulsation::on_pushButton_confirm_clicked() QMessageBox::warning(this, QStringLiteral("警告"), "危险 + 高 必须大于 警报 + 高"); return; } + if(ui->spinBox_high_pass_low->value() > ui->spinBox_high_pass_high->value()){ + QMessageBox::warning(this, QStringLiteral("警告"), "带通1配置错误!"); + return; + } + if(ui->spinBox_low_pass_low->value() > ui->spinBox_low_pass_high->value()){ + QMessageBox::warning(this, QStringLiteral("警告"), "带通2配置错误!"); + return; + } + if(ui->spinBox_band_pass_low->value() > ui->spinBox_band_pass_high->value()){ + QMessageBox::warning(this, QStringLiteral("警告"), "带通3配置错误!"); + return; + } std::shared_ptr ptr = std::dynamic_pointer_cast(base_ptr); ptr->base_config_[channel - 1].channel_type = kVibPressurePulsation; diff --git a/pressure_pulsation.ui b/pressure_pulsation.ui index f93c70c..7780818 100644 --- a/pressure_pulsation.ui +++ b/pressure_pulsation.ui @@ -227,6 +227,9 @@ 16777215 + + 30 + @@ -250,6 +253,12 @@ 16777215 + + 3000 + + + 3000 + diff --git a/radial_vibration.cpp b/radial_vibration.cpp index 8c20209..5c54cbd 100644 --- a/radial_vibration.cpp +++ b/radial_vibration.cpp @@ -149,6 +149,18 @@ void Radial::on_pushButton_confirm_clicked() { QMessageBox::warning(this, QStringLiteral("警告"), "危险 + 高 必须大于 警报 + 高"); return; } + if(ui->spinBox_high_pass_low->value() > ui->spinBox_high_pass_high->value()){ + QMessageBox::warning(this, QStringLiteral("警告"), "带通1配置错误!"); + return; + } + if(ui->spinBox_low_pass_low->value() > ui->spinBox_low_pass_high->value()){ + QMessageBox::warning(this, QStringLiteral("警告"), "带通2配置错误!"); + return; + } + if(ui->spinBox_band_pass_low->value() > ui->spinBox_band_pass_high->value()){ + QMessageBox::warning(this, QStringLiteral("警告"), "带通3配置错误!"); + return; + } std::shared_ptr ptr = std::dynamic_pointer_cast(base_ptr); ptr->base_config_[channel - 1].channel_type = kVibRadial; @@ -319,3 +331,9 @@ void Radial::on_lineEdit_alert_high_level_editingFinished() } } + +void Radial::on_comboBox_rectifier_funtion_currentIndexChanged(int index) +{ + +} + diff --git a/radial_vibration.h b/radial_vibration.h index 37b0f8a..e46596d 100644 --- a/radial_vibration.h +++ b/radial_vibration.h @@ -24,6 +24,8 @@ class Radial : public QWidget { void on_checkBox_2x_ampl_toggled(bool checked); void on_lineEdit_alert_high_level_editingFinished(); + void on_comboBox_rectifier_funtion_currentIndexChanged(int index); + private: Ui::Radial_vibration *ui; diff --git a/radial_vibration.ui b/radial_vibration.ui index 84e7692..6671775 100644 --- a/radial_vibration.ui +++ b/radial_vibration.ui @@ -221,6 +221,9 @@ 16777215 + + 30 + @@ -244,6 +247,12 @@ 16777215 + + 3000 + + + 3000 + diff --git a/trust.cpp b/trust.cpp index 981929c..109ddc2 100644 --- a/trust.cpp +++ b/trust.cpp @@ -116,6 +116,18 @@ void Trust::on_pushButton_confirm_clicked() QMessageBox::warning(this, QStringLiteral("警告"), "警报 + 低 必须大于 危险 + 低"); return; } + if(ui->spinBox_high_pass_low->value() > ui->spinBox_high_pass_high->value()){ + QMessageBox::warning(this, QStringLiteral("警告"), "带通1配置错误!"); + return; + } + if(ui->spinBox_low_pass_low->value() > ui->spinBox_low_pass_high->value()){ + QMessageBox::warning(this, QStringLiteral("警告"), "带通2配置错误!"); + return; + } + if(ui->spinBox_band_pass_low->value() > ui->spinBox_band_pass_high->value()){ + QMessageBox::warning(this, QStringLiteral("警告"), "带通3配置错误!"); + return; + } std::shared_ptr ptr = std::dynamic_pointer_cast(base_ptr); ptr->base_config_[channel - 1].channel_type = kVibThrust; diff --git a/trust.ui b/trust.ui index 10512b1..7de1c14 100644 --- a/trust.ui +++ b/trust.ui @@ -98,7 +98,7 @@ - 0 + 1 @@ -221,6 +221,12 @@ 16777215 + + 30 + + + 30 + @@ -244,6 +250,12 @@ 16777215 + + 3000 + + + 3000 + diff --git a/velocity.cpp b/velocity.cpp index 9d58f42..fd84098 100644 --- a/velocity.cpp +++ b/velocity.cpp @@ -110,6 +110,18 @@ void Velocity::on_pushButton_confirm_clicked() { QMessageBox::warning(this, QStringLiteral("警告"), "危险 + 高 必须大于 警报 + 高"); return; } + if(ui->spinBox_high_pass_low->value() > ui->spinBox_high_pass_high->value()){ + QMessageBox::warning(this, QStringLiteral("警告"), "带通1配置错误!"); + return; + } + if(ui->spinBox_low_pass_low->value() > ui->spinBox_low_pass_high->value()){ + QMessageBox::warning(this, QStringLiteral("警告"), "带通2配置错误!"); + return; + } + if(ui->spinBox_band_pass_low->value() > ui->spinBox_band_pass_high->value()){ + QMessageBox::warning(this, QStringLiteral("警告"), "带通3配置错误!"); + return; + } std::shared_ptr ptr = std::dynamic_pointer_cast(base_ptr); ptr->base_config_[channel - 1].channel_type = kVibVelocity; diff --git a/velocity.ui b/velocity.ui index 2dfb882..ec85ad7 100644 --- a/velocity.ui +++ b/velocity.ui @@ -227,6 +227,12 @@ 16777215 + + 30 + + + 30 + @@ -250,6 +256,12 @@ 16777215 + + 3000 + + + 3000 +