import fetch from '@/utils/fetch'

/**
 * 【增】 - 资源类型
 *
 * @param {Object} data
 * @returns
 */
export const createResourceClassifyApi = (data) =>
  fetch({ url: 'resource/classify', method: 'post', data })
/**
 * 【查】 - 共享资源评论区
 *
 * @param {Object} data
 * @returns
 */
export const pagingDis = (params) =>
  fetch({ url: 'resource/pagingDis', method: 'get', params })
/**
 * 【增】 - 共享资源评论区评论
 *
 * @param {Object} data
 * @returns
 */
export const submitDisAPI = (data) =>
  fetch({ url: 'resource/discussion', method: 'post', data })
/**
 * 【删】 - 删除共享资源评论区
 *
 * @param {number} id
 * @returns
 */
export const deleteDisAPI = (id) =>
  fetch({ url: 'resource/discussion/' + id, method: 'delete' })

/**
 * 【增】 - 资源文件
 *
 * @param {Array} data 文件夹名
 * @returns
 */
export const createResourceApi = (data) =>
  fetch({ url: 'resource/createResource', method: 'post', data })

/**
 * 【增】 - 资源文件夹
 *
 * @param {string} name 文件夹名
 * @returns
 */
export const createFolderApi = (data) =>
  fetch({ url: 'resource/createFolder', method: 'post', data })

/**
 * 【删】 - 资源类型
 *
 * @param {number} id
 * @returns
 */
export const deleteResourceClassifyApi = (id) =>
  fetch({ url: 'resource/classify/' + id, method: 'delete' })

/**
 * 【改】 - 资源类型
 *
 * @param {Object} data
 * @returns
 */
export const updateResourceClassifyApi = ({ id, ...data }) =>
  fetch({ url: 'resource/classify/' + id, method: 'patch', data })

/**
 * 【查】 - 资源类型
 *
 * @returns
 */
export const findAllResourceClassifyApi = () =>
  fetch({ url: 'resource/classify', method: 'get' })

/**
 * 【查】 - 所有资源
 *
 * @returns
 */
export const findAllResourceApi = (params) =>
  fetch({ url: 'resource', method: 'get', params })

/**
 * 【查】 - 资源信息
 *
 * @returns
 */
export const findResourceApi = (id) =>
  fetch({ url: 'resource/findOne/' + id, method: 'get' })

/**
 * 【查】 - 资源文件夹
 *
 * @returns
 */
export const findAllFolderApi = () =>
  fetch({ url: 'resource/findAllFolder', method: 'get' })

/**
 * 【改】 - 资源名称
 *
 * @param {Object} data
 * @returns
 */
export const updateResourceNameApi = (id, name) =>
  fetch({ url: 'resource/rename/' + id, method: 'patch', data: { name } })

/**
 * 【改】 - 资源-资源类型
 *
 * @param {Object} data
 * @returns
 */
export const updateResourceClassifyIdsApi = (ids, classifyIds) =>
  fetch({
    url: 'resource/updateClassify',
    method: 'patch',
    data: { ids, classifyIds: classifyIds.toString(), classifyId: classifyIds[classifyIds.length - 1] }
  })

/**
 * 【改】 - 资源路径
 *
 * @param {Object} data
 * @returns
 */
export const updateResourcePathApi = (ids, path) =>
  fetch({ url: 'resource/updatePath', method: 'patch', data: { ids, path } })

/**
 * 【删】 - 资源
 *
 * @param {number} id
 * @returns
 */
export const deleteResourceApi = (id) =>
  fetch({ url: 'resource/' + id, method: 'delete' })

/**
 * 【改】 - 文件转换
 *
 * @returns
 */
export const fileConverApi = (id) =>
  fetch({ url: 'resource/fileConver/' + id, timeout: 0, method: 'patch' })
