/** * @description: 请求结果集 */ export enum ResultEnum { STATUS = 200, DATA_SUCCESS = 0, SUCCESS = 2000, SERVER_ERROR = 500, SERVER_FORBIDDEN = 403, NOT_FOUND = 404, TIMEOUT = 10042, } // 数据相关 export enum RequestDataTypeEnum { // 静态数据 STATIC = 0, // 请求数据 AJAX = 1, } // 请求主体类型 export enum RequestContentTypeEnum { // 普通请求 DEFAULT = 0, // SQL请求 SQL = 1, } /** * @description: 请求方法 */ export enum RequestHttpEnum { GET = 'get', POST = 'post', PATCH = 'patch', PUT = 'put', DELETE = 'delete', } /** * @description: 请求间隔 */ export enum RequestHttpIntervalEnum { // 秒 SECOND = 'second', // 分 MINUTE = 'minute', // 时 HOUR = 'hour', // 天 DAY = 'day', } /** * @description: 请求间隔名称 */ export const SelectHttpTimeNameObj = { [RequestHttpIntervalEnum.SECOND]: '秒', [RequestHttpIntervalEnum.MINUTE]: '分', [RequestHttpIntervalEnum.HOUR]: '时', [RequestHttpIntervalEnum.DAY]: '天', }; /** * @description: 请求头部类型 */ export enum RequestBodyEnum { NONE = 'none', FORM_DATA = 'form-data', X_WWW_FORM_URLENCODED = 'x-www-form-urlencoded', JSON = 'json', XML = 'xml', } /** * @description: 请求头部类型数组 */ export const RequestBodyEnumList = [ RequestBodyEnum.NONE, RequestBodyEnum.FORM_DATA, RequestBodyEnum.X_WWW_FORM_URLENCODED, RequestBodyEnum.JSON, RequestBodyEnum.XML, ]; /** * @description: 请求参数类型 */ export enum RequestParamsTypeEnum { PARAMS = 'Params', BODY = 'Body', HEADER = 'Header', } /** * @description: 请求参数主体 */ export type RequestParamsObjType = { [T: string]: string; }; export type RequestParams = { [RequestParamsTypeEnum.PARAMS]: RequestParamsObjType; [RequestParamsTypeEnum.HEADER]: RequestParamsObjType; [RequestParamsTypeEnum.BODY]: { [RequestBodyEnum.FORM_DATA]: RequestParamsObjType; [RequestBodyEnum.X_WWW_FORM_URLENCODED]: RequestParamsObjType; [RequestBodyEnum.JSON]: string; [RequestBodyEnum.XML]: string; }; }; /** * @description: 常用的contentTyp类型 */ export enum ContentTypeEnum { // json JSON = 'application/json;charset=UTF-8', // text TEXT = 'text/plain;charset=UTF-8', // xml XML = 'application/xml;charset=UTF-8', // application/x-www-form-urlencoded 一般配合qs FORM_URLENCODED = 'application/x-www-form-urlencoded;charset=UTF-8', // form-data 上传 FORM_DATA = 'multipart/form-data;charset=UTF-8', } // // 请求公共类型 type RequestPublicConfigType = { // 时间单位(时分秒) requestIntervalUnit: RequestHttpIntervalEnum; // 请求内容 requestParams: RequestParams; }; // 全局的图表请求配置 export interface RequestGlobalConfigType extends RequestPublicConfigType { // 组件定制轮询时间 requestInterval: number; // 请求源地址 requestOriginUrl?: string; } // 单个图表请求配置 export interface RequestConfigType extends RequestPublicConfigType { // 组件定制轮询时间 requestInterval?: number; // 获取数据的方式 requestDataType: RequestDataTypeEnum; // 请求方式 get/post/del/put/patch requestHttpType: RequestHttpEnum; // 源后续的 url requestUrl?: string; // 请求内容主体方式 普通/sql requestContentType: RequestContentTypeEnum; // 请求体类型 requestParamsBodyType: RequestBodyEnum; // SQL 请求对象 requestSQLContent: { sql: string; }; }