Merge branch 'cloud'

This commit is contained in:
BOE\10867418
2023-08-10 17:50:28 +08:00
3 changed files with 56 additions and 25 deletions

View File

@@ -17,8 +17,12 @@ const modifyPassword = function(data) {
return ajax.postJson('/b1/system/user/update-password',data);
}
const getRsaPublicKey=function(){
return ajax.get('/b1/common/secret/rsa-public-key');
}
export default {
logout,
modifyPassword
modifyPassword,
getRsaPublicKey
}

View File

@@ -36,6 +36,7 @@
import accountApi from '@/api/account';
import apiLogin from '@/api/boe/login.js';
import apiUserBasic from '@/api/boe/userbasic.js'
import JSEncrypt from '@/utils/jsencrypt.js';
export default {
data() {
var testPassword = /^(?![a-zA-Z]+$)(?![A-Z0-9]+$)(?![A-Z\W_!@#$%^&*`~()-+=]+$)(?![a-z0-9]+$)(?![a-z\W_!@#$%^&*`~()-+=]+$)(?![0-9\W_!@#$%^&*`~()-+=]+$)[a-zA-Z0-9\W_!@#$%^&*`~()-+=]{8,16}$/;
@@ -96,33 +97,57 @@ export default {
});
},
submit() {
let $this=this;
this.$refs.ruleForm.validate().then(res => {
let params = {
oldPassword: this.model.oldPass,
newPassword: this.model.newPass,
confirmPassword: this.model.confirmPass
};
// let params = {
// oldPassword: this.model.oldPass,
// newPassword: this.model.newPass,
// confirmPassword: this.model.confirmPass
// };
apiLogin.getRsaPublicKey().then(krs=>{
if(krs.code=='0'){
let publicKey=krs.data.list.publickey;
let encryptor = new JSEncrypt();
let rsa ='-----BEGIN PUBLIC KEY-----'+publicKey+'-----END PUBLIC KEY-----';
encryptor.setPublicKey(rsa);
let mpdata={
oldPassword:$this.model.oldPass,
newPassword:encryptor.encrypt($this.model.newPass),
confirmPassword:encryptor.encrypt($this.model.confirmPass)
}
apiUserBasic.modifyPassword(mpdata).then(res=>{
if(res.status==200){
let loginPath = this.$config.loginPath;
uni.showToast({ title: '修改成功,请重新登录', duration: 2000 });
setTimeout(() => { location.href = loginPath; }, 2000);
}else{
uni.showToast({ title: res.message, icon: 'none' });
}
})
}else{
uni.showToast({ title: '获取公钥错误', icon: 'none' });
}
})
//apiLogin 修改为 apiUserBasic
apiUserBasic.modifyPassword(params).then(res => {
if (res.status == 200) {
let loginPath = this.$config.loginPath;
// apiUserBasic.modifyPassword(params).then(res => {
// if (res.status == 200) {
// let loginPath = this.$config.loginPath;
uni.showToast({
title: '修改成功,请重新登录',
duration: 2000
});
setTimeout(() => {
location.href = loginPath;
}, 2000);
} else {
uni.showToast({
title: res.message,
icon: 'none'
});
}
});
})
.catch(errors => {
// uni.showToast({
// title: '修改成功,请重新登录',
// duration: 2000
// });
// setTimeout(() => {
// location.href = loginPath;
// }, 2000);
// } else {
// uni.showToast({
// title: res.message,
// icon: 'none'
// });
// }
// });
}).catch(errors => {
uni.$u.toast('校验失败:' + errors);
});
}

2
utils/jsencrypt.js Normal file

File diff suppressed because one or more lines are too long