From 045a941fb5713236249d29e9d13d19c7d6a4404f Mon Sep 17 00:00:00 2001 From: ljlong_2630 Date: Tue, 7 Nov 2023 14:32:23 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E7=94=A8=E6=88=B7=E4=B8=AA?= =?UTF-8?q?=E4=BA=BA=E4=B8=AD=E5=BF=83=E7=AD=89=E5=86=85=E5=AE=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/layout/components/Navbar.vue | 77 ++++++++++++++++++++++++++++++-- src/views/model/alert/policy.vue | 4 +- 2 files changed, 76 insertions(+), 5 deletions(-) diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue index d4deb34..b26d334 100644 --- a/src/layout/components/Navbar.vue +++ b/src/layout/components/Navbar.vue @@ -19,7 +19,15 @@ + + + + + + + + + + + + + + @@ -44,11 +71,13 @@ import RuoYiDoc from '@/components/RuoYi/Doc' import useAppStore from '@/store/modules/app' import useUserStore from '@/store/modules/user' import useSettingsStore from '@/store/modules/settings' - +import { resetUserPwd } from "@/api/system/user"; +import { updateUserPwd } from "@/api/system/user"; const appStore = useAppStore() const userStore = useUserStore() const settingsStore = useSettingsStore() - +const { proxy } = getCurrentInstance(); +let open = ref(false) function toggleSideBar() { appStore.toggleSideBar() } @@ -58,6 +87,9 @@ function handleCommand(command) { case "setLayout": setLayout(); break; + case "resetPwd": + resetPwd(); + break; case "logout": logout(); break; @@ -78,10 +110,49 @@ function logout() { }).catch(() => { }); } +/** 重置密码按钮操作 */ +const user = reactive({ + oldPassword: undefined, + newPassword: undefined, + confirmPassword: undefined +}); + +const equalToPassword = (rule, value, callback) => { + if (user.newPassword !== value) { + callback(new Error("两次输入的密码不一致")); + } else { + callback(); + } +}; +const rules = ref({ + 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" }] +}); + +/** 提交按钮 */ +function submit() { + proxy.$refs.pwdRef.validate(valid => { + if (valid) { + updateUserPwd(user.oldPassword, user.newPassword).then(response => { + proxy.$modal.msgSuccess("修改成功"); + open.value = false + }); + } + }); +}; + const emits = defineEmits(['setLayout']) function setLayout() { emits('setLayout'); } +/** 关闭按钮 */ +function close() { + open.value = false +}; +function resetPwd(row) { + open.value = true +};