diff --git a/src/components/tools/UserAuthorizationCode.vue b/src/components/tools/UserAuthorizationCode.vue index d935acd..c398eff 100644 --- a/src/components/tools/UserAuthorizationCode.vue +++ b/src/components/tools/UserAuthorizationCode.vue @@ -83,7 +83,6 @@ export default { id: uId, email: uEmail } - this.getPublicKey() let timer = setTimeout(() => { this.form.setFieldsValue({ email: this.model.email }) clearTimeout(timer) @@ -93,17 +92,22 @@ export default { } }, getPublicKey() { - getRSAPublicKey().then(res => { - this.rsaPublicKey = res.result + return new Promise(resolve => { + getRSAPublicKey().then(res => { + this.rsaPublicKey = res.result + }).finally(() => { + resolve(this.rsaPublicKey) + }) }) }, handleOk() { const that = this // 触发表单验证 - this.form.validateFields((err, values) => { + this.form.validateFields(async (err, values) => { if (!err) { that.confirmLoading = true let params = Object.assign(this.model, values) + await this.getPublicKey() params.emailPassword = encrypt(this.rsaPublicKey, values.emailPassword) params.rsaPublicKey = this.rsaPublicKey console.log('修改授权码提交数据', params) diff --git a/src/components/tools/UserPassword.vue b/src/components/tools/UserPassword.vue index b80d0fa..2f68054 100644 --- a/src/components/tools/UserPassword.vue +++ b/src/components/tools/UserPassword.vue @@ -125,14 +125,17 @@ export default { return } else { this.username = uname - this.getPublicKey() this.form.resetFields() this.visible = true } }, getPublicKey() { - getRSAPublicKey().then(res => { - this.rsaPublicKey = res.result + return new Promise(resolve => { + getRSAPublicKey().then(res => { + this.rsaPublicKey = res.result + }).finally(() => { + resolve(this.rsaPublicKey) + }) }) }, handleCancel() { @@ -147,9 +150,10 @@ export default { handleOk() { const that = this // 触发表单验证 - this.form.validateFields((err, values) => { + this.form.validateFields(async (err, values) => { if (!err) { that.confirmLoading = true + await this.getPublicKey() let params = {} params.username = this.username params.rsaPublicKey = this.rsaPublicKey diff --git a/src/views/businessManagement/modules/CompanyAdminModule.vue b/src/views/businessManagement/modules/CompanyAdminModule.vue index f6a8ab5..110db69 100644 --- a/src/views/businessManagement/modules/CompanyAdminModule.vue +++ b/src/views/businessManagement/modules/CompanyAdminModule.vue @@ -122,7 +122,6 @@ export default { }, edit(record) { this.form.resetFields() - this.getRSAPublicKeyFunc() this.model = Object.assign({}, record) // 回显企业 this.model.companyId = { @@ -148,8 +147,15 @@ export default { * 获取公钥 * */ getRSAPublicKeyFunc() { - getRSAPublicKey().then(res => { - this.rsaPublicKey = res.result + // getRSAPublicKey().then(res => { + // this.rsaPublicKey = res.result + // }) + return new Promise(resolve => { + getRSAPublicKey().then(res => { + this.rsaPublicKey = res.result + }).finally(() => { + resolve(this.rsaPublicKey) + }) }) }, close() { @@ -164,7 +170,7 @@ export default { this.confirmLoading = true const that = this // 触发表单验证 - this.form.validateFields((err, values) => { + this.form.validateFields(async (err, values) => { if (!err) { let httpurl = '' let method = 'post' @@ -173,6 +179,7 @@ export default { } else { httpurl += this.url.edit } + await this.getRSAPublicKeyFunc() const formData = Object.assign(this.model, values) formData.companyName = this.selectedCompany.companyName formData.companyId = this.selectedCompany.id diff --git a/src/views/user/Login.vue b/src/views/user/Login.vue index 955017b..03edca0 100644 --- a/src/views/user/Login.vue +++ b/src/views/user/Login.vue @@ -150,8 +150,9 @@ export default { let that = this let loginParams = {} that.loginBtn = true - that.form.validateFields([ 'username', 'password','inputCode', 'rememberMe' ], { force: true }, (err, values) => { + that.form.validateFields([ 'username', 'password','inputCode', 'rememberMe' ], { force: true }, async (err, values) => { if (!err) { + await this.getPublicKey() loginParams.remember_me = values.rememberMe loginParams.captcha = that.inputCodeContent loginParams.checkKey = that.currdatetime @@ -243,13 +244,16 @@ export default { }).catch(()=>{ this.requestCodeSuccess=false }) - this.getPublicKey() }, //获取RSA公钥 getPublicKey(){ // 获取公钥 - getRSAPublicKey().then(res => { - this.rsaPublicKey = res.result + return new Promise(resolve => { + getRSAPublicKey().then(res => { + this.rsaPublicKey = res.result + }).finally(() => { + resolve(this.rsaPublicKey) + }) }) }, loginSuccess () { diff --git a/src/views/user/alteration/Alteration.vue b/src/views/user/alteration/Alteration.vue index f745e8b..b285b75 100644 --- a/src/views/user/alteration/Alteration.vue +++ b/src/views/user/alteration/Alteration.vue @@ -180,9 +180,10 @@ export default { submit() { let that = this that.loading = true - this.form.validateFields((err, values) => { + this.form.validateFields(async (err, values) => { if (!err) { let params = {} + await this.getPublicKey() console.log(values, '======values') params.rsaPublicKey = this.rsaPublicKey let encrypt = new JSEncrypt() @@ -271,7 +272,6 @@ export default { } setTimeout(hide, 500) }) - this.getPublicKey() } }) }, @@ -283,8 +283,12 @@ export default { }) }, getPublicKey() { - getRSAPublicKey().then(res => { - this.rsaPublicKey = res.result + return new Promise(resolve => { + getRSAPublicKey().then(res => { + this.rsaPublicKey = res.result + }).finally(() => { + resolve(this.rsaPublicKey) + }) }) }, // 密码禁止粘贴