From 154577119672958a020c559e7cbd35d4fd535b43 Mon Sep 17 00:00:00 2001 From: jiangpeng Date: Fri, 5 Jun 2026 15:15:16 +0800 Subject: [PATCH] =?UTF-8?q?fix=EF=BC=9A=E4=BF=AE=E6=94=B9=E5=AF=86?= =?UTF-8?q?=E7=A0=81=E7=9B=B8=E5=85=B3=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- oms_web/oms_vue/src/api/login.js | 1 - oms_web/oms_vue/src/views/login.vue | 130 ++++++++++-------- .../controller/system/SysLoginController.java | 16 +-- 3 files changed, 78 insertions(+), 69 deletions(-) diff --git a/oms_web/oms_vue/src/api/login.js b/oms_web/oms_vue/src/api/login.js index 59a829a2..d6362800 100644 --- a/oms_web/oms_vue/src/api/login.js +++ b/oms_web/oms_vue/src/api/login.js @@ -29,7 +29,6 @@ export function login(username, password, code, rememberMe) { export function resetLoginPwd(data) { const formData = createLoginFormData({ username: data.username, - oldPassword: data.oldPassword, newPassword: data.newPassword, confirmPassword: data.confirmPassword, emailCode: data.emailCode diff --git a/oms_web/oms_vue/src/views/login.vue b/oms_web/oms_vue/src/views/login.vue index a08f16d8..8e8f5d84 100644 --- a/oms_web/oms_vue/src/views/login.vue +++ b/oms_web/oms_vue/src/views/login.vue @@ -37,7 +37,10 @@ - 记住密码 +
+ 记住密码 + 忘记密码? +
- - + + @@ -111,7 +114,6 @@ export default { }, resetPwdForm: { username: "", - oldPassword: "", newPassword: "", confirmPassword: "", emailCode: "" @@ -122,8 +124,8 @@ export default { emailCodeCountdown: 0, emailCodeTimer: null, resetPwdRules: { - oldPassword: [ - { required: true, trigger: "blur", message: "请输入旧密码" } + username: [ + { required: true, trigger: "blur", message: "请输入用户名" } ], newPassword: [ { required: true, trigger: "blur", message: "请输入新密码" }, @@ -201,7 +203,6 @@ export default { this.clearEmailCodeTimer() this.resetPwdForm = { username: this.loginForm.username, - oldPassword: "", newPassword: "", confirmPassword: "", emailCode: "" @@ -213,16 +214,17 @@ export default { }) }, sendEmailCode() { - if (!this.resetPwdForm.username) { - this.$modal.msgError("请输入用户名") - return - } - this.emailCodeLoading = true - sendResetPwdEmailCode(this.resetPwdForm.username).then(() => { - this.$modal.msgSuccess("验证码已发送") - this.startEmailCodeCountdown() - }).finally(() => { - this.emailCodeLoading = false + this.$refs.resetPwdForm.validateField('username', (errorMessage) => { + if (errorMessage) { + return + } + this.emailCodeLoading = true + sendResetPwdEmailCode(this.resetPwdForm.username).then(() => { + this.$modal.msgSuccess("验证码已发送") + this.startEmailCodeCountdown() + }).finally(() => { + this.emailCodeLoading = false + }) }) }, startEmailCodeCountdown() { @@ -279,7 +281,6 @@ export default { this.$store.dispatch("Login", this.loginForm).then((res) => { if (res && res.code === 301) { this.resetPwdForm.username = this.loginForm.username - this.resetPwdForm.oldPassword = this.loginForm.password this.resetPwdForm.newPassword = "" this.resetPwdForm.confirmPassword = "" this.resetPwdForm.emailCode = "" @@ -325,50 +326,63 @@ export default { } .login-form { - border-radius: 6px; - background: #ffffff; - width: 400px; - padding: 25px 25px 5px 25px; - z-index: 1; - .el-input { - height: 38px; - input { + border-radius: 6px; + background: #ffffff; + width: 400px; + padding: 25px 25px 5px 25px; + z-index: 1; + .el-input { height: 38px; + input { + height: 38px; + } + } + .input-icon { + height: 39px; + width: 14px; + margin-left: 2px; } } - .input-icon { - height: 39px; - width: 14px; - margin-left: 2px; + .login-options { + display: flex; + align-items: center; + justify-content: space-between; + margin: 0px 0px 25px 0px; } + .forgot-password { + cursor: pointer; + font-size: 14px; } -.login-tip { - font-size: 13px; - text-align: center; - color: #bfbfbf; -} -.login-code { - width: 33%; - height: 38px; - float: right; - img { - cursor: pointer; - vertical-align: middle; + .forgot-password:hover { + text-decoration: underline; + } + .login-tip { + font-size: 13px; + text-align: center; + color: #bfbfbf; + } + .login-code { + width: 33%; + height: 38px; + float: right; + img { + cursor: pointer; + vertical-align: middle; + } + } + .el-login-footer { + height: 40px; + line-height: 40px; + position: fixed; + bottom: 0; + width: 100%; + text-align: center; + color: #fff; + font-family: Arial; + font-size: 12px; + letter-spacing: 1px; + } + .login-code-img { + height: 38px; } -} -.el-login-footer { - height: 40px; - line-height: 40px; - position: fixed; - bottom: 0; - width: 100%; - text-align: center; - color: #fff; - font-family: Arial; - font-size: 12px; - letter-spacing: 1px; -} -.login-code-img { - height: 38px; -} diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java index d6b09a7c..08ab96c4 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java @@ -92,11 +92,11 @@ public class SysLoginController extends BaseController try { subject.login(token); -// if (!passwordService.isStrongPassword(password)) -// { -// subject.logout(); -// return AjaxResult.warn("当前密码不符合安全规则,请修改密码后重新登录"); -// } + if (!passwordService.isStrongPassword(password)) + { + subject.logout(); + return AjaxResult.warn("当前密码不符合安全规则,请修改密码后重新登录"); + } return success(); } catch (AuthenticationException e) @@ -153,7 +153,7 @@ public class SysLoginController extends BaseController @PostMapping("/login/resetPwd") @ResponseBody - public AjaxResult resetPwd(String username, String oldPassword, String newPassword, String confirmPassword, String emailCode) + public AjaxResult resetPwd(String username, String newPassword, String confirmPassword, String emailCode) { if (StringUtils.isEmpty(username)) { @@ -185,10 +185,6 @@ public class SysLoginController extends BaseController { return emailCodeValidateResult; } - if (!passwordService.matches(user, oldPassword)) - { - return error("修改密码失败,旧密码错误"); - } if (passwordService.matches(user, newPassword)) { return error("新密码不能与旧密码相同");