diff --git a/novalon-manage-web/src/api/auth.api.ts b/novalon-manage-web/src/api/auth.api.ts new file mode 100644 index 0000000..c435de1 --- /dev/null +++ b/novalon-manage-web/src/api/auth.api.ts @@ -0,0 +1,44 @@ +import request from '@/utils/request' + +export interface LoginRequest { + username: string + password: string +} + +export interface LoginResponse { + token: string + user: UserInfo +} + +export interface UserInfo { + id: number + username: string + nickname: string + email: string + phone: string + avatar: string + roles: string[] + permissions: string[] +} + +export interface UpdatePasswordRequest { + oldPassword: string + newPassword: string +} + +export const authApi = { + login: (data: LoginRequest) => + request.post('/auth/login', data), + + logout: () => + request.post('/auth/logout'), + + getCurrentUser: () => + request.get('/auth/current'), + + updatePassword: (data: UpdatePasswordRequest) => + request.put('/auth/password', data), + + refreshToken: () => + request.post('/auth/refresh'), +}