diff --git a/src/api/platform/core/entity/user.ts b/src/api/platform/core/entity/user.ts index bb60b1a..7efa1a7 100644 --- a/src/api/platform/core/entity/user.ts +++ b/src/api/platform/core/entity/user.ts @@ -16,6 +16,7 @@ export interface LoginParams { code?: string; clientId?: string; options?: RequestOptions; + performPostLoginAction?: boolean; [key: string]: any; } diff --git a/src/store/modules/user.ts b/src/store/modules/user.ts index 7e70b2e..3fca51c 100644 --- a/src/store/modules/user.ts +++ b/src/store/modules/user.ts @@ -112,7 +112,7 @@ export const useUserStore = defineStore({ /** 登录 */ async login(params: LoginParams): Promise { try { - const { goHome = true, clientId = '', ...loginParams } = params; + const { goHome = true, clientId = '', performPostLoginAction = true, ...loginParams } = params; // 处理自定义授权客户端 if (clientId) { const client = getAuthClient(clientId); @@ -128,14 +128,14 @@ export const useUserStore = defineStore({ this.setUserInfo(data.user_info); this.setAccessToken(access_token); this.setRefreshToken(refresh_token); - return this.afterLoginAction(goHome); + return performPostLoginAction ? this.afterLoginAction(goHome) : null; } catch (error) { return Promise.reject(error); } }, /** 登录成功后动作 */ - async afterLoginAction(goHome?: boolean): Promise { - if (!this.getAccessToken) return null; + async afterLoginAction(goHome?: boolean): Promise> { + if (!this.getAccessToken) return {}; // 获取用户信息 const userInfo = await this.getUserInfoAction(); const sessionTimeout = this.sessionTimeout; @@ -157,7 +157,7 @@ export const useUserStore = defineStore({ return userInfo; }, /** 获取用户信息 */ - async getUserInfoAction(): Promise { + async getUserInfoAction(): Promise> { const { apiUrl } = useGlobSetting(); const { t } = useI18n(); try { @@ -173,7 +173,7 @@ export const useUserStore = defineStore({ this.setPermissions(userInfo.permissions); return userInfo; } catch (error) { console.error(error); } - return Promise.resolve({} as KiccUser); + return Promise.resolve({}); }, /** 登出 */ async logout(goLogin = false) { diff --git a/src/views/system/ssoLogin/kics/index.vue b/src/views/system/ssoLogin/kics/index.vue index a713e07..7ac2060 100644 --- a/src/views/system/ssoLogin/kics/index.vue +++ b/src/views/system/ssoLogin/kics/index.vue @@ -115,7 +115,8 @@ password: formData.password, username: formData.username, goHome: false, - clientId: 'kics' + clientId: 'kics', + performPostLoginAction: false }); // sso重定向到资源系统 document.location.reload(); diff --git a/src/views/system/ssoLogin/klab/index.vue b/src/views/system/ssoLogin/klab/index.vue index 01db69f..7bc68fa 100644 --- a/src/views/system/ssoLogin/klab/index.vue +++ b/src/views/system/ssoLogin/klab/index.vue @@ -114,7 +114,8 @@ password: formData.password, username: formData.username, goHome: false, - clientId: 'klab' + clientId: 'klab', + performPostLoginAction: false }); // sso重定向到资源系统 document.location.reload();