/* tslint:disable */
/* eslint-disable */
/**
 *
 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
 *
 * The version of the OpenAPI document:
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

import type { Configuration } from '../configuration';
import type { AxiosPromise, AxiosInstance, RawAxiosRequestConfig } from 'axios';
import globalAxios from 'axios';
// Some imports not used depending on template conditions
// @ts-ignore
import {
  DUMMY_BASE_URL,
  assertParamExists,
  setApiKeyToObject,
  setBasicAuthToObject,
  setBearerAuthToObject,
  setOAuthToObject,
  setSearchParams,
  serializeDataIfNeeded,
  toPathString,
  createRequestFunction
} from '../common';
// @ts-ignore
import {
  BASE_PATH,
  COLLECTION_FORMATS,
  type RequestArgs,
  BaseAPI,
  RequiredError,
  operationServerMap
} from '../base';
// @ts-ignore
import type { KamiApiJdCookieV1CreateOrderReq } from '../models';
// @ts-ignore
import type { KamiApiJdCookieV1CreateOrderRes } from '../models';
// @ts-ignore
import type { KamiApiJdCookieV1GetJdOrderHistoryRes } from '../models';
// @ts-ignore
import type { KamiApiJdCookieV1GetJdOrderRes } from '../models';
// @ts-ignore
import type { KamiApiJdCookieV1GetOrderRes } from '../models';
// @ts-ignore
import type { KamiApiJdCookieV1GetOrderStatusRes } from '../models';
// @ts-ignore
import type { KamiApiJdCookieV1GetPaymentUrlReq } from '../models';
// @ts-ignore
import type { KamiApiJdCookieV1GetPaymentUrlRes } from '../models';
// @ts-ignore
import type { KamiApiJdCookieV1ListJdOrderRes } from '../models';
// @ts-ignore
import type { KamiApiJdCookieV1ListOrderRes } from '../models';
/**
 * JDOrderManagementApi - axios parameter creator
 */
