index.ts 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. import request from '@/config/axios'
  2. export interface JobVO {
  3. id: number
  4. name: string
  5. status: number
  6. handlerName: string
  7. handlerParam: string
  8. cronExpression: string
  9. retryCount: number
  10. retryInterval: number
  11. monitorTimeout: number
  12. createTime: Date
  13. }
  14. export interface JobPageReqVO extends PageParam {
  15. name?: string
  16. status?: number
  17. handlerName?: string
  18. }
  19. export interface JobExportReqVO {
  20. name?: string
  21. status?: number
  22. handlerName?: string
  23. }
  24. // 任务列表
  25. export const getJobPageApi = (params: JobPageReqVO) => {
  26. return request.get({ url: '/infra/job/page', params })
  27. }
  28. // 任务详情
  29. export const getJobApi = (id: number) => {
  30. return request.get({ url: '/infra/job/get?id=' + id })
  31. }
  32. // 新增任务
  33. export const createJobApi = (data: JobVO) => {
  34. return request.post({ url: '/infra/job/create', data })
  35. }
  36. // 修改定时任务调度
  37. export const updateJobApi = (data: JobVO) => {
  38. return request.put({ url: '/infra/job/update', data })
  39. }
  40. // 删除定时任务调度
  41. export const deleteJobApi = (id: number) => {
  42. return request.delete({ url: '/infra/job/delete?id=' + id })
  43. }
  44. // 导出定时任务调度
  45. export const exportJobApi = (params: JobExportReqVO) => {
  46. return request.download({ url: '/infra/job/export-excel', params })
  47. }
  48. // 任务状态修改
  49. export const updateJobStatusApi = (id: number, status: number) => {
  50. const params = {
  51. id,
  52. status
  53. }
  54. return request.put({ url: '/infra/job/update-status', params })
  55. }
  56. // 定时任务立即执行一次
  57. export const runJobApi = (id: number) => {
  58. return request.put({ url: '/infra/job/trigger?id=' + id })
  59. }
  60. // 获得定时任务的下 n 次执行时间
  61. export const getJobNextTimesApi = (id: number) => {
  62. return request.get({ url: '/infra/job/get_next_times?id=' + id })
  63. }