import request from '@/utils/request'
// 问题上报相关接口

/**
 * 简单问题上报信息分页
 * @param {object} pageRequestDto 分页参数
 * @returns 分页结果
 * @author lroyia
 * @since 2021年4月22日 10:32:56
 */
export function problemSimplePage(pageRequestDto) {
  return request({
    url: '/problem/page',
    method: 'post',
    data: pageRequestDto
  })
}

/**
 * 保存问题信息
 * @param {object} data 问题参数与信息
 * @returns  保存结果
 * @author lroyia
 * @since 2021年4月22日 10:36:13
 */
export function saveProblem(data) {
  const form = new FormData()
  for (const key in data) {
    if (!data[key]) continue
    form.append(key, data[key])
  }
  return request({
    url: '/problem/save',
    method: 'post',
    data: form
  })
}

/**
 * 上报问题（发起上报流程）
 * @param {object} data 问题信息以及上报信息
 * @returns 上报结果
 * @author lroyia
 * @since 2021年4月22日 10:39:09
 */
export function reportProblem(data) {
  const form = new FormData()
  for (const key in data) {
    if (!data[key]) continue
    form.append(key, data[key])
  }
  return request({
    url: '/problem/report',
    method: 'post',
    data: form
  })
}

/**
 * 获取问题详情
 * @param {string} id 数据id
 * @returns 获取结果
 * @author lroyia
 * @since 2021年4月25日 11:22:44
 */
export function getProblemDetail(id) {
  return request({
    url: `/problem/detail/${id}`,
    method: 'get'
  })
}
/**
 * 发起反馈流程
 * @param {string} id 数据id
 * @returns 获取结果
 * @author lroyia
 * @since 2021年4月25日 11:22:44
 */
export function createFeedbackTask(id) {
  const data = new FormData()
  data.append('problemId', id)
  return request({
    url: '/problem/createFeedbackTask',
    method: 'post',
    data
  })
}

/**
 * 下一个反馈流程
 * @param {object} form 表单数据
 * @returns  发起结果
 * @author lroyia
 * @since 2021年4月27日 14:43:26
 */
export function nextFeedbackProcess(form) {
  const data = new FormData()
  for (const key in form) {
    if (form[key]) {
      data.append(key, form[key])
    }
  }
  return request({
    url: '/problem/nextFeedbackProcess',
    method: 'post',
    data
  })
}
