| | |
| | | import { LoginData, LoginResult, VerifyCodeResult, TenantInfo } from './types'; |
| | | import { UserInfo } from '@/api/system/user/types'; |
| | | |
| | | // pc端固定客户端授权id |
| | | const clientId = import.meta.env.VITE_APP_CLIENT_ID; |
| | | |
| | | /** |
| | | * @param data {LoginData} |
| | | * @returns |
| | | */ |
| | | export function login(data: LoginData): AxiosPromise<LoginResult> { |
| | | const params = { |
| | | tenantId: data.tenantId, |
| | | username: data.username.trim(), |
| | | password: data.password, |
| | | code: data.code, |
| | | uuid: data.uuid, |
| | | clientId: 'e5cd7e4891bf95d1d19206ce24a7b32e', |
| | | grantType: 'password' |
| | | ...data, |
| | | clientId: data.clientId || clientId, |
| | | grantType: data.grantType || 'password' |
| | | }; |
| | | return request({ |
| | | url: '/auth/login', |
| | | headers: { |
| | | isToken: false |
| | | isToken: false, |
| | | isEncrypt: true, |
| | | repeatSubmit: false |
| | | }, |
| | | method: 'post', |
| | | data: params |
| | |
| | | |
| | | // 注册方法 |
| | | export function register(data: any) { |
| | | const params = { |
| | | ...data, |
| | | clientId: clientId, |
| | | grantType: 'password' |
| | | }; |
| | | return request({ |
| | | url: '/auth/register', |
| | | headers: { |
| | | isToken: false |
| | | isToken: false, |
| | | isEncrypt: true, |
| | | repeatSubmit: false |
| | | }, |
| | | method: 'post', |
| | | data: data |
| | | data: params |
| | | }); |
| | | } |
| | | |
| | |
| | | * 注销 |
| | | */ |
| | | export function logout() { |
| | | if (import.meta.env.VITE_APP_SSE === 'true') { |
| | | request({ |
| | | url: '/resource/sse/close', |
| | | method: 'get' |
| | | }); |
| | | } |
| | | return request({ |
| | | url: '/auth/logout', |
| | | method: 'post' |
| | |
| | | */ |
| | | export function getCodeImg(): AxiosPromise<VerifyCodeResult> { |
| | | return request({ |
| | | url: '/code', |
| | | url: '/auth/code', |
| | | headers: { |
| | | isToken: false |
| | | }, |
| | |
| | | timeout: 20000 |
| | | }); |
| | | } |
| | | |
| | | /** |
| | | * 第三方登录 |
| | | * @param source 第三方登录类型 |
| | | * */ |
| | | export function socialLogin(source: string, code: any, state: any): AxiosPromise<any> { |
| | | const data = { |
| | | code, |
| | | state |
| | | */ |
| | | export function callback(data: LoginData): AxiosPromise<any> { |
| | | const LoginData = { |
| | | ...data, |
| | | clientId: clientId, |
| | | grantType: 'social' |
| | | }; |
| | | return request({ |
| | | url: '/auth/social-login/' + source, |
| | | method: 'get', |
| | | params: data |
| | | url: '/auth/social/callback', |
| | | method: 'post', |
| | | data: LoginData |
| | | }); |
| | | } |
| | | |
| | |
| | | } |
| | | |
| | | // 获取租户列表 |
| | | export function getTenantList(): AxiosPromise<TenantInfo> { |
| | | export function getTenantList(isToken: boolean): AxiosPromise<TenantInfo> { |
| | | return request({ |
| | | url: '/auth/tenant/list', |
| | | headers: { |
| | | isToken: false |
| | | isToken: isToken |
| | | }, |
| | | method: 'get' |
| | | }); |