import { defAxios as request } from '@/utils/http'

/**
 * @description: 创建任务
 * @param {*} id 任务id
 * @return {*}
 */
export function createTask(data) {
  return request({
    url: '/mission',
    method: 'POST',
    data
  })
}

/**
 * @description: 获取任务列表
 * @param {*} params
 * @return {*}
 */
export function getTaskList(params) {
  return request({
    url: '/mission/page',
    method: 'GET',
    params
  })
}
/**
 * @description: 获取任务详情
 * @param {*} id 任务id
 * @return {*}
 */
export function getTaskDetail(id) {
  return request({
    url: `/mission/${id}`,
    method: 'GET'
  })
}
/**
 * @description: 删除任务
 * @param {*} id 任务id
 * @return {*}
 */
export function taskDelete(id) {
  return request({
    url: `/mission/${id}`,
    method: 'DELETE'
  })
}

/**
 * @description: 立即执行
 * @param {*} id 任务id
 * @return {*}
 */
export function implement(id) {
  return request({
    url: `/inspection/mission/${id}`,
    method: 'PUT'
  })
}

/**
 * @description: 获取问题列表
 * @param {*} id 任务id
 * @return {*}
 */
export function getQuestionList(params) {
  return request({
    url: '/question/page',
    method: 'GET',
    params
  })
}

/**
 * @description: 获取飞行轨迹列表
 * @param {*} id 任务id
 * @return {*}
 */
export function getTrackList(id) {
  return request({
    url: `/inspection/track/${id}`,
    method: 'GET'
  })
}
/**
 * @description: 获取航线列表
 * @param {*} id 任务id
 * @return {*}
 */
export function getLineList(id) {
  return request({
    url: `/inspection/line/track/${id}`,
    method: 'GET'
  })
}
/**
 * @description: 获取问题列表
 * @param {*} params
 * @return {*}
 */
export function getDistributed(params) {
  return request({
    url: '/question/distributed',
    method: 'GET',
    params
  })
}
/**
 * @description: 获取问题类型
 * @return {*}
 */
export function getQuestionType(params) {
  return request({
    url: '/question/type',
    method: 'GET',
    params
  })
}

/**
 * @description: 问题确认/忽略
 * @param {*} data
 * @return {*}
 */
export function changeQuestionStatus(data) {
  return request({
    url: '/question/status',
    method: 'PUT',
    data
  })
}
/**
 * @description: 生成报告
 * @param {*} 任务id
 * @return {*}
 */
export function generateReport(id) {
  return request({
    url: `/report/generate/${id}`,
    method: 'POST'
  })
}

export function questionAnalyze(id) {
  return request({
    url: `/question/analyze/${id}`,
    method: 'GET'
  })
}

/**
 * 新的接口
 * 获取问题列表（限制200条）
 * @param {startTime} 开始时间
 * @param {endTime} 结束时间
 */
export function getQuestions(params) {
  return request({
    url: '/index/getQuestionList',
    method: 'POST',
    params
  })
}
