<template>
|
<div class="password">
|
<el-form ref="pwd" label-width="140px" autoComplete="on" :model="user" :rules="passrules">
|
<!-- 初始密码 -->
|
<el-form-item class="optionItem" label="初始密码:" prop="password">
|
<el-input v-model="user.password" type="password" placeholder="请填写初始密码"></el-input>
|
</el-form-item>
|
<!-- 新密码 -->
|
<el-form-item class="optionItem" label="新密码:" prop="newPwd">
|
<el-input v-model="user.newPwd" type="password" placeholder="请填写新密码"></el-input>
|
</el-form-item>
|
<!-- 新密码 -->
|
<el-form-item class="optionItem" label="确认新密码:" prop="secondPwd">
|
<el-input v-model="user.secondPwd" type="password" placeholder="确认您的新密码"></el-input>
|
</el-form-item>
|
|
</el-form>
|
<div class="pwd-footer">
|
<el-button @click="resetForm">取消</el-button>
|
<el-button type="primary" @click="handleSubmit">提交</el-button>
|
</div>
|
</div>
|
</template>
|
<script>
|
export default {
|
data() {
|
const checkPwd = (rule, value, callback) => {
|
if (!value) {
|
callback(new Error('初始密码不能为空'))
|
} else {
|
callback();
|
}
|
}
|
const checkNewPwd = (rule, value, callback) => {
|
if (!value) {
|
callback(new Error('新密码不能为空'))
|
}else if(value === this.user.password){
|
callback(new Error('新密码不能和旧密码一样'))
|
} else {
|
callback();
|
}
|
}
|
const checkSame = (rule, value, callback) => {
|
if (!value) {
|
callback(new Error('确认密码不能为空'))
|
} else if (value !== this.user.newPwd) {
|
console.log(111);
|
callback(new Error('您输入的两次密码结果不同'));
|
} else {
|
|
callback();
|
}
|
}
|
return {
|
user: {
|
password: '',
|
secondPwd: '',
|
newPwd: '',
|
},
|
passrules: {
|
password: [
|
{
|
required: true,
|
trigger: 'blur',
|
validator: checkPwd
|
},
|
],
|
secondPwd: [
|
{
|
required: true,
|
trigger: 'blur',
|
validator: checkSame
|
}
|
],
|
newPwd: [
|
{
|
required: true,
|
trigger: 'blur',
|
validator: checkNewPwd
|
}
|
]
|
}
|
}
|
},
|
props: ['userInfo', 'closeDialog'],
|
created() {
|
|
},
|
methods: {
|
// 提交
|
handleSubmit() {
|
const { userInfo,user } = this;
|
this.$refs.pwd.validate((valid) => {
|
if (valid) {
|
this.$axios({
|
method:'post',
|
url:'sccg/admin/updatePassword',
|
data:{
|
newPassword:user.newPwd,
|
oldPassword:user.password,
|
username:userInfo.username
|
}
|
})
|
.then(res=>{
|
if(res.code === 200){
|
this.$emit('closeDialog',{flag:false});
|
this.$message({
|
type:'success',
|
message:'密码修改成功'
|
})
|
}else{
|
this.$message({
|
type:'warning',
|
message:res.message
|
})
|
}
|
})
|
} else {
|
return false;
|
}
|
})
|
},
|
// 清空表单
|
resetForm() {
|
|
}
|
}
|
}
|
</script>
|
<style lang="scss" scoped>
|
.password {
|
padding: 50px 100px;
|
|
::v-deep .el-input__inner {
|
background-color: #09152f;
|
border: 1px solid #17324c;
|
}
|
|
.pwd-footer {
|
display: flex;
|
justify-content: center;
|
}
|
}
|
</style>
|