可用版本
This commit is contained in:
parent
582b7669af
commit
c6a5e00788
@ -7,21 +7,16 @@ const BASE_URL = '/api/v1/menu';
|
||||
// 获取菜单列表(分页)
|
||||
export const getMenus = (params?: MenuQuery) =>
|
||||
request.get<Page<MenuResponse>>(`${BASE_URL}/page`, {
|
||||
params,
|
||||
transform: true
|
||||
params
|
||||
});
|
||||
|
||||
// 获取菜单树
|
||||
export const getMenuTree = () =>
|
||||
request.get<MenuResponse[]>(`${BASE_URL}/tree`, {
|
||||
transform: true
|
||||
});
|
||||
request.get<MenuResponse[]>(`${BASE_URL}/tree`);
|
||||
|
||||
// 获取当前用户菜单
|
||||
export const getCurrentUserMenus = () =>
|
||||
request.get<MenuResponse[]>(`${BASE_URL}/current`, {
|
||||
transform: true
|
||||
});
|
||||
request.get<MenuResponse[]>(`${BASE_URL}/current`);
|
||||
|
||||
// 创建菜单
|
||||
export const createMenu = (data: MenuRequest) =>
|
||||
|
||||
@ -74,15 +74,21 @@ const UserPage: React.FC = () => {
|
||||
try {
|
||||
const values = await form.validateFields();
|
||||
if (editingUser) {
|
||||
await handleUpdate(editingUser.id, {
|
||||
const success = await handleUpdate(editingUser.id, {
|
||||
...values,
|
||||
version: editingUser.version
|
||||
});
|
||||
} else {
|
||||
await handleCreate(values);
|
||||
}
|
||||
if (success) {
|
||||
setModalVisible(false);
|
||||
fetchUsers();
|
||||
}
|
||||
} else {
|
||||
const success = await handleCreate(values);
|
||||
if (success) {
|
||||
setModalVisible(false);
|
||||
fetchUsers();
|
||||
}
|
||||
}
|
||||
} catch (error) {
|
||||
console.error('操作失败:', error);
|
||||
}
|
||||
|
||||
@ -7,8 +7,7 @@ const BASE_URL = '/api/v1/user';
|
||||
// 获取用户列表(分页)
|
||||
export const getUsers = (params?: UserQuery) =>
|
||||
request.get<Page<UserResponse>>(`${BASE_URL}/page`, {
|
||||
params,
|
||||
transform: true
|
||||
params
|
||||
});
|
||||
|
||||
// 创建用户
|
||||
|
||||
@ -11,14 +11,12 @@ export interface Response<T = any> {
|
||||
export interface RequestOptions extends AxiosRequestConfig {
|
||||
successMessage?: string;
|
||||
errorMessage?: string;
|
||||
transform?: boolean;
|
||||
retryCount?: number;
|
||||
retryDelay?: number;
|
||||
}
|
||||
|
||||
// 默认请求配置
|
||||
const defaultConfig: Partial<RequestOptions> = {
|
||||
transform: true,
|
||||
retryCount: 3,
|
||||
retryDelay: 1000,
|
||||
timeout: 30000
|
||||
@ -48,7 +46,7 @@ const responseHandler = (response: AxiosResponse<Response<any>>) => {
|
||||
|
||||
if (res.success && res.code === 200) {
|
||||
config.successMessage && message.success(config.successMessage);
|
||||
return config.transform ? res.data : res;
|
||||
return res.data;
|
||||
} else {
|
||||
message.error(config.errorMessage || res.message);
|
||||
return Promise.reject(res);
|
||||
@ -105,16 +103,16 @@ request.interceptors.response.use(responseHandler, errorHandler);
|
||||
|
||||
const http = {
|
||||
get: <T = any>(url: string, config?: RequestOptions) =>
|
||||
request.get<any, Response<T>>(url, createRequestConfig({transform: true, ...config})),
|
||||
request.get<any, Response<T>>(url, createRequestConfig(config)),
|
||||
|
||||
post: <T = any>(url: string, data?: any, config?: RequestOptions) =>
|
||||
request.post<any, Response<T>>(url, data, createRequestConfig({transform: true, ...config})),
|
||||
request.post<any, Response<T>>(url, data, createRequestConfig(config)),
|
||||
|
||||
put: <T = any>(url: string, data?: any, config?: RequestOptions) =>
|
||||
request.put<any, Response<T>>(url, data, createRequestConfig({transform: true, ...config})),
|
||||
request.put<any, Response<T>>(url, data, createRequestConfig(config)),
|
||||
|
||||
delete: <T = any>(url: string, config?: RequestOptions) =>
|
||||
request.delete<any, Response<T>>(url, createRequestConfig({transform: true, ...config})),
|
||||
request.delete<any, Response<T>>(url, createRequestConfig(config)),
|
||||
|
||||
upload: <T = any>(url: string, file: File, config?: RequestOptions) => {
|
||||
const formData = new FormData();
|
||||
|
||||
Loading…
Reference in New Issue
Block a user