clEditPassword.cpp 3.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. #include "clEditPassword.h"
  2. #include "ui_clEditPassword.h"
  3. #include <QValidator>
  4. #include "CAppInfo.h"
  5. #include "logproc.h"
  6. #include "awMsgBox.h"
  7. clEditPassword::clEditPassword(QWidget *parent) :
  8. QWidget(parent),
  9. ui(new Ui::clEditPassword)
  10. {
  11. ui->setupUi(this);
  12. setStyleSheet(g_appInfoPtr->m_sQssStr);
  13. qRegisterMetaType<CEditPassword>("CEditPassword");
  14. connect(g_httpBllPtr.get(), &CHttpBll::sgnEditPassword, this, &clEditPassword::onEditPassword);
  15. }
  16. clEditPassword::~clEditPassword()
  17. {
  18. delete ui;
  19. }
  20. void clEditPassword::setUI(const int nWidth, const int nHeight)
  21. {
  22. setGeometry(0, 0, nWidth, nHeight);
  23. QRegExp regx("[a-zA-Z0-9]+$");
  24. ui->edt_oldPassword->setGeometry(g_appInfoPtr->m_fRate*30, g_appInfoPtr->m_fRate*30,
  25. g_appInfoPtr->m_fRate*360, g_appInfoPtr->m_fRate*40);
  26. QValidator *validator = new QRegExpValidator(regx, ui->edt_newPassword);
  27. ui->edt_newPassword->setValidator(validator);
  28. ui->edt_newPassword->setGeometry(ui->edt_oldPassword->x(), ui->edt_oldPassword->y() + ui->edt_oldPassword->height() + g_appInfoPtr->m_fRate*20,
  29. ui->edt_oldPassword->width(), ui->edt_oldPassword->height());
  30. QValidator *validator1 = new QRegExpValidator(regx, ui->edt_newPassword1);
  31. ui->edt_newPassword1->setValidator(validator1);
  32. ui->edt_newPassword1->setGeometry(ui->edt_oldPassword->x(), ui->edt_newPassword->y() + ui->edt_newPassword->height() + g_appInfoPtr->m_fRate*20,
  33. ui->edt_oldPassword->width(), ui->edt_oldPassword->height());
  34. ui->btn_savePassword->setGeometry(ui->edt_oldPassword->x(), ui->edt_newPassword1->y() + ui->edt_newPassword1->height() + g_appInfoPtr->m_fRate*20,
  35. g_appInfoPtr->m_fRate*80, g_appInfoPtr->m_fRate*36);
  36. }
  37. void clEditPassword::on_btn_savePassword_clicked()
  38. {
  39. if (ui->edt_oldPassword->text().isEmpty())
  40. {
  41. ShowMsg(QString::fromLocal8Bit("请先输入原始密码"), this);
  42. return;
  43. }
  44. if (ui->edt_newPassword->text() != ui->edt_newPassword1->text())
  45. {
  46. ShowMsg(QString::fromLocal8Bit("两次输入密码不一致"), this);
  47. return;
  48. }
  49. if(ui->edt_newPassword->text().length() < 6 ||
  50. ui->edt_newPassword->text().length() > 18)
  51. {
  52. ShowMsg(QString::fromLocal8Bit("请输入6到18位数字或字母"), this);
  53. return;
  54. }
  55. CHttpRequestPackage hrp;
  56. hrp.sUri = "/api/ecs_core/student/password";
  57. hrp.nRequestType = RequestType::rtEditPassword;
  58. hrp.eParamType = HttpParamType::hptUrl;
  59. hrp.sParamList.push_back(QString("newPassword,%1").arg(ui->edt_newPassword->text()));
  60. hrp.sParamList.push_back(QString("password,%1").arg(ui->edt_oldPassword->text()));
  61. g_httpBllPtr->put(hrp);
  62. }
  63. void clEditPassword::onEditPassword(CEditPassword editPassword)
  64. {
  65. if (editPassword.nCode == 200)
  66. {
  67. ShowMsg(QString::fromLocal8Bit("保存密码成功"), this);
  68. }
  69. else
  70. {
  71. if (editPassword.sMessage != "")
  72. {
  73. ShowMsg(editPassword.sMessage, this);
  74. }
  75. else
  76. {
  77. ShowMsg(QString::fromLocal8Bit("保存密码失败"), this);
  78. }
  79. }
  80. }