This commit is contained in:
weicw
2021-07-29 16:17:26 +08:00
commit a6eb6f83d1
127 changed files with 60792 additions and 0 deletions

110
src/layout/password.vue Normal file
View File

@@ -0,0 +1,110 @@
<!-- 修改密码弹窗 -->
<template>
<a-modal
:width="420"
title="修改密码"
:visible="visible"
:confirm-loading="loading"
:body-style="{paddingBottom: '16px'}"
@update:visible="onUpdateVisible"
@cancel="onCancel"
@ok="onOk">
<a-form
ref="form"
:model="form"
:rules="rules"
:label-col="{sm: {span: 6}}"
:wrapper-col="{sm: {span: 18}}">
<a-form-item label="旧密码" name="old">
<a-input-password v-model:value="form.old" placeholder="请输入旧密码"/>
</a-form-item>
<a-form-item label="新密码" name="password">
<a-input-password v-model:value="form.password" placeholder="请输入新密码"/>
</a-form-item>
<a-form-item label="确认密码" name="password2">
<a-input-password v-model:value="form.password2" placeholder="请再次输入新密码"/>
</a-form-item>
</a-form>
</a-modal>
</template>
<script>
export default {
name: 'ElePassword',
emits: ['update:visible'],
props: {
visible: Boolean
},
data() {
return {
// 表单数据
form: {
old: '',
password: '',
password2: ''
},
// 表单验证
rules: {
old: [
{required: true, message: '请输入旧密码', type: 'string', trigger: 'blur'}
],
password: [
{required: true, message: '请输入新密码', type: 'string', trigger: 'blur'}
],
password2: [
{
required: true,
type: 'string',
trigger: 'blur',
validator: async (rule, value) => {
if (!value) {
return Promise.reject('请再次输入新密码');
}
if (value === this.form.password) {
return Promise.resolve();
}
return Promise.reject('两次输入密码不一致');
}
}
]
},
// 按钮loading
loading: false
};
},
methods: {
/* 保存修改 */
onOk() {
this.$refs.form.validate().then(() => {
this.loading = true;
this.$http.put('/main/password', {
oldPsw: this.form.old,
newPsw: this.form.password
}).then(res => {
this.loading = false;
if (res.data.code === 0) {
this.$message.success(res.data.msg);
this.onUpdateVisible(false);
} else {
this.$message.error(res.data.msg);
}
}).catch(e => {
this.loading = false;
this.$message.error(e.message);
});
}).catch(() => {
});
},
/* 关闭回调 */
onCancel() {
this.form = {};
this.loading = false;
this.$refs.form.resetFields();
},
/* 修改visible */
onUpdateVisible(value) {
this.$emit('update:visible', value);
}
}
}
</script>