export const JDOrderManagementApiAxiosParamCreator = function (
  configuration?: Configuration
) {
  return {
    /**
     *
     * @summary Create Order
     * @param {KamiApiJdCookieV1CreateOrderReq} [kamiApiJdCookieV1CreateOrderReq]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiJdCookieOrderCreatePost: async (
      kamiApiJdCookieV1CreateOrderReq?: KamiApiJdCookieV1CreateOrderReq,
      options: RawAxiosRequestConfig = {}
    ): Promise<RequestArgs> => {
      const localVarPath = `/api/jd-cookie/order/create`;
      // use dummy base URL string because the URL constructor only accepts absolute URLs.
      const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
      let baseOptions;
      if (configuration) {
        baseOptions = configuration.baseOptions;
      }

      const localVarRequestOptions = {
        method: 'POST',
        ...baseOptions,
        ...options
      };
      const localVarHeaderParameter = {} as any;
      const localVarQueryParameter = {} as any;

      localVarHeaderParameter['Content-Type'] = 'application/json';

      setSearchParams(localVarUrlObj, localVarQueryParameter);
      let headersFromBaseOptions =
        baseOptions && baseOptions.headers ? baseOptions.headers : {};
      localVarRequestOptions.headers = {
        ...localVarHeaderParameter,
        ...headersFromBaseOptions,
        ...options.headers
      };
      localVarRequestOptions.data = serializeDataIfNeeded(
        kamiApiJdCookieV1CreateOrderReq,
        localVarRequestOptions,
        configuration
      );

      return {
        url: toPathString(localVarUrlObj),
        options: localVarRequestOptions
      };
    },
    /**
     *
     * @summary Export JD Orders
     * @param {ApiJdCookieOrderExportGetStatusEnum} [status] 状态筛选
     * @param {string} [startTime] 开始时间
     * @param {string} [endTime] 结束时间
     * @param {string} [orderId] 关联的内部订单号筛选
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiJdCookieOrderExportGet: async (
      status?: ApiJdCookieOrderExportGetStatusEnum,
      startTime?: string,
      endTime?: string,
      orderId?: string,
      options: RawAxiosRequestConfig = {}
    ): Promise<RequestArgs> => {
      const localVarPath = `/api/jd-cookie/order/export`;
      // use dummy base URL string because the URL constructor only accepts absolute URLs.
      const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
      let baseOptions;
      if (configuration) {
        baseOptions = configuration.baseOptions;
      }

      const localVarRequestOptions = {
        method: 'GET',
        ...baseOptions,
        ...options
      };
      const localVarHeaderParameter = {} as any;
      const localVarQueryParameter = {} as any;

      if (status !== undefined) {
        localVarQueryParameter['status'] = status;
      }

      if (startTime !== undefined) {
        localVarQueryParameter['startTime'] = startTime;
      }

      if (endTime !== undefined) {
        localVarQueryParameter['endTime'] = endTime;
      }

      if (orderId !== undefined) {
        localVarQueryParameter['orderId'] = orderId;
      }

      setSearchParams(localVarUrlObj, localVarQueryParameter);
      let headersFromBaseOptions =
        baseOptions && baseOptions.headers ? baseOptions.headers : {};
      localVarRequestOptions.headers = {
        ...localVarHeaderParameter,
        ...headersFromBaseOptions,
        ...options.headers
      };

      return {
        url: toPathString(localVarUrlObj),
        options: localVarRequestOptions
      };
    },
    /**
     *
     * @summary Get Single Order
     * @param {string} orderId 订单号
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiJdCookieOrderGetGet: async (
      orderId: string,
      options: RawAxiosRequestConfig = {}
    ): Promise<RequestArgs> => {
      // verify required parameter 'orderId' is not null or undefined
      assertParamExists('apiJdCookieOrderGetGet', 'orderId', orderId);
      const localVarPath = `/api/jd-cookie/order/get`;
      // use dummy base URL string because the URL constructor only accepts absolute URLs.
      const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
      let baseOptions;
      if (configuration) {
        baseOptions = configuration.baseOptions;
      }

      const localVarRequestOptions = {
        method: 'GET',
        ...baseOptions,
        ...options
      };
      const localVarHeaderParameter = {} as any;
      const localVarQueryParameter = {} as any;

      if (orderId !== undefined) {
        localVarQueryParameter['orderId'] = orderId;
      }

      setSearchParams(localVarUrlObj, localVarQueryParameter);
      let headersFromBaseOptions =
        baseOptions && baseOptions.headers ? baseOptions.headers : {};
      localVarRequestOptions.headers = {
        ...localVarHeaderParameter,
        ...headersFromBaseOptions,
        ...options.headers
      };

      return {
        url: toPathString(localVarUrlObj),
        options: localVarRequestOptions
      };
    },
    /**
     *
     * @summary JD Order List Query
     * @param {number} [page] 页码
     * @param {number} [size] 每页大小
     * @param {ApiJdCookieOrderJdListGetStatusEnum} [status] 状态筛选
     * @param {string} [startTime] 开始时间
     * @param {string} [endTime] 结束时间
     * @param {string} [orderId] 关联的内部订单号筛选
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiJdCookieOrderJdListGet: async (
      page?: number,
      size?: number,
      status?: ApiJdCookieOrderJdListGetStatusEnum,
      startTime?: string,
      endTime?: string,
      orderId?: string,
      options: RawAxiosRequestConfig = {}
    ): Promise<RequestArgs> => {
      const localVarPath = `/api/jd-cookie/order/jd-list`;
      // use dummy base URL string because the URL constructor only accepts absolute URLs.
      const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
      let baseOptions;
      if (configuration) {
        baseOptions = configuration.baseOptions;
      }

      const localVarRequestOptions = {
        method: 'GET',
        ...baseOptions,
        ...options
      };
      const localVarHeaderParameter = {} as any;
      const localVarQueryParameter = {} as any;

      if (page !== undefined) {
        localVarQueryParameter['page'] = page;
      }

      if (size !== undefined) {
        localVarQueryParameter['size'] = size;
      }

      if (status !== undefined) {
        localVarQueryParameter['status'] = status;
      }

      if (startTime !== undefined) {
        localVarQueryParameter['startTime'] = startTime;
      }

      if (endTime !== undefined) {
        localVarQueryParameter['endTime'] = endTime;
      }

      if (orderId !== undefined) {
        localVarQueryParameter['orderId'] = orderId;
      }

      setSearchParams(localVarUrlObj, localVarQueryParameter);
      let headersFromBaseOptions =
        baseOptions && baseOptions.headers ? baseOptions.headers : {};
      localVarRequestOptions.headers = {
        ...localVarHeaderParameter,
        ...headersFromBaseOptions,
        ...options.headers
      };

      return {
        url: toPathString(localVarUrlObj),
        options: localVarRequestOptions
      };
    },
    /**
     *
     * @summary Get Single JD Order
     * @param {string} jdOrderId 京东订单号
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiJdCookieOrderJdOrderGet: async (
      jdOrderId: string,
      options: RawAxiosRequestConfig = {}
    ): Promise<RequestArgs> => {
      // verify required parameter 'jdOrderId' is not null or undefined
      assertParamExists('apiJdCookieOrderJdOrderGet', 'jdOrderId', jdOrderId);
      const localVarPath = `/api/jd-cookie/order/jd-order`;
      // use dummy base URL string because the URL constructor only accepts absolute URLs.
      const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
      let baseOptions;
      if (configuration) {
        baseOptions = configuration.baseOptions;
      }

      const localVarRequestOptions = {
        method: 'GET',
        ...baseOptions,
        ...options
      };
      const localVarHeaderParameter = {} as any;
      const localVarQueryParameter = {} as any;

      if (jdOrderId !== undefined) {
        localVarQueryParameter['jdOrderId'] = jdOrderId;
      }

      setSearchParams(localVarUrlObj, localVarQueryParameter);
      let headersFromBaseOptions =
        baseOptions && baseOptions.headers ? baseOptions.headers : {};
      localVarRequestOptions.headers = {
        ...localVarHeaderParameter,
        ...headersFromBaseOptions,
        ...options.headers
      };

      return {
        url: toPathString(localVarUrlObj),
        options: localVarRequestOptions
      };
    },
    /**
     *
     * @summary Get JD Order History
     * @param {string} jdOrderId 京东订单号
     * @param {number} [page] 页码
     * @param {number} [size] 每页大小
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiJdCookieOrderJdOrderHistoryGet: async (
      jdOrderId: string,
      page?: number,
      size?: number,
      options: RawAxiosRequestConfig = {}
    ): Promise<RequestArgs> => {
      // verify required parameter 'jdOrderId' is not null or undefined
      assertParamExists(
        'apiJdCookieOrderJdOrderHistoryGet',
        'jdOrderId',
        jdOrderId
      );
      const localVarPath = `/api/jd-cookie/order/jd-order-history`;
      // use dummy base URL string because the URL constructor only accepts absolute URLs.
      const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
      let baseOptions;
      if (configuration) {
        baseOptions = configuration.baseOptions;
      }

      const localVarRequestOptions = {
        method: 'GET',
        ...baseOptions,
        ...options
      };
      const localVarHeaderParameter = {} as any;
      const localVarQueryParameter = {} as any;

      if (jdOrderId !== undefined) {
        localVarQueryParameter['jdOrderId'] = jdOrderId;
      }

      if (page !== undefined) {
        localVarQueryParameter['page'] = page;
      }

      if (size !== undefined) {
        localVarQueryParameter['size'] = size;
      }

      setSearchParams(localVarUrlObj, localVarQueryParameter);
      let headersFromBaseOptions =
        baseOptions && baseOptions.headers ? baseOptions.headers : {};
      localVarRequestOptions.headers = {
        ...localVarHeaderParameter,
        ...headersFromBaseOptions,
        ...options.headers
      };

      return {
        url: toPathString(localVarUrlObj),
        options: localVarRequestOptions
      };
    },
    /**
     *
     * @summary Order List Query
     * @param {number} [page] 页码
     * @param {number} [size] 每页大小
     * @param {ApiJdCookieOrderListGetStatusEnum} [status] 状态筛选
     * @param {string} [startTime] 开始时间
     * @param {string} [endTime] 结束时间
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiJdCookieOrderListGet: async (
      page?: number,
      size?: number,
      status?: ApiJdCookieOrderListGetStatusEnum,
      startTime?: string,
      endTime?: string,
      options: RawAxiosRequestConfig = {}
    ): Promise<RequestArgs> => {
      const localVarPath = `/api/jd-cookie/order/list`;
      // use dummy base URL string because the URL constructor only accepts absolute URLs.
      const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
      let baseOptions;
      if (configuration) {
        baseOptions = configuration.baseOptions;
      }

      const localVarRequestOptions = {
        method: 'GET',
        ...baseOptions,
        ...options
      };
      const localVarHeaderParameter = {} as any;
      const localVarQueryParameter = {} as any;

      if (page !== undefined) {
        localVarQueryParameter['page'] = page;
      }

      if (size !== undefined) {
        localVarQueryParameter['size'] = size;
      }

      if (status !== undefined) {
        localVarQueryParameter['status'] = status;
      }

      if (startTime !== undefined) {
        localVarQueryParameter['startTime'] = startTime;
      }

      if (endTime !== undefined) {
        localVarQueryParameter['endTime'] = endTime;
      }

      setSearchParams(localVarUrlObj, localVarQueryParameter);
      let headersFromBaseOptions =
        baseOptions && baseOptions.headers ? baseOptions.headers : {};
      localVarRequestOptions.headers = {
        ...localVarHeaderParameter,
        ...headersFromBaseOptions,
        ...options.headers
      };

      return {
        url: toPathString(localVarUrlObj),
        options: localVarRequestOptions
      };
    },
    /**
     *
     * @summary Get Payment URL
     * @param {KamiApiJdCookieV1GetPaymentUrlReq} [kamiApiJdCookieV1GetPaymentUrlReq]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiJdCookieOrderPaymentUrlPost: async (
      kamiApiJdCookieV1GetPaymentUrlReq?: KamiApiJdCookieV1GetPaymentUrlReq,
      options: RawAxiosRequestConfig = {}
    ): Promise<RequestArgs> => {
      const localVarPath = `/api/jd-cookie/order/payment-url`;
      // use dummy base URL string because the URL constructor only accepts absolute URLs.
      const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
      let baseOptions;
      if (configuration) {
        baseOptions = configuration.baseOptions;
      }

      const localVarRequestOptions = {
        method: 'POST',
        ...baseOptions,
        ...options
      };
      const localVarHeaderParameter = {} as any;
      const localVarQueryParameter = {} as any;

      localVarHeaderParameter['Content-Type'] = 'application/json';

      setSearchParams(localVarUrlObj, localVarQueryParameter);
      let headersFromBaseOptions =
        baseOptions && baseOptions.headers ? baseOptions.headers : {};
      localVarRequestOptions.headers = {
        ...localVarHeaderParameter,
        ...headersFromBaseOptions,
        ...options.headers
      };
      localVarRequestOptions.data = serializeDataIfNeeded(
        kamiApiJdCookieV1GetPaymentUrlReq,
        localVarRequestOptions,
        configuration
      );

      return {
        url: toPathString(localVarUrlObj),
        options: localVarRequestOptions
      };
    },
    /**
     *
     * @summary Query Order Status
     * @param {string} orderId 订单号
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiJdCookieOrderStatusGet: async (
      orderId: string,
      options: RawAxiosRequestConfig = {}
    ): Promise<RequestArgs> => {
      // verify required parameter 'orderId' is not null or undefined
      assertParamExists('apiJdCookieOrderStatusGet', 'orderId', orderId);
      const localVarPath = `/api/jd-cookie/order/status`;
      // use dummy base URL string because the URL constructor only accepts absolute URLs.
      const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
      let baseOptions;
      if (configuration) {
        baseOptions = configuration.baseOptions;
      }

      const localVarRequestOptions = {
        method: 'GET',
        ...baseOptions,
        ...options
      };
      const localVarHeaderParameter = {} as any;
      const localVarQueryParameter = {} as any;

      if (orderId !== undefined) {
        localVarQueryParameter['orderId'] = orderId;
      }

      setSearchParams(localVarUrlObj, localVarQueryParameter);
      let headersFromBaseOptions =
        baseOptions && baseOptions.headers ? baseOptions.headers : {};
      localVarRequestOptions.headers = {
        ...localVarHeaderParameter,
        ...headersFromBaseOptions,
        ...options.headers
      };

      return {
        url: toPathString(localVarUrlObj),
        options: localVarRequestOptions
      };
    }
  };
};

/**
 * JDOrderManagementApi - functional programming interface
 */
export const JDOrderManagementApiFp = function (configuration?: Configuration) {
  const localVarAxiosParamCreator =
    JDOrderManagementApiAxiosParamCreator(configuration);
  return {
    /**
     *
     * @summary Create Order
     * @param {KamiApiJdCookieV1CreateOrderReq} [kamiApiJdCookieV1CreateOrderReq]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    async apiJdCookieOrderCreatePost(
      kamiApiJdCookieV1CreateOrderReq?: KamiApiJdCookieV1CreateOrderReq,
      options?: RawAxiosRequestConfig
    ): Promise<
      (
        axios?: AxiosInstance,
        basePath?: string
      ) => AxiosPromise<KamiApiJdCookieV1CreateOrderRes>
    > {
      const localVarAxiosArgs =
        await localVarAxiosParamCreator.apiJdCookieOrderCreatePost(
          kamiApiJdCookieV1CreateOrderReq,
          options
        );
      const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
      const localVarOperationServerBasePath =
        operationServerMap['JDOrderManagementApi.apiJdCookieOrderCreatePost']?.[
          localVarOperationServerIndex
        ]?.url;
      return (axios, basePath) =>
        createRequestFunction(
          localVarAxiosArgs,
          globalAxios,
          BASE_PATH,
          configuration
        )(axios, localVarOperationServerBasePath || basePath);
    },
    /**
     *
     * @summary Export JD Orders
     * @param {ApiJdCookieOrderExportGetStatusEnum} [status] 状态筛选
     * @param {string} [startTime] 开始时间
     * @param {string} [endTime] 结束时间
     * @param {string} [orderId] 关联的内部订单号筛选
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    async apiJdCookieOrderExportGet(
      status?: ApiJdCookieOrderExportGetStatusEnum,
      startTime?: string,
      endTime?: string,
      orderId?: string,
      options?: RawAxiosRequestConfig
    ): Promise<
      (axios?: AxiosInstance, basePath?: string) => AxiosPromise<object>
    > {
      const localVarAxiosArgs =
        await localVarAxiosParamCreator.apiJdCookieOrderExportGet(
          status,
          startTime,
          endTime,
          orderId,
          options
        );
      const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
      const localVarOperationServerBasePath =
        operationServerMap['JDOrderManagementApi.apiJdCookieOrderExportGet']?.[
          localVarOperationServerIndex
        ]?.url;
      return (axios, basePath) =>
        createRequestFunction(
          localVarAxiosArgs,
          globalAxios,
          BASE_PATH,
          configuration
        )(axios, localVarOperationServerBasePath || basePath);
    },
    /**
     *
     * @summary Get Single Order
     * @param {string} orderId 订单号
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    async apiJdCookieOrderGetGet(
      orderId: string,
      options?: RawAxiosRequestConfig
    ): Promise<
      (
        axios?: AxiosInstance,
        basePath?: string
      ) => AxiosPromise<KamiApiJdCookieV1GetOrderRes>
    > {
      const localVarAxiosArgs =
        await localVarAxiosParamCreator.apiJdCookieOrderGetGet(
          orderId,
          options
        );
      const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
      const localVarOperationServerBasePath =
        operationServerMap['JDOrderManagementApi.apiJdCookieOrderGetGet']?.[
          localVarOperationServerIndex
        ]?.url;
      return (axios, basePath) =>
        createRequestFunction(
          localVarAxiosArgs,
          globalAxios,
          BASE_PATH,
          configuration
        )(axios, localVarOperationServerBasePath || basePath);
    },
    /**
     *
     * @summary JD Order List Query
     * @param {number} [page] 页码
     * @param {number} [size] 每页大小
     * @param {ApiJdCookieOrderJdListGetStatusEnum} [status] 状态筛选
     * @param {string} [startTime] 开始时间
     * @param {string} [endTime] 结束时间
     * @param {string} [orderId] 关联的内部订单号筛选
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    async apiJdCookieOrderJdListGet(
      page?: number,
      size?: number,
      status?: ApiJdCookieOrderJdListGetStatusEnum,
      startTime?: string,
      endTime?: string,
      orderId?: string,
      options?: RawAxiosRequestConfig
    ): Promise<
      (
        axios?: AxiosInstance,
        basePath?: string
      ) => AxiosPromise<KamiApiJdCookieV1ListJdOrderRes>
    > {
      const localVarAxiosArgs =
        await localVarAxiosParamCreator.apiJdCookieOrderJdListGet(
          page,
          size,
          status,
          startTime,
          endTime,
          orderId,
          options
        );
      const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
      const localVarOperationServerBasePath =
        operationServerMap['JDOrderManagementApi.apiJdCookieOrderJdListGet']?.[
          localVarOperationServerIndex
        ]?.url;
      return (axios, basePath) =>
        createRequestFunction(
          localVarAxiosArgs,
          globalAxios,
          BASE_PATH,
          configuration
        )(axios, localVarOperationServerBasePath || basePath);
    },
    /**
     *
     * @summary Get Single JD Order
     * @param {string} jdOrderId 京东订单号
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    async apiJdCookieOrderJdOrderGet(
      jdOrderId: string,
      options?: RawAxiosRequestConfig
    ): Promise<
      (
        axios?: AxiosInstance,
        basePath?: string
      ) => AxiosPromise<KamiApiJdCookieV1GetJdOrderRes>
    > {
      const localVarAxiosArgs =
        await localVarAxiosParamCreator.apiJdCookieOrderJdOrderGet(
          jdOrderId,
          options
        );
      const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
      const localVarOperationServerBasePath =
        operationServerMap['JDOrderManagementApi.apiJdCookieOrderJdOrderGet']?.[
          localVarOperationServerIndex
        ]?.url;
      return (axios, basePath) =>
        createRequestFunction(
          localVarAxiosArgs,
          globalAxios,
          BASE_PATH,
          configuration
        )(axios, localVarOperationServerBasePath || basePath);
    },
    /**
     *
     * @summary Get JD Order History
     * @param {string} jdOrderId 京东订单号
     * @param {number} [page] 页码
     * @param {number} [size] 每页大小
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    async apiJdCookieOrderJdOrderHistoryGet(
      jdOrderId: string,
      page?: number,
      size?: number,
      options?: RawAxiosRequestConfig
    ): Promise<
      (
        axios?: AxiosInstance,
        basePath?: string
      ) => AxiosPromise<KamiApiJdCookieV1GetJdOrderHistoryRes>
    > {
      const localVarAxiosArgs =
        await localVarAxiosParamCreator.apiJdCookieOrderJdOrderHistoryGet(
          jdOrderId,
          page,
          size,
          options
        );
      const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
      const localVarOperationServerBasePath =
        operationServerMap[
          'JDOrderManagementApi.apiJdCookieOrderJdOrderHistoryGet'
        ]?.[localVarOperationServerIndex]?.url;
      return (axios, basePath) =>
        createRequestFunction(
          localVarAxiosArgs,
          globalAxios,
          BASE_PATH,
          configuration
        )(axios, localVarOperationServerBasePath || basePath);
    },
    /**
     *
     * @summary Order List Query
     * @param {number} [page] 页码
     * @param {number} [size] 每页大小
     * @param {ApiJdCookieOrderListGetStatusEnum} [status] 状态筛选
     * @param {string} [startTime] 开始时间
     * @param {string} [endTime] 结束时间
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    async apiJdCookieOrderListGet(
      page?: number,
      size?: number,
      status?: ApiJdCookieOrderListGetStatusEnum,
      startTime?: string,
      endTime?: string,
      options?: RawAxiosRequestConfig
    ): Promise<
      (
        axios?: AxiosInstance,
        basePath?: string
      ) => AxiosPromise<KamiApiJdCookieV1ListOrderRes>
    > {
      const localVarAxiosArgs =
        await localVarAxiosParamCreator.apiJdCookieOrderListGet(
          page,
          size,
          status,
          startTime,
          endTime,
          options
        );
      const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
      const localVarOperationServerBasePath =
        operationServerMap['JDOrderManagementApi.apiJdCookieOrderListGet']?.[
          localVarOperationServerIndex
        ]?.url;
      return (axios, basePath) =>
        createRequestFunction(
          localVarAxiosArgs,
          globalAxios,
          BASE_PATH,
          configuration
        )(axios, localVarOperationServerBasePath || basePath);
    },
    /**
     *
     * @summary Get Payment URL
     * @param {KamiApiJdCookieV1GetPaymentUrlReq} [kamiApiJdCookieV1GetPaymentUrlReq]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    async apiJdCookieOrderPaymentUrlPost(
      kamiApiJdCookieV1GetPaymentUrlReq?: KamiApiJdCookieV1GetPaymentUrlReq,
      options?: RawAxiosRequestConfig
    ): Promise<
      (
        axios?: AxiosInstance,
        basePath?: string
      ) => AxiosPromise<KamiApiJdCookieV1GetPaymentUrlRes>
    > {
      const localVarAxiosArgs =
        await localVarAxiosParamCreator.apiJdCookieOrderPaymentUrlPost(
          kamiApiJdCookieV1GetPaymentUrlReq,
          options
        );
      const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
      const localVarOperationServerBasePath =
        operationServerMap[
          'JDOrderManagementApi.apiJdCookieOrderPaymentUrlPost'
        ]?.[localVarOperationServerIndex]?.url;
      return (axios, basePath) =>
        createRequestFunction(
          localVarAxiosArgs,
          globalAxios,
          BASE_PATH,
          configuration
        )(axios, localVarOperationServerBasePath || basePath);
    },
    /**
     *
     * @summary Query Order Status
     * @param {string} orderId 订单号
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    async apiJdCookieOrderStatusGet(
      orderId: string,
      options?: RawAxiosRequestConfig
    ): Promise<
      (
        axios?: AxiosInstance,
        basePath?: string
      ) => AxiosPromise<KamiApiJdCookieV1GetOrderStatusRes>
    > {
      const localVarAxiosArgs =
        await localVarAxiosParamCreator.apiJdCookieOrderStatusGet(
          orderId,
          options
        );
      const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
      const localVarOperationServerBasePath =
        operationServerMap['JDOrderManagementApi.apiJdCookieOrderStatusGet']?.[
          localVarOperationServerIndex
        ]?.url;
      return (axios, basePath) =>
        createRequestFunction(
          localVarAxiosArgs,
          globalAxios,
          BASE_PATH,
          configuration
        )(axios, localVarOperationServerBasePath || basePath);
    }
  };
};

/**
 * JDOrderManagementApi - factory interface
 */
export const JDOrderManagementApiFactory = function (
  configuration?: Configuration,
  basePath?: string,
  axios?: AxiosInstance
) {
  const localVarFp = JDOrderManagementApiFp(configuration);
  return {
    /**
     *
     * @summary Create Order
     * @param {JDOrderManagementApiApiJdCookieOrderCreatePostRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiJdCookieOrderCreatePost(
      requestParameters: JDOrderManagementApiApiJdCookieOrderCreatePostRequest = {},
      options?: RawAxiosRequestConfig
    ): AxiosPromise<KamiApiJdCookieV1CreateOrderRes> {
      return localVarFp
        .apiJdCookieOrderCreatePost(
          requestParameters.kamiApiJdCookieV1CreateOrderReq,
          options
        )
        .then(request => request(axios, basePath));
    },
    /**
     *
     * @summary Export JD Orders
     * @param {JDOrderManagementApiApiJdCookieOrderExportGetRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiJdCookieOrderExportGet(
      requestParameters: JDOrderManagementApiApiJdCookieOrderExportGetRequest = {},
      options?: RawAxiosRequestConfig
    ): AxiosPromise<object> {
      return localVarFp
        .apiJdCookieOrderExportGet(
          requestParameters.status,
          requestParameters.startTime,
          requestParameters.endTime,
          requestParameters.orderId,
          options
        )
        .then(request => request(axios, basePath));
    },
    /**
     *
     * @summary Get Single Order
     * @param {JDOrderManagementApiApiJdCookieOrderGetGetRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiJdCookieOrderGetGet(
      requestParameters: JDOrderManagementApiApiJdCookieOrderGetGetRequest,
      options?: RawAxiosRequestConfig
    ): AxiosPromise<KamiApiJdCookieV1GetOrderRes> {
      return localVarFp
        .apiJdCookieOrderGetGet(requestParameters.orderId, options)
        .then(request => request(axios, basePath));
    },
    /**
     *
     * @summary JD Order List Query
     * @param {JDOrderManagementApiApiJdCookieOrderJdListGetRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiJdCookieOrderJdListGet(
      requestParameters: JDOrderManagementApiApiJdCookieOrderJdListGetRequest = {},
      options?: RawAxiosRequestConfig
    ): AxiosPromise<KamiApiJdCookieV1ListJdOrderRes> {
      return localVarFp
        .apiJdCookieOrderJdListGet(
          requestParameters.page,
          requestParameters.size,
          requestParameters.status,
          requestParameters.startTime,
          requestParameters.endTime,
          requestParameters.orderId,
          options
        )
        .then(request => request(axios, basePath));
    },
    /**
     *
     * @summary Get Single JD Order
     * @param {JDOrderManagementApiApiJdCookieOrderJdOrderGetRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiJdCookieOrderJdOrderGet(
      requestParameters: JDOrderManagementApiApiJdCookieOrderJdOrderGetRequest,
      options?: RawAxiosRequestConfig
    ): AxiosPromise<KamiApiJdCookieV1GetJdOrderRes> {
      return localVarFp
        .apiJdCookieOrderJdOrderGet(requestParameters.jdOrderId, options)
        .then(request => request(axios, basePath));
    },
    /**
     *
     * @summary Get JD Order History
     * @param {JDOrderManagementApiApiJdCookieOrderJdOrderHistoryGetRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiJdCookieOrderJdOrderHistoryGet(
      requestParameters: JDOrderManagementApiApiJdCookieOrderJdOrderHistoryGetRequest,
      options?: RawAxiosRequestConfig
    ): AxiosPromise<KamiApiJdCookieV1GetJdOrderHistoryRes> {
      return localVarFp
        .apiJdCookieOrderJdOrderHistoryGet(
          requestParameters.jdOrderId,
          requestParameters.page,
          requestParameters.size,
          options
        )
        .then(request => request(axios, basePath));
    },
    /**
     *
     * @summary Order List Query
     * @param {JDOrderManagementApiApiJdCookieOrderListGetRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiJdCookieOrderListGet(
      requestParameters: JDOrderManagementApiApiJdCookieOrderListGetRequest = {},
      options?: RawAxiosRequestConfig
    ): AxiosPromise<KamiApiJdCookieV1ListOrderRes> {
      return localVarFp
        .apiJdCookieOrderListGet(
          requestParameters.page,
          requestParameters.size,
          requestParameters.status,
          requestParameters.startTime,
          requestParameters.endTime,
          options
        )
        .then(request => request(axios, basePath));
    },
    /**
     *
     * @summary Get Payment URL
     * @param {JDOrderManagementApiApiJdCookieOrderPaymentUrlPostRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiJdCookieOrderPaymentUrlPost(
      requestParameters: JDOrderManagementApiApiJdCookieOrderPaymentUrlPostRequest = {},
      options?: RawAxiosRequestConfig
    ): AxiosPromise<KamiApiJdCookieV1GetPaymentUrlRes> {
      return localVarFp
        .apiJdCookieOrderPaymentUrlPost(
          requestParameters.kamiApiJdCookieV1GetPaymentUrlReq,
          options
        )
        .then(request => request(axios, basePath));
    },
    /**
     *
     * @summary Query Order Status
     * @param {JDOrderManagementApiApiJdCookieOrderStatusGetRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiJdCookieOrderStatusGet(
      requestParameters: JDOrderManagementApiApiJdCookieOrderStatusGetRequest,
      options?: RawAxiosRequestConfig
    ): AxiosPromise<KamiApiJdCookieV1GetOrderStatusRes> {
      return localVarFp
        .apiJdCookieOrderStatusGet(requestParameters.orderId, options)
        .then(request => request(axios, basePath));
    }
  };
};

/**
 * JDOrderManagementApi - interface
 */
export interface JDOrderManagementApiInterface {
  /**
   *
   * @summary Create Order
   * @param {JDOrderManagementApiApiJdCookieOrderCreatePostRequest} requestParameters Request parameters.
   * @param {*} [options] Override http request option.
   * @throws {RequiredError}
   */
  apiJdCookieOrderCreatePost(
    requestParameters?: JDOrderManagementApiApiJdCookieOrderCreatePostRequest,
    options?: RawAxiosRequestConfig
  ): AxiosPromise<KamiApiJdCookieV1CreateOrderRes>;

  /**
   *
   * @summary Export JD Orders
   * @param {JDOrderManagementApiApiJdCookieOrderExportGetRequest} requestParameters Request parameters.
   * @param {*} [options] Override http request option.
   * @throws {RequiredError}
   */
  apiJdCookieOrderExportGet(
    requestParameters?: JDOrderManagementApiApiJdCookieOrderExportGetRequest,
    options?: RawAxiosRequestConfig
  ): AxiosPromise<object>;

  /**
   *
   * @summary Get Single Order
   * @param {JDOrderManagementApiApiJdCookieOrderGetGetRequest} requestParameters Request parameters.
   * @param {*} [options] Override http request option.
   * @throws {RequiredError}
   */
  apiJdCookieOrderGetGet(
    requestParameters: JDOrderManagementApiApiJdCookieOrderGetGetRequest,
    options?: RawAxiosRequestConfig
  ): AxiosPromise<KamiApiJdCookieV1GetOrderRes>;

  /**
   *
   * @summary JD Order List Query
   * @param {JDOrderManagementApiApiJdCookieOrderJdListGetRequest} requestParameters Request parameters.
   * @param {*} [options] Override http request option.
   * @throws {RequiredError}
   */
  apiJdCookieOrderJdListGet(
    requestParameters?: JDOrderManagementApiApiJdCookieOrderJdListGetRequest,
    options?: RawAxiosRequestConfig
  ): AxiosPromise<KamiApiJdCookieV1ListJdOrderRes>;

  /**
   *
   * @summary Get Single JD Order
   * @param {JDOrderManagementApiApiJdCookieOrderJdOrderGetRequest} requestParameters Request parameters.
   * @param {*} [options] Override http request option.
   * @throws {RequiredError}
   */
  apiJdCookieOrderJdOrderGet(
    requestParameters: JDOrderManagementApiApiJdCookieOrderJdOrderGetRequest,
    options?: RawAxiosRequestConfig
  ): AxiosPromise<KamiApiJdCookieV1GetJdOrderRes>;

  /**
   *
   * @summary Get JD Order History
   * @param {JDOrderManagementApiApiJdCookieOrderJdOrderHistoryGetRequest} requestParameters Request parameters.
   * @param {*} [options] Override http request option.
   * @throws {RequiredError}
   */
  apiJdCookieOrderJdOrderHistoryGet(
    requestParameters: JDOrderManagementApiApiJdCookieOrderJdOrderHistoryGetRequest,
    options?: RawAxiosRequestConfig
  ): AxiosPromise<KamiApiJdCookieV1GetJdOrderHistoryRes>;

  /**
   *
   * @summary Order List Query
   * @param {JDOrderManagementApiApiJdCookieOrderListGetRequest} requestParameters Request parameters.
   * @param {*} [options] Override http request option.
   * @throws {RequiredError}
   */
  apiJdCookieOrderListGet(
    requestParameters?: JDOrderManagementApiApiJdCookieOrderListGetRequest,
    options?: RawAxiosRequestConfig
  ): AxiosPromise<KamiApiJdCookieV1ListOrderRes>;

  /**
   *
   * @summary Get Payment URL
   * @param {JDOrderManagementApiApiJdCookieOrderPaymentUrlPostRequest} requestParameters Request parameters.
   * @param {*} [options] Override http request option.
   * @throws {RequiredError}
   */
  apiJdCookieOrderPaymentUrlPost(
    requestParameters?: JDOrderManagementApiApiJdCookieOrderPaymentUrlPostRequest,
    options?: RawAxiosRequestConfig
  ): AxiosPromise<KamiApiJdCookieV1GetPaymentUrlRes>;

  /**
   *
   * @summary Query Order Status
   * @param {JDOrderManagementApiApiJdCookieOrderStatusGetRequest} requestParameters Request parameters.
   * @param {*} [options] Override http request option.
   * @throws {RequiredError}
   */
  apiJdCookieOrderStatusGet(
    requestParameters: JDOrderManagementApiApiJdCookieOrderStatusGetRequest,
    options?: RawAxiosRequestConfig
  ): AxiosPromise<KamiApiJdCookieV1GetOrderStatusRes>;
}

/**
 * Request parameters for apiJdCookieOrderCreatePost operation in JDOrderManagementApi.
 */
export interface JDOrderManagementApiApiJdCookieOrderCreatePostRequest {
  readonly kamiApiJdCookieV1CreateOrderReq?: KamiApiJdCookieV1CreateOrderReq;
}

/**
 * Request parameters for apiJdCookieOrderExportGet operation in JDOrderManagementApi.
 */
export interface JDOrderManagementApiApiJdCookieOrderExportGetRequest {
  /**
   * 状态筛选
   */
  readonly status?: ApiJdCookieOrderExportGetStatusEnum;

  /**
   * 开始时间
   */
  readonly startTime?: string;

  /**
   * 结束时间
   */
  readonly endTime?: string;

  /**
   * 关联的内部订单号筛选
   */
  readonly orderId?: string;
}

/**
 * Request parameters for apiJdCookieOrderGetGet operation in JDOrderManagementApi.
 */
export interface JDOrderManagementApiApiJdCookieOrderGetGetRequest {
  /**
   * 订单号
   */
  readonly orderId: string;
}

/**
 * Request parameters for apiJdCookieOrderJdListGet operation in JDOrderManagementApi.
 */
export interface JDOrderManagementApiApiJdCookieOrderJdListGetRequest {
  /**
   * 页码
   */
  readonly page?: number;

  /**
   * 每页大小
   */
  readonly size?: number;

  /**
   * 状态筛选
   */
  readonly status?: ApiJdCookieOrderJdListGetStatusEnum;

  /**
   * 开始时间
   */
  readonly startTime?: string;

  /**
   * 结束时间
   */
  readonly endTime?: string;

  /**
   * 关联的内部订单号筛选
   */
  readonly orderId?: string;
}

/**
 * Request parameters for apiJdCookieOrderJdOrderGet operation in JDOrderManagementApi.
 */
export interface JDOrderManagementApiApiJdCookieOrderJdOrderGetRequest {
  /**
   * 京东订单号
   */
  readonly jdOrderId: string;
}

/**
 * Request parameters for apiJdCookieOrderJdOrderHistoryGet operation in JDOrderManagementApi.
 */
export interface JDOrderManagementApiApiJdCookieOrderJdOrderHistoryGetRequest {
  /**
   * 京东订单号
   */
  readonly jdOrderId: string;

  /**
   * 页码
   */
  readonly page?: number;

  /**
   * 每页大小
   */
  readonly size?: number;
}

/**
 * Request parameters for apiJdCookieOrderListGet operation in JDOrderManagementApi.
 */
export interface JDOrderManagementApiApiJdCookieOrderListGetRequest {
  /**
   * 页码
   */
  readonly page?: number;

  /**
   * 每页大小
   */
  readonly size?: number;

  /**
   * 状态筛选
   */
  readonly status?: ApiJdCookieOrderListGetStatusEnum;

  /**
   * 开始时间
   */
  readonly startTime?: string;

  /**
   * 结束时间
   */
  readonly endTime?: string;
}

/**
 * Request parameters for apiJdCookieOrderPaymentUrlPost operation in JDOrderManagementApi.
 */
export interface JDOrderManagementApiApiJdCookieOrderPaymentUrlPostRequest {
  readonly kamiApiJdCookieV1GetPaymentUrlReq?: KamiApiJdCookieV1GetPaymentUrlReq;
}

/**
 * Request parameters for apiJdCookieOrderStatusGet operation in JDOrderManagementApi.
 */
export interface JDOrderManagementApiApiJdCookieOrderStatusGetRequest {
  /**
   * 订单号
   */
  readonly orderId: string;
}

/**
 * JDOrderManagementApi - object-oriented interface
 */
export class JDOrderManagementApi
  extends BaseAPI
  implements JDOrderManagementApiInterface
{
  /**
   *
   * @summary Create Order
   * @param {JDOrderManagementApiApiJdCookieOrderCreatePostRequest} requestParameters Request parameters.
   * @param {*} [options] Override http request option.
   * @throws {RequiredError}
   */
  public apiJdCookieOrderCreatePost(
    requestParameters: JDOrderManagementApiApiJdCookieOrderCreatePostRequest = {},
    options?: RawAxiosRequestConfig
  ) {
    return JDOrderManagementApiFp(this.configuration)
      .apiJdCookieOrderCreatePost(
        requestParameters.kamiApiJdCookieV1CreateOrderReq,
        options
      )
      .then(request => request(this.axios, this.basePath));
  }

  /**
   *
   * @summary Export JD Orders
   * @param {JDOrderManagementApiApiJdCookieOrderExportGetRequest} requestParameters Request parameters.
   * @param {*} [options] Override http request option.
   * @throws {RequiredError}
   */
  public apiJdCookieOrderExportGet(
    requestParameters: JDOrderManagementApiApiJdCookieOrderExportGetRequest = {},
    options?: RawAxiosRequestConfig
  ) {
    return JDOrderManagementApiFp(this.configuration)
      .apiJdCookieOrderExportGet(
        requestParameters.status,
        requestParameters.startTime,
        requestParameters.endTime,
        requestParameters.orderId,
        options
      )
      .then(request => request(this.axios, this.basePath));
  }

  /**
   *
   * @summary Get Single Order
   * @param {JDOrderManagementApiApiJdCookieOrderGetGetRequest} requestParameters Request parameters.
   * @param {*} [options] Override http request option.
   * @throws {RequiredError}
   */
  public apiJdCookieOrderGetGet(
    requestParameters: JDOrderManagementApiApiJdCookieOrderGetGetRequest,
    options?: RawAxiosRequestConfig
  ) {
    return JDOrderManagementApiFp(this.configuration)
      .apiJdCookieOrderGetGet(requestParameters.orderId, options)
      .then(request => request(this.axios, this.basePath));
  }

  /**
   *
   * @summary JD Order List Query
   * @param {JDOrderManagementApiApiJdCookieOrderJdListGetRequest} requestParameters Request parameters.
   * @param {*} [options] Override http request option.
   * @throws {RequiredError}
   */
  public apiJdCookieOrderJdListGet(
    requestParameters: JDOrderManagementApiApiJdCookieOrderJdListGetRequest = {},
    options?: RawAxiosRequestConfig
  ) {
    return JDOrderManagementApiFp(this.configuration)
      .apiJdCookieOrderJdListGet(
        requestParameters.page,
        requestParameters.size,
        requestParameters.status,
        requestParameters.startTime,
        requestParameters.endTime,
        requestParameters.orderId,
        options
      )
      .then(request => request(this.axios, this.basePath));
  }

  /**
   *
   * @summary Get Single JD Order
   * @param {JDOrderManagementApiApiJdCookieOrderJdOrderGetRequest} requestParameters Request parameters.
   * @param {*} [options] Override http request option.
   * @throws {RequiredError}
   */
  public apiJdCookieOrderJdOrderGet(
    requestParameters: JDOrderManagementApiApiJdCookieOrderJdOrderGetRequest,
    options?: RawAxiosRequestConfig
  ) {
    return JDOrderManagementApiFp(this.configuration)
      .apiJdCookieOrderJdOrderGet(requestParameters.jdOrderId, options)
      .then(request => request(this.axios, this.basePath));
  }

  /**
   *
   * @summary Get JD Order History
   * @param {JDOrderManagementApiApiJdCookieOrderJdOrderHistoryGetRequest} requestParameters Request parameters.
   * @param {*} [options] Override http request option.
   * @throws {RequiredError}
   */
  public apiJdCookieOrderJdOrderHistoryGet(
    requestParameters: JDOrderManagementApiApiJdCookieOrderJdOrderHistoryGetRequest,
    options?: RawAxiosRequestConfig
  ) {
    return JDOrderManagementApiFp(this.configuration)
      .apiJdCookieOrderJdOrderHistoryGet(
        requestParameters.jdOrderId,
        requestParameters.page,
        requestParameters.size,
        options
      )
      .then(request => request(this.axios, this.basePath));
  }

  /**
   *
   * @summary Order List Query
   * @param {JDOrderManagementApiApiJdCookieOrderListGetRequest} requestParameters Request parameters.
   * @param {*} [options] Override http request option.
   * @throws {RequiredError}
   */
  public apiJdCookieOrderListGet(
    requestParameters: JDOrderManagementApiApiJdCookieOrderListGetRequest = {},
    options?: RawAxiosRequestConfig
  ) {
    return JDOrderManagementApiFp(this.configuration)
      .apiJdCookieOrderListGet(
        requestParameters.page,
        requestParameters.size,
        requestParameters.status,
        requestParameters.startTime,
        requestParameters.endTime,
        options
      )
      .then(request => request(this.axios, this.basePath));
  }

  /**
   *
   * @summary Get Payment URL
   * @param {JDOrderManagementApiApiJdCookieOrderPaymentUrlPostRequest} requestParameters Request parameters.
   * @param {*} [options] Override http request option.
   * @throws {RequiredError}
   */
  public apiJdCookieOrderPaymentUrlPost(
    requestParameters: JDOrderManagementApiApiJdCookieOrderPaymentUrlPostRequest = {},
    options?: RawAxiosRequestConfig
  ) {
    return JDOrderManagementApiFp(this.configuration)
      .apiJdCookieOrderPaymentUrlPost(
        requestParameters.kamiApiJdCookieV1GetPaymentUrlReq,
        options
      )
      .then(request => request(this.axios, this.basePath));
  }

  /**
   *
   * @summary Query Order Status
   * @param {JDOrderManagementApiApiJdCookieOrderStatusGetRequest} requestParameters Request parameters.
   * @param {*} [options] Override http request option.
   * @throws {RequiredError}
   */
  public apiJdCookieOrderStatusGet(
    requestParameters: JDOrderManagementApiApiJdCookieOrderStatusGetRequest,
    options?: RawAxiosRequestConfig
  ) {
    return JDOrderManagementApiFp(this.configuration)
      .apiJdCookieOrderStatusGet(requestParameters.orderId, options)
      .then(request => request(this.axios, this.basePath));
  }
}

export enum ApiJdCookieOrderExportGetStatusEnum {
  NUMBER_5 = 5,
  NUMBER_6 = 6,
  NUMBER_4 = 4,
  NUMBER_2 = 2,
  NUMBER_1 = 1,
  NUMBER_3 = 3
}
export enum ApiJdCookieOrderJdListGetStatusEnum {
  NUMBER_5 = 5,
  NUMBER_6 = 6,
  NUMBER_4 = 4,
  NUMBER_2 = 2,
  NUMBER_1 = 1,
  NUMBER_3 = 3
}
export enum ApiJdCookieOrderListGetStatusEnum {
  NUMBER_4 = 4,
  NUMBER_5 = 5,
  NUMBER_0 = 0,
  NUMBER_3 = 3,
  NUMBER_6 = 6,
  NUMBER_2 = 2,
  NUMBER_1 = 1,
  NUMBER_7 = 7
}
