Files
admin-vben5/apps/web-antd/src/api/base.ts

54 lines
1.2 KiB
TypeScript
Raw Normal View History

2024-08-08 14:05:08 +08:00
import { requestClient } from './request';
export type ID = number | string;
export type IDS = (number | string)[];
export interface BaseEntity {
createBy?: string;
createDept?: string;
createTime?: string;
updateBy?: string;
updateTime?: string;
}
/**
*
* @param pageNum
* @param pageSize
* @param orderByColumn
* @param isAsc
*/
export interface PageQuery {
isAsc?: boolean;
orderByColumn?: string;
pageNum?: number;
pageSize?: number;
}
/**
* @description: contentType
*/
export enum ContentTypeEnum {
// form-data upload
FORM_DATA = 'multipart/form-data;charset=UTF-8',
// form-data qs
FORM_URLENCODED = 'application/x-www-form-urlencoded;charset=UTF-8',
// json
JSON = 'application/json;charset=UTF-8',
}
/**
*
* @param url
* @param data
* @returns blob二进制
*/
export function commonExport(url: string, data: Record<string, any>) {
return requestClient.post<Blob>(url, data, {
data,
headers: { 'Content-Type': ContentTypeEnum.FORM_URLENCODED },
isTransformResponse: false,
responseType: 'blob',
});
}