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("新密码不能与旧密码相同");