124 lines
2.2 KiB
TypeScript
124 lines
2.2 KiB
TypeScript
import { useMemberStore } from '@/stores'
|
|
import type { loginResult } from '@/types/member'
|
|
import { request } from '@/utils/request'
|
|
|
|
type loginParams = {
|
|
code: string
|
|
login_code: string
|
|
}
|
|
|
|
export const testLoginApi = (phone: string) => {
|
|
return request<loginResult>({
|
|
method: 'POST',
|
|
url: '/login/testLogin',
|
|
data: {
|
|
phone,
|
|
},
|
|
})
|
|
}
|
|
|
|
/**
|
|
* 获取登录用户session
|
|
* @param login_code
|
|
* @returns
|
|
*/
|
|
export const getSessionByLoginCodeApi = (login_code: string) => {
|
|
return request<{
|
|
openid: string
|
|
unionid: string
|
|
}>({
|
|
method: 'GET',
|
|
url: '/login/getSessionByLoginCode',
|
|
data: {
|
|
login_code,
|
|
},
|
|
})
|
|
}
|
|
|
|
/**
|
|
* 微信登录
|
|
*/
|
|
export const miniAppLoginApi = (data: loginParams) => {
|
|
return request<loginResult>({
|
|
method: 'POST',
|
|
url: '/login/miniAppLogin',
|
|
data,
|
|
})
|
|
}
|
|
|
|
export const checkLoginIegalityApi = (login_code: string) => {
|
|
return request<{
|
|
login_by_phone: boolean
|
|
}>({
|
|
method: 'POST',
|
|
url: '/login/checkLoginIegality',
|
|
data: {
|
|
login_code,
|
|
},
|
|
})
|
|
}
|
|
|
|
export const quickLoginApi = (login_code: string) => {
|
|
return request<loginResult>(
|
|
{
|
|
method: 'POST',
|
|
url: '/login/quickLogin',
|
|
data: {
|
|
login_code,
|
|
},
|
|
},
|
|
false,
|
|
false,
|
|
)
|
|
}
|
|
|
|
export const logout = () => {
|
|
return request({
|
|
method: 'POST',
|
|
url: '/login/logout',
|
|
data: {
|
|
refresh_token: useMemberStore().profile?.refresh_token,
|
|
},
|
|
})
|
|
}
|
|
|
|
export const loginByPhone = (data: { phone: string; sms_captcha_code: string }) => {
|
|
return request<loginResult>({
|
|
method: 'POST',
|
|
url: '/login/phone',
|
|
data,
|
|
})
|
|
}
|
|
|
|
export const loginByPassword = (data: { username: string; password: string }) => {
|
|
return request<loginResult>({
|
|
method: 'POST',
|
|
url: '/login/password',
|
|
data,
|
|
})
|
|
}
|
|
|
|
export const registerApi = (data: {
|
|
username: string
|
|
password: string
|
|
phone: string
|
|
sms_captcha_code: string
|
|
}) => {
|
|
return request<loginResult>({
|
|
method: 'POST',
|
|
url: '/login/register',
|
|
data,
|
|
})
|
|
}
|
|
|
|
export const bindWxInfo = (data: {
|
|
// 小程序登录code
|
|
login_code: string
|
|
}) => {
|
|
return request({
|
|
method: 'POST',
|
|
url: '/login/bind',
|
|
data,
|
|
})
|
|
}
|