|
|
@@ -61,8 +61,34 @@ Ext.define('saas.view.auth.ReLoginController', {
|
|
|
}
|
|
|
me.successReLogin();
|
|
|
})
|
|
|
+ .then(function() {
|
|
|
+ let account = viewModel.get('account'),
|
|
|
+ companyId = account.companyId;
|
|
|
+ return saas.util.BaseUtil.request({
|
|
|
+ url: '/api/auth/switch/company',
|
|
|
+ params: {
|
|
|
+ companyId: companyId
|
|
|
+ },
|
|
|
+ method: 'GET'
|
|
|
+ }).then(function(res) {
|
|
|
+ if (res.success) {
|
|
|
+ var newSession = saas.model.Session.loadData(res.data);
|
|
|
+ newSession.set('account', account);
|
|
|
+ // 服务端与本地存在时间差
|
|
|
+ newSession.set('span', newSession.get('timestamp') - new Date().getTime());
|
|
|
+ if (!newSession.isValid()) {
|
|
|
+ throw new Error('切换失败,无效身份令牌');
|
|
|
+ } else {
|
|
|
+ return newSession;
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ Ext.log.error('request failure with code: ', res.code, ', message: ', res.message);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ })
|
|
|
.catch(function (error) {
|
|
|
view.isMasked() && view.unmask();
|
|
|
+ console.error(error);
|
|
|
saas.util.BaseUtil.showErrorToast('登录失败: ' + error.message);
|
|
|
me.failureReLogin();
|
|
|
});
|