This commit is contained in:
jingna 2026-05-18 18:41:32 +08:00
parent deac82addd
commit a617a85d5c

View File

@ -1,7 +1,8 @@
<script setup lang="ts">
import { ref, reactive } from 'vue'
import { ref, reactive,onMounted } from 'vue'
import type { FormInstance, FormRules } from 'element-plus'
import { verifyAccessPassword,saveDeviceConfig } from '@/api/platform'
import { ElMessage } from 'element-plus'
const formRef = ref<FormInstance>()
//
@ -34,18 +35,64 @@ const rules: FormRules = {
}
]
}
const isSubmit = ref(false)
//
const handleSubmit = async () => {
if (!formRef.value) return
await formRef.value.validate((valid) => {
if (valid) {
console.log('表单数据:', form)
//
alert('密码修改成功!')
if (isSubmit.value) return
isSubmit.value = true
verifyAccessPassword(form.oldPassword).then(res => {
if (res.data) {
ElMessage({
type: 'success',
message: '原密码验证成功',
})
// saveDeviceConfig({
// password: form.newPassword,
// hardware_version: '',
// software_version: '',
// net: '',
// uart: '',
// }).then(res => {
// if (res.data) {
// ElMessage({
// type: 'success',
// message: '',
// })
// isSubmit.value = false
// } else {
// ElMessage({
// type: 'info',
// message: '',
// })
// isSubmit.value = false
// return
// }
// })
} else {
ElMessage({
type: 'info',
message: '原密码验证失败',
})
isSubmit.value = false
return
}
})
}
})
}
function init() {
// getDeviceConfig().then(res => {
// if (res.data) {
// }
// })
}
onMounted(() => {
init()
})
</script>
<template>
@ -58,15 +105,15 @@ const handleSubmit = async () => {
</div>
<!-- 表单 -->
<el-form ref="formRef" :model="form" :rules="rules" label-width="90px" class="password-form">
<el-form-item label="原密码">
<el-form-item label="原密码" prop="oldPassword">
<el-input v-model="form.oldPassword" type="password" placeholder="请输入原密码" show-password />
</el-form-item>
<el-form-item label="新密码">
<el-form-item label="新密码" prop="newPassword">
<el-input v-model="form.newPassword" type="password" placeholder="请输入新密码" show-password />
</el-form-item>
<el-form-item label="确认新密码">
<el-form-item label="确认新密码" prop="confirmPassword">
<el-input v-model="form.confirmPassword" type="password" placeholder="请再次输入新密码" show-password />
</el-form-item>
</el-form>