// @ts-ignore
/* eslint-disable */
import request from "../request";

/** 创建公司付款账户 POST /operation/createCompanyPaymentAccount */
export async function createCompanyPaymentAccount(
  body: BusinessAPI.CompanyPaymentAccountCreateCmd,
  options?: { [key: string]: any },
) {
  return request<BusinessAPI.SingleResponseCompanyPaymentAccountVO>(
    "/operation/createCompanyPaymentAccount",
    {
      method: "POST",
      headers: {
        "Content-Type": "application/json",
      },
      data: body,
      ...(options || {}),
    },
  );
}

/** 公司付款账户删除 DELETE /operation/destroyCompanyPaymentAccount */
export async function destroyCompanyPaymentAccount(
  body: BusinessAPI.CompanyPaymentAccountDestroyCmd,
  options?: { [key: string]: any },
) {
  return request<BusinessAPI.Response>(
    "/operation/destroyCompanyPaymentAccount",
    {
      method: "DELETE",
      headers: {
        "Content-Type": "application/json",
      },
      data: body,
      ...(options || {}),
    },
  );
}

/** 公司付款账户列表 GET /operation/listCompanyPaymentAccount */
export async function listCompanyPaymentAccount(
  // 叠加生成的Param类型 (非body参数swagger默认没有生成对象)
  params: BusinessAPI.listCompanyPaymentAccountParams,
  options?: { [key: string]: any },
) {
  return request<BusinessAPI.MultiResponseCompanyPaymentAccountVO>(
    "/operation/listCompanyPaymentAccount",
    {
      method: "GET",
      params: {
        ...params,
        companyPaymentAccountListQry: undefined,
        ...params["companyPaymentAccountListQry"],
      },
      ...(options || {}),
    },
  );
}

/** 公司付款账户列表 GET /operation/pageCompanyPaymentAccount */
export async function pageCompanyPaymentAccount(
  // 叠加生成的Param类型 (非body参数swagger默认没有生成对象)
  params: BusinessAPI.pageCompanyPaymentAccountParams,
  options?: { [key: string]: any },
) {
  return request<BusinessAPI.PageResponseCompanyPaymentAccountVO>(
    "/operation/pageCompanyPaymentAccount",
    {
      method: "GET",
      params: {
        ...params,
        companyPaymentAccountPageQry: undefined,
        ...params["companyPaymentAccountPageQry"],
      },
      ...(options || {}),
    },
  );
}

/** 公司付款账户详情 GET /operation/showCompanyPaymentAccount */
export async function showCompanyPaymentAccount(
  // 叠加生成的Param类型 (非body参数swagger默认没有生成对象)
  params: BusinessAPI.showCompanyPaymentAccountParams,
  options?: { [key: string]: any },
) {
  return request<BusinessAPI.SingleResponseCompanyPaymentAccountVO>(
    "/operation/showCompanyPaymentAccount",
    {
      method: "GET",
      params: {
        ...params,
        companyPaymentAccountShowQry: undefined,
        ...params["companyPaymentAccountShowQry"],
      },
      ...(options || {}),
    },
  );
}

/** 公司付款账户更新 PUT /operation/updateCompanyPaymentAccount */
export async function updateCompanyPaymentAccount(
  body: BusinessAPI.CompanyPaymentAccountUpdateCmd,
  options?: { [key: string]: any },
) {
  return request<BusinessAPI.SingleResponseCompanyPaymentAccountVO>(
    "/operation/updateCompanyPaymentAccount",
    {
      method: "PUT",
      headers: {
        "Content-Type": "application/json",
      },
      data: body,
      ...(options || {}),
    },
  );
}

/** 公司付款账户更新 PATCH /operation/updateCompanyPaymentAccount */
export async function updateCompanyPaymentAccount1(
  body: BusinessAPI.CompanyPaymentAccountUpdateCmd,
  options?: { [key: string]: any },
) {
  return request<BusinessAPI.SingleResponseCompanyPaymentAccountVO>(
    "/operation/updateCompanyPaymentAccount",
    {
      method: "PATCH",
      headers: {
        "Content-Type": "application/json",
      },
      data: body,
      ...(options || {}),
    },
  );
}
