/** * @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; }; }