/* eslint-disable */
// @ts-ignore
import request from '@/http/vue-query';
import type { CustomRequestOptions } from '@/http/types';

import * as API from './types';

/** 新增菜谱 POST /app/merchantRecipe/add */
export async function appMerchantRecipeAddPost({
  body,
  options,
}: {
  body: API.MerchantRecipeBo;
  options?: CustomRequestOptions;
}) {
  return request<API.R>('/app/merchantRecipe/add', {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json',
    },
    data: body,
    ...(options || {}),
  });
}

/** 增加菜谱浏览量 POST /app/merchantRecipe/addViewCount */
export async function appMerchantRecipeAddViewCountPost({
  params,
  options,
}: {
  // 叠加生成的Param类型 (非body参数openapi默认没有生成对象)
  params: API.AppMerchantRecipeAddViewCountPostParams;
  options?: CustomRequestOptions;
}) {
  return request<API.R>('/app/merchantRecipe/addViewCount', {
    method: 'POST',
    params: {
      ...params,
    },
    ...(options || {}),
  });
}

/** 查询菜谱详情 POST /app/merchantRecipe/recipeDetail */
export async function appMerchantRecipeRecipeDetailPost({
  params,
  options,
}: {
  // 叠加生成的Param类型 (非body参数openapi默认没有生成对象)
  params: API.AppMerchantRecipeRecipeDetailPostParams;
  options?: CustomRequestOptions;
}) {
  return request<API.RMerchantRecipeVo>('/app/merchantRecipe/recipeDetail', {
    method: 'POST',
    params: {
      ...params,
    },
    ...(options || {}),
  });
}

/** 商家查询菜谱列表 POST /app/merchantRecipe/recipeList */
export async function appMerchantRecipeRecipeListPost({
  params,
  body,
  options,
}: {
  // 叠加生成的Param类型 (非body参数openapi默认没有生成对象)
  params: API.AppMerchantRecipeRecipeListPostParams;
  body: API.SearchRecipeBo;
  options?: CustomRequestOptions;
}) {
  return request<API.TableDataInfoMerchantRecipeVo>(
    '/app/merchantRecipe/recipeList',
    {
      method: 'POST',
      headers: {
        'Content-Type': 'application/json',
      },
      params: {
        ...params,
      },
      data: body,
      ...(options || {}),
    }
  );
}

/** 批量删除菜谱 POST /app/merchantRecipe/remove */
export async function appMerchantRecipeRemovePost({
  body,
  options,
}: {
  body: API.AppMerchantRecipeRemovePostBody;
  options?: CustomRequestOptions;
}) {
  return request<API.R>('/app/merchantRecipe/remove', {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json',
    },
    data: body,
    ...(options || {}),
  });
}

/** 用户端搜索菜谱 POST /app/merchantRecipe/searchRecipe */
export async function appMerchantRecipeSearchRecipePost({
  params,
  body,
  options,
}: {
  // 叠加生成的Param类型 (非body参数openapi默认没有生成对象)
  params: API.AppMerchantRecipeSearchRecipePostParams;
  body: API.SearchRecipeBo;
  options?: CustomRequestOptions;
}) {
  return request<API.TableDataInfoMerchantRecipeVo>(
    '/app/merchantRecipe/searchRecipe',
    {
      method: 'POST',
      headers: {
        'Content-Type': 'application/json',
      },
      params: {
        ...params,
      },
      data: body,
      ...(options || {}),
    }
  );
}

/** 修改菜谱 POST /app/merchantRecipe/update */
export async function appMerchantRecipeUpdatePost({
  body,
  options,
}: {
  body: API.MerchantRecipeBo;
  options?: CustomRequestOptions;
}) {
  return request<API.R>('/app/merchantRecipe/update', {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json',
    },
    data: body,
    ...(options || {}),
  });
}

/** 获取商家菜谱详细信息 GET /xjpmj/merchantRecipe/${param0} */
export async function xjpmjMerchantRecipeIdGet({
  params,
  options,
}: {
  // 叠加生成的Param类型 (非body参数openapi默认没有生成对象)
  params: API.XjpmjMerchantRecipeidGetParams;
  options?: CustomRequestOptions;
}) {
  const { id: param0, ...queryParams } = params;

  return request<API.RMerchantRecipeVo>(`/xjpmj/merchantRecipe/${param0}`, {
    method: 'GET',
    params: { ...queryParams },
    ...(options || {}),
  });
}

/** 删除商家菜谱 DELETE /xjpmj/merchantRecipe/${param0} */
export async function xjpmjMerchantRecipeIdsDelete({
  params,
  options,
}: {
  // 叠加生成的Param类型 (非body参数openapi默认没有生成对象)
  params: API.XjpmjMerchantRecipeidsDeleteParams;
  options?: CustomRequestOptions;
}) {
  const { ids: param0, ...queryParams } = params;

  return request<API.RVoid>(`/xjpmj/merchantRecipe/${param0}`, {
    method: 'DELETE',
    params: { ...queryParams },
    ...(options || {}),
  });
}

/** 导出商家菜谱列表 POST /xjpmj/merchantRecipe/export */
export async function xjpmjMerchantRecipeExportPost({
  params,
  options,
}: {
  // 叠加生成的Param类型 (非body参数openapi默认没有生成对象)
  params: API.XjpmjMerchantRecipeExportPostParams;
  options?: CustomRequestOptions;
}) {
  return request<API.XjpmjMerchantRecipeExportPostResponse>(
    '/xjpmj/merchantRecipe/export',
    {
      method: 'POST',
      params: {
        ...params,
      },
      ...(options || {}),
    }
  );
}

/** 查询商家菜谱列表 POST /xjpmj/merchantRecipe/list */
export async function xjpmjMerchantRecipeListPost({
  params,
  body,
  options,
}: {
  // 叠加生成的Param类型 (非body参数openapi默认没有生成对象)
  params: API.XjpmjMerchantRecipeListPostParams;
  body: API.MerchantRecipeBo;
  options?: CustomRequestOptions;
}) {
  return request<API.TableDataInfoMerchantRecipeVo>(
    '/xjpmj/merchantRecipe/list',
    {
      method: 'POST',
      headers: {
        'Content-Type': 'application/json',
      },
      params: {
        ...params,
      },
      data: body,
      ...(options || {}),
    }
  );
}
