2023-04-02 01:01:56 +08:00
|
|
|
import request from '@/utils/request';
|
|
|
|
import { AxiosPromise } from 'axios';
|
|
|
|
import { LoginData, LoginResult, VerifyCodeResult, TenantInfo } from './types';
|
|
|
|
import { UserInfo } from '@/api/system/user/types';
|
2023-07-01 16:24:48 +08:00
|
|
|
import { da } from 'element-plus/es/locale';
|
2023-04-02 01:01:56 +08:00
|
|
|
|
|
|
|
/**
|
|
|
|
* @param data {LoginData}
|
|
|
|
* @returns
|
|
|
|
*/
|
|
|
|
export function login(data: LoginData): AxiosPromise<LoginResult> {
|
2023-04-03 00:05:09 +08:00
|
|
|
const params = {
|
2023-07-01 16:24:48 +08:00
|
|
|
...data,
|
|
|
|
clientId: data.clientId || 'e5cd7e4891bf95d1d19206ce24a7b32e',
|
|
|
|
grantType: data.grantType || 'password'
|
2023-04-03 00:05:09 +08:00
|
|
|
};
|
|
|
|
return request({
|
|
|
|
url: '/auth/login',
|
|
|
|
headers: {
|
|
|
|
isToken: false
|
|
|
|
},
|
|
|
|
method: 'post',
|
|
|
|
data: params
|
|
|
|
});
|
2023-04-02 01:01:56 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
// 注册方法
|
|
|
|
export function register(data: any) {
|
2023-04-03 00:05:09 +08:00
|
|
|
return request({
|
|
|
|
url: '/auth/register',
|
|
|
|
headers: {
|
|
|
|
isToken: false
|
|
|
|
},
|
|
|
|
method: 'post',
|
|
|
|
data: data
|
|
|
|
});
|
2023-04-02 01:01:56 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* 注销
|
|
|
|
*/
|
|
|
|
export function logout() {
|
2023-04-03 00:05:09 +08:00
|
|
|
return request({
|
|
|
|
url: '/auth/logout',
|
|
|
|
method: 'post'
|
|
|
|
});
|
2023-04-02 01:01:56 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* 获取验证码
|
|
|
|
*/
|
|
|
|
export function getCodeImg(): AxiosPromise<VerifyCodeResult> {
|
2023-04-03 00:05:09 +08:00
|
|
|
return request({
|
|
|
|
url: '/code',
|
|
|
|
headers: {
|
|
|
|
isToken: false
|
|
|
|
},
|
|
|
|
method: 'get',
|
|
|
|
timeout: 20000
|
|
|
|
});
|
2023-04-02 01:01:56 +08:00
|
|
|
}
|
2023-06-20 04:12:49 +00:00
|
|
|
/**
|
|
|
|
* 第三方登录
|
|
|
|
* @param source 第三方登录类型
|
|
|
|
* */
|
2023-07-01 16:24:48 +08:00
|
|
|
export function callback(data: LoginData): AxiosPromise<any> {
|
|
|
|
const LoginData = {
|
|
|
|
...data,
|
2023-07-01 02:26:58 +08:00
|
|
|
clientId: 'e5cd7e4891bf95d1d19206ce24a7b32e',
|
|
|
|
grantType: 'social'
|
2023-06-20 04:12:49 +00:00
|
|
|
};
|
|
|
|
return request({
|
2023-07-01 16:24:48 +08:00
|
|
|
url: '/auth/social/callback',
|
2023-07-01 15:05:48 +08:00
|
|
|
method: 'post',
|
2023-07-01 16:24:48 +08:00
|
|
|
data: LoginData
|
2023-06-20 04:12:49 +00:00
|
|
|
});
|
|
|
|
}
|
2023-04-02 01:01:56 +08:00
|
|
|
|
|
|
|
// 获取用户详细信息
|
|
|
|
export function getInfo(): AxiosPromise<UserInfo> {
|
2023-04-03 00:05:09 +08:00
|
|
|
return request({
|
|
|
|
url: '/system/user/getInfo',
|
|
|
|
method: 'get'
|
|
|
|
});
|
2023-04-02 01:01:56 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
// 获取租户列表
|
|
|
|
export function getTenantList(): AxiosPromise<TenantInfo> {
|
2023-04-03 00:05:09 +08:00
|
|
|
return request({
|
|
|
|
url: '/auth/tenant/list',
|
|
|
|
headers: {
|
|
|
|
isToken: false
|
|
|
|
},
|
|
|
|
method: 'get'
|
|
|
|
});
|
2023-04-02 01:01:56 +08:00
|
|
|
}
|