From 397971378357db417763bd388c25cdeeaed5d33c Mon Sep 17 00:00:00 2001
From: RuoYi <yzz_ivy@163.com>
Date: Fri, 17 Apr 2026 14:47:43 +0800
Subject: [PATCH] 用户密码支持自定义配置规则
---
ruoyi-ui/src/views/system/user/profile/resetPwd.vue | 54 ++++++++++++++++++++++++++++--------------------------
1 files changed, 28 insertions(+), 26 deletions(-)
diff --git a/ruoyi-ui/src/views/system/user/profile/resetPwd.vue b/ruoyi-ui/src/views/system/user/profile/resetPwd.vue
index 06715e5..369e451 100644
--- a/ruoyi-ui/src/views/system/user/profile/resetPwd.vue
+++ b/ruoyi-ui/src/views/system/user/profile/resetPwd.vue
@@ -1,13 +1,13 @@
<template>
- <el-form ref="form" :model="user" :rules="rules" label-width="80px">
+ <el-form ref="form" :model="user" :rules="formRules" label-width="80px">
<el-form-item label="旧密码" prop="oldPassword">
<el-input v-model="user.oldPassword" placeholder="请输入旧密码" type="password" show-password/>
</el-form-item>
- <el-form-item label="新密码" prop="newPassword">
+ <el-form-item label="新密码" prop="newPassword" :rules="infoPwdValidator">
<el-input v-model="user.newPassword" placeholder="请输入新密码" type="password" show-password/>
</el-form-item>
<el-form-item label="确认密码" prop="confirmPassword">
- <el-input v-model="user.confirmPassword" placeholder="请确认密码" type="password" show-password/>
+ <el-input v-model="user.confirmPassword" placeholder="请确认新密码" type="password" show-password/>
</el-form-item>
<el-form-item>
<el-button type="primary" size="mini" @click="submit">保存</el-button>
@@ -17,52 +17,54 @@
</template>
<script>
-import { updateUserPwd } from "@/api/system/user";
+import { updateUserPwd } from "@/api/system/user"
+import passwordRule from "@/utils/passwordRule"
export default {
+ mixins: [passwordRule],
data() {
- const equalToPassword = (rule, value, callback) => {
- if (this.user.newPassword !== value) {
- callback(new Error("两次输入的密码不一致"));
- } else {
- callback();
- }
- };
return {
user: {
oldPassword: undefined,
newPassword: undefined,
confirmPassword: undefined
- },
- // 表单校验
- rules: {
+ }
+ }
+ },
+ computed: {
+ formRules() {
+ return {
oldPassword: [
{ required: true, message: "旧密码不能为空", trigger: "blur" }
],
- newPassword: [
- { required: true, message: "新密码不能为空", trigger: "blur" },
- { min: 6, max: 20, message: "长度在 6 到 20 个字符", trigger: "blur" }
- ],
confirmPassword: [
{ required: true, message: "确认密码不能为空", trigger: "blur" },
- { required: true, validator: equalToPassword, trigger: "blur" }
+ {
+ validator: (rule, value, callback) => {
+ if (this.user.newPassword !== value) {
+ callback(new Error("两次输入的密码不一致"))
+ } else {
+ callback()
+ }
+ }, trigger: "blur"
+ }
]
}
- };
+ }
},
methods: {
submit() {
this.$refs["form"].validate(valid => {
if (valid) {
- updateUserPwd(this.user.oldPassword, this.user.newPassword).then(response => {
- this.$modal.msgSuccess("修改成功");
- });
+ updateUserPwd(this.user.oldPassword, this.user.newPassword).then(() => {
+ this.$modal.msgSuccess("修改成功")
+ })
}
- });
+ })
},
close() {
- this.$tab.closePage();
+ this.$tab.closePage()
}
}
-};
+}
</script>
--
Gitblit v1.9.3