#include "AddUserAccountWnd.h" #include "ui_AddUserAccountWnd.h" #include "Src/Common/JMessageTip.h" #include "Src/common/UserManagementShared.h" AddUserAccountWnd::AddUserAccountWnd(QWidget* parent) : QDialog(parent), ui(new Ui::AddUserAccountWnd) { ui->setupUi(this); initForm(); } AddUserAccountWnd::~AddUserAccountWnd() { delete ui; } void AddUserAccountWnd::initForm() { //// 隐藏原生标题栏 //setWindowFlags(Qt::FramelessWindowHint | Qt::Dialog); //// 窗口背景透明 //setAttribute(Qt::WA_TranslucentBackground, true); } void AddUserAccountWnd::SetDefaultVal(UserAccounts _userInfo) { m_bRevise = true; ui->userIDLineEdit->setText(_userInfo.UserName); ui->userIDLineEdit->setEnabled(false); ui->fullNameLineEdit->setText(_userInfo.DisplayName); ui->passwordLineEdit->setText(_userInfo.passWord); ui->confirmPasswordLineEdit->setText(_userInfo.passWord); int nPrivilege = _userInfo.Privilege.toInt(); if(nPrivilege == enPrivilegeLevel::Administrator) { ui->adminRadioButton->setChecked(true); } else if(nPrivilege == enPrivilegeLevel::Engineer) { ui->engineerRadioButton->setChecked(true); } else if(nPrivilege == enPrivilegeLevel::Technician) { ui->technicianRadioButton->setChecked(true); } else if(nPrivilege == enPrivilegeLevel::SeniorOperator) { ui->seniorOperatorRadioButton->setChecked(true); } else if(nPrivilege == enPrivilegeLevel::Operator) { ui->operatorRadioButton->setChecked(true); } } void AddUserAccountWnd::on_cancelBut_clicked() { this->close(); } void AddUserAccountWnd::on_finishBut_clicked() { UserAccounts _userInfo = {}; // 1. 用户名 QString strTransferVariable = ui->userIDLineEdit->text(); strTransferVariable = strTransferVariable.trimmed(); if(!strTransferVariable.isEmpty()) { _userInfo.UserName = strTransferVariable; //2. 说明 strTransferVariable = ui->fullNameLineEdit->text(); strTransferVariable = strTransferVariable.trimmed(); if(!strTransferVariable.isEmpty()) { _userInfo.DisplayName = strTransferVariable; //3.密码 strTransferVariable = ui->passwordLineEdit->text(); strTransferVariable = strTransferVariable.trimmed(); if(!strTransferVariable.isEmpty()) { //4. 确认密码 这里确定之后在能往下执行 strTransferVariable = ui->confirmPasswordLineEdit->text(); strTransferVariable = strTransferVariable.trimmed(); if(!strTransferVariable.isEmpty()) { //5.比对密码是否一致 if(ui->passwordLineEdit->text() == ui->confirmPasswordLineEdit->text()) { _userInfo.passWord = JEncryption::Encryption(strTransferVariable.toStdString()).c_str(); // 6. 获取等级状态 int nSelectType = enPrivilegeLevel::Operator; if(ui->adminRadioButton->isChecked()) { nSelectType = enPrivilegeLevel::Administrator; } else if(ui->engineerRadioButton->isChecked()) { nSelectType = enPrivilegeLevel::Engineer; } else if(ui->technicianRadioButton->isChecked()) { nSelectType = enPrivilegeLevel::Technician; } else if(ui->seniorOperatorRadioButton->isChecked()) { nSelectType = enPrivilegeLevel::SeniorOperator; } else if(ui->operatorRadioButton->isChecked()) { nSelectType = enPrivilegeLevel::Operator; } _userInfo.Privilege = nSelectType; //7. 最后一步................................................................ JUserAccountsData* pUserAcc = JUserAccountsData::GetInstance(); bool bTurnUp = false; //是否找到 for(auto& a : pUserAcc->m_veUserAccounts) { if(a.UserName == _userInfo.UserName) { if(!m_bRevise) { // 提示已经存在 JMessageTip::Message_critical(tr("The current username already exists, please re-enter it!", "当前用户名已经存在,请重新输入!"), this); return; } a = _userInfo; bTurnUp = true; break; } } if(!bTurnUp) { JUserAccountsData::GetInstance()->m_veUserAccounts.push_back(_userInfo); } this->close(); } else { JMessageTip::Message_warning(tr("The passwords entered twice are inconsistent, please check", "2次密码输入的不一致,请检查"),this); } } else { ui->confirmPasswordLineEdit->setFocus(); } } else { ui->passwordLineEdit->setFocus(); } } else { ui->fullNameLineEdit->setFocus(); } } else { ui->userIDLineEdit->setFocus(); } }