From 55373c6b400d879ba4a4cdae752fe5140c7b11f6 Mon Sep 17 00:00:00 2001
From: web <candymxq888@outlook.com>
Date: 星期一, 28 四月 2025 17:29:15 +0800
Subject: [PATCH] fix:修改上传图片地址

---
 src/views/userCenter.vue |   70 +++++++++++++++++++++++++++++------
 1 files changed, 58 insertions(+), 12 deletions(-)

diff --git a/src/views/userCenter.vue b/src/views/userCenter.vue
index acc225f..4d3658c 100644
--- a/src/views/userCenter.vue
+++ b/src/views/userCenter.vue
@@ -29,7 +29,7 @@
                     <div class="name">密码:</div>
                     <div class="info pwd">
                         ********
-                        <el-button type="plain" @click="isShow = true">修改密码</el-button>
+                        <el-button type="default" @click="isShow = true">修改密码</el-button>
                     </div>
                 </div>
             </div>
@@ -40,12 +40,15 @@
         </div>
         <el-dialog v-model="isShow">
             <div class="title">修改密码</div>
-            <el-form model="pwdForm" :rules="rules">
+            <el-form :model="pwdForm" ref="formRef" :rules="rules">
                 <el-form-item prop="oldPassword" label="旧密码">
                     <el-input v-model="pwdForm.oldPassword" placeholder="请输入旧密码"></el-input>
                 </el-form-item>
                 <el-form-item prop="newPassword" label="新密码">
                     <el-input v-model="pwdForm.newPassword"  placeholder="请输入新密码"></el-input>
+                </el-form-item>
+                <el-form-item prop="confirmPassword" label="确认密码">
+                    <el-input v-model="pwdForm.confirmPassword"  placeholder="再次输入新密码"></el-input>
                 </el-form-item>
                 <el-form-item class="handel-btn">
                     <el-button  @click="cancel()">取消</el-button>
@@ -58,30 +61,73 @@
 
 <script setup>
 import {userDetail} from '@/api/login'
+import {removeToken} from '@/utils/auth'
+import {ElMessageBox} from "element-plus";
+
 const { proxy } = getCurrentInstance();
 const form = ref({})
-import  { PREURL } from "@/config/index";
-const preUrl = ref(PREURL)
+const preUrl = ref(import.meta.env.VITE_APP_IMG_BASEURL)
 const getUserInfo = async () =>{
     let id = JSON.parse(localStorage.getItem('id'))
     await userDetail().get(id).then(res => {
         form.value = res.data
     })
 }
+
+const confirmPass =  (rule, value, callback) => {
+    if (value === '') {
+        callback(new Error('请再次输入密码'));
+    } else if (value !== pwdForm.value.newPassword) {
+        callback(new Error('两次输入密码不一致!'));
+    } else {
+        callback();
+    }
+}
+
+// 退出登录
+const loginOut = () => {
+    ElMessageBox.confirm('确定注销并退出系统吗?', '提示', {
+        confirmButtonText: '确定',
+        cancelButtonText: '取消',
+        type: 'warning'
+    }).then((e) => {
+        removeToken()
+        window.location.reload();
+
+    })
+}
+
 //修改密码
-const rules  = ref({
-    oldPassword: [{ required: true, trigger: "blur", message: "请输入旧密码" }],
-    newPassword: [{ required: true, trigger: "blur", message: "请输入新密码" }],
-})
+const rules = {
+    oldPassword: [
+        { required: true, message: "密码不能为空", trigger: "blur" },
+    ],
+    newPassword: [
+        {required: true, pattern: /^(?=.*\d)(?=.*[a-zA-Z])(?=.*[\W_]).{8,}$/,  message: "密码必须是8位以上的英文数字字符组合", trigger: "blur" }
+    ],
+    confirmPassword: [
+        { required: true, validator: confirmPass, message: "两次密码不一致", trigger: "blur" }
+    ]
+}
+const formRef = ref()
 const isShow = ref(false)
 const pwdForm = ref({
     oldPassword:'',
     newPassword:'',
+    confirmPassword:'',
 })
-const modifyPwd = async () =>{
-    await userDetail().setPsw(pwdForm.value).then(res => {
-        if(res.code == 200){
-            proxy.$modal.msgSuccess("修改成功");
+const modifyPwd = () =>{
+    formRef.value.validate(async (valid) => {
+        if(valid){
+            const data = {
+                oldPassword: pwdForm.value.oldPassword,
+                newPassword: pwdForm.value.newPassword
+            }
+            await userDetail().setPsw(data).then(res => {
+                if(res.code == 200){
+                    proxy.$modal.msgSuccess("修改成功");
+                }
+            })
         }
     })
 }

--
Gitblit v1.9.3