From a53dce38c2f58c0bfd37203e46dc57aa56025f45 Mon Sep 17 00:00:00 2001 From: 648540858 <648540858@qq.com> Date: 星期四, 17 十一月 2022 18:22:24 +0800 Subject: [PATCH] Merge pull request #673 from 648540858/wvp-28181-2.0-multi-network --- web_src/src/components/dialog/changePassword.vue | 38 +++++++++++++++++++++++++++++++------- 1 files changed, 31 insertions(+), 7 deletions(-) diff --git a/web_src/src/components/dialog/changePassword.vue b/web_src/src/components/dialog/changePassword.vue index 5842df0..77e1d2a 100644 --- a/web_src/src/components/dialog/changePassword.vue +++ b/web_src/src/components/dialog/changePassword.vue @@ -11,6 +11,9 @@ > <div id="shared" style="margin-right: 20px;"> <el-form ref="passwordForm" :rules="rules" status-icon label-width="80px"> + <el-form-item label="鏃у瘑鐮�" prop="oldPassword" > + <el-input v-model="oldPassword" autocomplete="off"></el-input> + </el-form-item> <el-form-item label="鏂板瘑鐮�" prop="newPassword" > <el-input v-model="newPassword" autocomplete="off"></el-input> </el-form-item> @@ -31,15 +34,23 @@ </template> <script> +import crypto from 'crypto' export default { name: "changePassword", props: {}, computed: {}, created() {}, data() { - let validatePass = (rule, value, callback) => { + let validatePass0 = (rule, value, callback) => { if (value === '') { - callback(new Error('璇疯緭鍏ュ瘑鐮�')); + callback(new Error('璇疯緭鍏ユ棫瀵嗙爜')); + } else { + callback(); + } + }; + let validatePass1 = (rule, value, callback) => { + if (value === '') { + callback(new Error('璇疯緭鍏ユ柊瀵嗙爜')); } else { if (this.confirmPassword !== '') { this.$refs.passwordForm.validateField('confirmPassword'); @@ -57,12 +68,17 @@ } }; return { + oldPassword: null, newPassword: null, confirmPassword: null, showDialog: false, isLoging: false, rules: { - newPassword: [{ required: true, validator: validatePass, trigger: "blur" }], + oldPassword: [{ required: true, validator: validatePass0, trigger: "blur" }], + newPassword: [{ required: true, validator: validatePass1, trigger: "blur" }, { + pattern: /^(?=.*[a-zA-Z])(?=.*\d)(?=.*[~!@#$%^&*()_+`\-={}:";'<>?,.\/]).{8,20}$/, + message: "瀵嗙爜闀垮害鍦�8-20浣嶄箣闂�,鐢卞瓧姣�+鏁板瓧+鐗规畩瀛楃缁勬垚", + },], confirmPassword: [{ required: true, validator: validatePass2, trigger: "blur" }], }, }; @@ -76,13 +92,14 @@ method: 'post', url:"/api/user/changePassword", params: { + oldPassword: crypto.createHash('md5').update(this.oldPassword, "utf8").digest('hex'), password: this.newPassword } }).then((res)=> { - if (res.data === "success"){ + if (res.data.code === 0) { this.$message({ showClose: true, - message: '淇敼鎴愬姛锛岃閲嶆柊鐧婚檰', + message: '淇敼鎴愬姛锛岃閲嶆柊鐧诲綍', type: 'success' }); this.showDialog = false; @@ -92,6 +109,12 @@ this.$router.push('/login'); this.sseSource.close(); },800) + }else { + this.$message({ + showClose: true, + message: '淇敼瀵嗙爜澶辫触锛屾槸鍚﹀凡鐧诲綍锛堟帴鍙i壌鏉冨叧闂棤娉曚慨鏀瑰瘑鐮侊級', + type: 'error' + }); } }).catch((error)=> { console.error(error) @@ -99,8 +122,9 @@ }, close: function () { this.showDialog = false; - this.newPassword= null; - this.confirmPassword=null; + this.oldPassword = null; + this.newPassword = null; + this.confirmPassword = null; }, }, }; -- Gitblit v1.8.0