import { defHttp } from '@/utils/http/axios'

export interface JobLogVO {
  id: number
  jobId: number
  handlerName: string
  handlerParam: string
  cronExpression: string
  executeIndex: string
  beginTime: string
  endTime: string
  duration: string
  status: number
  createTime: string
}

export interface JobLogPageReqVO extends PageParam {
  jobId?: number
  handlerName?: string
  beginTime?: string
  endTime?: string
  status?: number
}

export interface JobLogExportReqVO {
  jobId?: number
  handlerName?: string
  beginTime?: string
  endTime?: string
  status?: number
}

// 任务日志列表
export function getJobLogPage(params: JobLogPageReqVO) {
  return defHttp.get({ url: '/infra/job-log/page', params })
}

// 任务日志详情
export function getJobLog(id: number) {
  return defHttp.get({ url: '/infra/job-log/get?id=' + id })
}

// 导出定时任务日志
export function exportJobLog(params: JobLogExportReqVO) {
  return defHttp.download({ url: '/infra/job-log/export-excel', params }, '定时任务日志.xls')
}