deploy-ease-platform/frontend/src/api/user.ts
2024-11-28 09:57:54 +08:00

47 lines
1.2 KiB
TypeScript

import request from '@/utils/request';
import type { MenuDTO } from '@/pages/System/Menu/types';
import type { UserDTO } from '@/pages/System/User/types';
export interface LoginParams {
username: string;
password: string;
}
export interface LoginResult {
token: string;
userId: number;
username: string;
nickname: string;
}
export const login = async (data: LoginParams): Promise<LoginResult> => {
return request.post('/api/auth/login', data);
};
export const logout = async (): Promise<void> => {
return request.post('/api/auth/logout');
};
export const getUserMenus = async (): Promise<MenuDTO[]> => {
return request.get('/api/system/user/menus');
};
export const getUsers = async (params: any) => {
return request.get('/api/system/users', { params });
};
export const createUser = async (data: any) => {
return request.post('/api/system/users', data);
};
export const updateUser = async (id: number, data: any) => {
return request.put(`/api/system/users/${id}`, data);
};
export const deleteUser = async (id: number) => {
return request.delete(`/api/system/users/${id}`);
};
export const resetPassword = async (id: number) => {
return request.post(`/api/system/users/${id}/reset-password`);
};