This commit is contained in:
Eric
2026-02-09 11:24:51 +08:00
commit f2173a9fa9
491 changed files with 43791 additions and 0 deletions

View File

@@ -0,0 +1,103 @@
import request from '@/utils/request'
import type { AxiosResponse } from 'axios'
interface RegisterData {
[key: string]: any
}
export interface UserInfo {
userId: string | number
userName: string
nickName: string
avatar?: string
roles?: string[]
permissions?: string[]
[key: string]: any
}
export interface GetInfoResponse {
user: UserInfo
roles: string[]
permissions: string[]
isDefaultModifyPwd?: boolean
isPasswordExpired?: boolean
[key: string]: any
}
interface LoginResponse {
token?: string
[key: string]: any
}
interface CaptchaResponse {
captchaEnabled?: boolean
img?: string
uuid?: string
}
// 登录方法
export function login(username: string, password: string, code?: string, uuid?: string): Promise<AxiosResponse<LoginResponse>> {
const data: string = `username=${username}&password=${password}&code=${code}&uuid=${uuid}`
return request({
url: '/api/login/account',
headers: {
isToken: false,
repeatSubmit: false,
'Content-Type': 'application/x-www-form-urlencoded'
},
method: 'post',
data: data
})
}
export function authorize(params:string): Promise<AxiosResponse<any>> {
return request({
url: '/oauth2/authorize',
headers: {
isToken: true,
repeatSubmit: false,
'Content-Type': 'application/x-www-form-urlencoded'
},
method: 'post',
data: params
})
}
// 注册方法
export function register(data: RegisterData): Promise<AxiosResponse<any>> {
return request({
url: '/register',
headers: {
isToken: false
},
method: 'post',
data: data
})
}
// 获取用户详细信息
export function getInfo(): Promise<AxiosResponse<GetInfoResponse>> {
return request({
url: '/getInfo',
method: 'get'
})
}
// 退出方法
export function logout(): Promise<AxiosResponse<any>> {
return request({
url: '/logout',
method: 'post'
})
}
// 获取验证码
export function getCodeImg(): Promise<AxiosResponse<CaptchaResponse>> {
return request({
url: '/captcha/image',
headers: {
isToken: false
},
method: 'get',
timeout: 20000
})
}