| New file |
| | |
| | | <template> |
| | | <el-dialog title="修改密码" :visible.sync="dialogVisible" width="500px" @close="handleClose"> |
| | | <el-form ref="form" :model="form" :rules="rules" label-width="120px"> |
| | | <el-form-item label="当前用户"> |
| | | <el-input v-model="form.currentUser" :readonly="true" /> |
| | | </el-form-item> |
| | | <el-form-item label="当前密码"> |
| | | <el-input v-model="form.oldPassword" type="password" :readonly="true" /> |
| | | </el-form-item> |
| | | <el-form-item label="新密码" prop="newPassword"> |
| | | <el-input v-model="form.newPassword" type="password" placeholder="6到16个字符" show-password /> |
| | | </el-form-item> |
| | | <el-form-item label="确认新密码" prop="confirmPassword"> |
| | | <el-input v-model="form.confirmPassword" type="password" placeholder="再次输入新密码" show-password /> |
| | | </el-form-item> |
| | | <el-form-item label="金蝶云账号"> |
| | | <el-input v-model="form.cloudUserName" /> |
| | | </el-form-item> |
| | | <el-form-item label="金蝶云密码"> |
| | | <el-input v-model="form.cloudUserPsd" type="password" show-password /> |
| | | </el-form-item> |
| | | </el-form> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-button @click="dialogVisible = false">取 消</el-button> |
| | | <el-button type="primary" @click="submitForm" :loading="submitting">确 认 修 改</el-button> |
| | | </span> |
| | | </el-dialog> |
| | | </template> |
| | | |
| | | <script> |
| | | import request from '@/utils/request' |
| | | |
| | | export default { |
| | | name: 'UpdatePsw', |
| | | data() { |
| | | |
| | | const validateConfirm = (rule, value, callback) => { |
| | | if (value !== this.form.newPassword) { |
| | | callback(new Error('两次输入密码不一致')) |
| | | } else { |
| | | callback() |
| | | } |
| | | } |
| | | return { |
| | | dialogVisible: false, |
| | | submitting: false, |
| | | form: { |
| | | currentUser: '', |
| | | oldPassword: '', |
| | | newPassword: '', |
| | | confirmPassword: '', |
| | | cloudUserName: '', |
| | | cloudUserPsd: '' |
| | | }, |
| | | rules: { |
| | | newPassword: [ |
| | | { required: true, message: '请输入新密码', trigger: 'blur' }, |
| | | { min: 6, max: 16, message: '长度在 6 到 16 个字符', trigger: 'blur' } |
| | | ], |
| | | confirmPassword: [ |
| | | { required: true, message: '请再次输入新密码', trigger: 'blur' }, |
| | | { validator: validateConfirm, trigger: 'blur' } |
| | | ] |
| | | } |
| | | } |
| | | }, |
| | | methods: { |
| | | |
| | | open() { |
| | | this.form.currentUser = sessionStorage['HUserName'] || '' |
| | | this.form.oldPassword = sessionStorage['Czmm'] || '' |
| | | this.form.cloudUserName = sessionStorage['HCloudUserName'] || '' |
| | | this.form.cloudUserPsd = sessionStorage['HCloudUserPsd'] || '' |
| | | |
| | | this.form.newPassword = '' |
| | | this.form.confirmPassword = '' |
| | | this.dialogVisible = true |
| | | |
| | | this.$nextTick(() => { |
| | | this.$refs.form?.clearValidate() |
| | | }) |
| | | }, |
| | | |
| | | handleClose() { |
| | | |
| | | this.$refs.form?.resetFields() |
| | | }, |
| | | |
| | | submitForm() { |
| | | this.$refs.form.validate(valid => { |
| | | if (!valid) return |
| | | this.submitting = true |
| | | |
| | | const params = { |
| | | UserName: sessionStorage['Czybm'] || '', |
| | | oldPassword: this.form.oldPassword, |
| | | PassWord: this.form.newPassword, |
| | | Repassword: this.form.confirmPassword, |
| | | HCloudUserName: this.form.cloudUserName, |
| | | HCloudUserPsd: this.form.cloudUserPsd |
| | | } |
| | | request({ |
| | | url: '/Web/GetXGPassword', |
| | | method: 'get', |
| | | params: params |
| | | }).then(res => { |
| | | if (res.count === 1) { |
| | | |
| | | this.$modal.msgSuccess(res.Message || '修改成功') |
| | | |
| | | sessionStorage.clear() |
| | | |
| | | this.$router.push('/index') |
| | | |
| | | this.dialogVisible = false |
| | | } else { |
| | | |
| | | this.$modal.msgError(res.Message || '修改失败') |
| | | } |
| | | }).catch(err => { |
| | | this.$modal.msgError(err.message || '请求失败') |
| | | }).finally(() => { |
| | | this.submitting = false |
| | | }) |
| | | }) |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | | |
| | | <style scoped> |
| | | </style> |