// @ts-ignore
/* eslint-disable */
import request from '@/request/http'

/** 修改 修改UpdateVO中不为空的字段 PUT /baseEmployee */
export async function update6(body: API.BaseEmployeeUpdateVO, options?: { [key: string]: any }) {
  return request<API.RBaseEmployee>(`/base/baseEmployee`, {
    method: 'PUT',
    headers: {
      'Content-Type': 'application/json'
    },
    data: body,
    ...(options || {})
  })
}

/** 新增 POST /baseEmployee */
export async function save6(body: API.BaseEmployeeSaveVO, options?: { [key: string]: any }) {
  return request<API.RBaseEmployee>(`/base/baseEmployee`, {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json'
    },
    data: body,
    ...(options || {})
  })
}

/** 删除 DELETE /baseEmployee */
export async function delete7(body: number[], options?: { [key: string]: any }) {
  return request<API.RBoolean>(`/base/baseEmployee`, {
    method: 'DELETE',
    headers: {
      'Content-Type': 'application/json'
    },
    data: body,
    ...(options || {})
  })
}

/** 单体查询 单体查询 GET /baseEmployee/${param0} */
export async function get7(
  // 叠加生成的Param类型 (非body参数swagger默认没有生成对象)
  params: API.get7Params,
  options?: { [key: string]: any }
) {
  const { id: param0, ...queryParams } = params
  return request<API.RBaseEmployeeResultVO>(`/base/baseEmployee/${param0}`, {
    method: 'GET',
    params: { ...queryParams },
    ...(options || {})
  })
}

/** 运营者将用户设置为某个租户的租户管理员 POST /baseEmployee/bindTenantAdmin */
export async function bindTenantAdmin(
  body: API.DefTenantBindUserVO,
  options?: { [key: string]: any }
) {
  return request<API.RBoolean>(`/base/baseEmployee/bindTenantAdmin`, {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json'
    },
    data: body,
    ...(options || {})
  })
}

/** 运营者将非该企业的用户，添加进企业使其成为员工并设置为租户管理员 POST /baseEmployee/bindUser */
export async function bindUser(body: API.DefTenantBindUserVO, options?: { [key: string]: any }) {
  return request<API.RBoolean>(`/base/baseEmployee/bindUser`, {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json'
    },
    data: body,
    ...(options || {})
  })
}

/** 查询租户员工数量限制是否上限 GET /baseEmployee/checkLimitByTenantId */
export async function checkLimitByTenantId(
  // 叠加生成的Param类型 (非body参数swagger默认没有生成对象)
  params: API.checkLimitByTenantIdParams,
  options?: { [key: string]: any }
) {
  return request<API.RBoolean>(`/base/baseEmployee/checkLimitByTenantId`, {
    method: 'GET',
    params: {
      ...params
    },
    ...(options || {})
  })
}

/** 清理缓存 清理缓存 POST /baseEmployee/clearCache */
export async function clearCache2(body: number[], options?: { [key: string]: any }) {
  return request<API.RBoolean>(`/base/baseEmployee/clearCache`, {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json'
    },
    data: body,
    ...(options || {})
  })
}

/** 复制 POST /baseEmployee/copy */
export async function copy6(
  // 叠加生成的Param类型 (非body参数swagger默认没有生成对象)
  params: API.copy6Params,
  options?: { [key: string]: any }
) {
  return request<API.RBaseEmployee>(`/base/baseEmployee/copy`, {
    method: 'POST',
    params: {
      ...params
    },
    ...(options || {})
  })
}

/** 查询单体详情 GET /baseEmployee/detail */
export async function getDetail7(
  // 叠加生成的Param类型 (非body参数swagger默认没有生成对象)
  params: API.getDetail7Params,
  options?: { [key: string]: any }
) {
  return request<API.RBaseEmployeeResultVO>(`/base/baseEmployee/detail`, {
    method: 'GET',
    params: {
      ...params
    },
    ...(options || {})
  })
}

/** 给员工分配角色 给员工分配角色 POST /baseEmployee/employeeRole */
export async function saveEmployeeRole(
  body: API.BaseEmployeeRoleRelSaveVO,
  options?: { [key: string]: any }
) {
  return request<API.RListLong>(`/base/baseEmployee/employeeRole`, {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json'
    },
    data: body,
    ...(options || {})
  })
}

/** 根据Id批量查询 根据Id批量查询 POST /baseEmployee/findByIds */
export async function findByIds7(body: number[], options?: { [key: string]: any }) {
  return request<API.RListBaseEmployeeResultVO>(`/base/baseEmployee/findByIds`, {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json'
    },
    data: body,
    ...(options || {})
  })
}

/** 查询员工的角色 GET /baseEmployee/findEmployeeRoleByEmployeeId */
export async function findEmployeeRoleByEmployeeId(
  // 叠加生成的Param类型 (非body参数swagger默认没有生成对象)
  params: API.findEmployeeRoleByEmployeeIdParams,
  options?: { [key: string]: any }
) {
  return request<API.RListLong>(`/base/baseEmployee/findEmployeeRoleByEmployeeId`, {
    method: 'GET',
    params: {
      ...params
    },
    ...(options || {})
  })
}

/** 租户管理员邀请用户进入企业 POST /baseEmployee/invitationUser */
export async function invitationUser(
  body: API.DefTenantBindUserVO,
  options?: { [key: string]: any }
) {
  return request<API.RBoolean>(`/base/baseEmployee/invitationUser`, {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json'
    },
    data: body,
    ...(options || {})
  })
}

/** 查询同部门下所有员工 查询同部门下所有员工 POST /baseEmployee/orgRoleRel */
export async function getBaseEmployeeByOrgId(
  // 叠加生成的Param类型 (非body参数swagger默认没有生成对象)
  params: API.getBaseEmployeeByOrgIdParams,
  options?: { [key: string]: any }
) {
  return request<API.RListBaseIdNameResultVO>(`/base/baseEmployee/orgRoleRel`, {
    method: 'POST',
    params: {
      ...params
    },
    ...(options || {})
  })
}

/** 分页列表查询 POST /baseEmployee/page */
export async function page7(
  body: API.PageParamsBaseEmployeePageQuery,
  options?: { [key: string]: any }
) {
  return request<API.RIPageBaseEmployeeResultVO>(`/base/baseEmployee/page`, {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json'
    },
    data: body,
    ...(options || {})
  })
}

/** 批量查询 批量查询 POST /baseEmployee/query */
export async function query7(body: API.BaseEmployeePageQuery, options?: { [key: string]: any }) {
  return request<API.RListBaseEmployeeResultVO>(`/base/baseEmployee/query`, {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json'
    },
    data: body,
    ...(options || {})
  })
}

/** 刷新缓存 刷新缓存 POST /baseEmployee/refreshCache */
export async function refreshCache2(body: number[], options?: { [key: string]: any }) {
  return request<API.RBoolean>(`/base/baseEmployee/refreshCache`, {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json'
    },
    data: body,
    ...(options || {})
  })
}
