import request from '@/utils/request'
import requestFile from '@/utils/requestfile'
import qs from 'qs'

/**
 * ids []
 * 删除课时
 */
export function onlineTraining(data) {
  return request({
    url: 'api/onlineTraining',
    method: 'DELETE',
    data
  })
}

/**
 * pid 课程id
 * 查询课时
 */
export function findLesson(params) {
  return request({
    url: 'api/onlineTraining/findLesson',
    method: 'GET',
    params
  })
}

/**
 * categoryId 分类Id
 * courseEndCreateTime 课程截止创建时间 格式: yyyy-MM-dd HH:mm:ss
 * courseStartCreateTime 课程起始创建时间 格式: yyyy-MM-dd HH:mm:ss
 * courseStatus 课程状态[已发布|已关闭]
 * courseTeacher 创建人
 * courseTitle 课程标题
 * page 页码(0...N)
 * size 每页显示的数目
 * sort
 * 查询课程
 */
export function findCourse(params) {
  return request({
    url: 'api/onlineTraining/pageCourse',
    method: 'GET',
    params
  })
}

/**
 * categoryId 分类Id
 * courseBriefIntroductoin 课程简介
 * courseCoverFile 课程封面文件
 * courseStatus 课程状态[已发布|已关闭] 默认已关闭
 * courseSubTitle 课程副标题
 * courseTitle 课程标题
 * 创建课程
 */
export function createCourse(data, updateFunc) {
  return requestFile({
    url: 'api/onlineTraining/saveCourse',
    method: 'POST',
    onUploadProgress: updateFunc,
    data
  })
}

/**
 * lessonDuration 课程时长
 * lessonFile 课程文件
 * lessonTitle 课时标题
 * pid 课程id
 * 创建课时
 */
export function createLesson(data, updateFunc) {
  return requestFile({
    url: 'api/onlineTraining/saveLesson',
    method: 'POST',
    onUploadProgress: updateFunc,
    data
  })
}

/**
 * categoryId 分类Id
 * courseBriefIntroduction 课程简介
 * courseCoverFile 课程封面文件 修改封面文件时传该参数，否则不传
 * courseStatus 课程状态[已发布|已关闭]
 * courseSubTitle 课程副标题
 * courseTitle 课程标题
 * id
 * 修改课程
 */
export function updateCourse(data, updateFunc) {
  return requestFile({
    url: 'api/onlineTraining/updateCourse',
    method: 'POST',
    onUploadProgress: updateFunc,
    data
  })
}

/**
 * id
 * lessonDuration 课程时长
 * lessonFile 课程文件
 * lessonTitle 课时标题
 * pid 课程id
 * 修改课时
 */
export function updateLesson(data, updateFunc) {
  return requestFile({
    url: 'api/onlineTraining/updateLesson',
    method: 'POST',
    onUploadProgress: updateFunc,
    data
  })
}
