JobInfoController.java 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. package com.xxl.job.admin.controller;
  2. import com.xxl.job.admin.core.model.XxlJobGroup;
  3. import com.xxl.job.admin.core.model.XxlJobInfo;
  4. import com.xxl.job.admin.core.route.ExecutorRouteStrategyEnum;
  5. import com.xxl.job.admin.dao.IXxlJobGroupDao;
  6. import com.xxl.job.admin.service.IXxlJobService;
  7. import com.xxl.job.core.biz.model.ReturnT;
  8. import com.xxl.job.core.glue.GlueTypeEnum;
  9. import org.springframework.stereotype.Controller;
  10. import org.springframework.ui.Model;
  11. import org.springframework.web.bind.annotation.RequestMapping;
  12. import org.springframework.web.bind.annotation.RequestParam;
  13. import org.springframework.web.bind.annotation.ResponseBody;
  14. import javax.annotation.Resource;
  15. import java.util.List;
  16. import java.util.Map;
  17. /**
  18. * index controller
  19. * @author xuxueli 2015-12-19 16:13:16
  20. */
  21. @Controller
  22. @RequestMapping("/jobinfo")
  23. public class JobInfoController {
  24. @Resource
  25. private IXxlJobGroupDao xxlJobGroupDao;
  26. @Resource
  27. private IXxlJobService xxlJobService;
  28. @RequestMapping
  29. public String index(Model model) {
  30. // 路由策略-列表
  31. model.addAttribute("ExecutorRouteStrategyEnum", ExecutorRouteStrategyEnum.values());
  32. // Glue类型-字典
  33. model.addAttribute("GlueTypeEnum", GlueTypeEnum.values());
  34. // 任务组
  35. List<XxlJobGroup> jobGroupList = xxlJobGroupDao.findAll();
  36. model.addAttribute("JobGroupList", jobGroupList);
  37. return "jobinfo/jobinfo.index";
  38. }
  39. @RequestMapping("/pageList")
  40. @ResponseBody
  41. public Map<String, Object> pageList(@RequestParam(required = false, defaultValue = "0") int start,
  42. @RequestParam(required = false, defaultValue = "10") int length,
  43. int jobGroup, String executorHandler, String filterTime) {
  44. return xxlJobService.pageList(start, length, jobGroup, executorHandler, filterTime);
  45. }
  46. @RequestMapping("/add")
  47. @ResponseBody
  48. public ReturnT<String> add(XxlJobInfo jobInfo) {
  49. return xxlJobService.add(jobInfo);
  50. }
  51. @RequestMapping("/reschedule")
  52. @ResponseBody
  53. public ReturnT<String> reschedule(XxlJobInfo jobInfo) {
  54. return xxlJobService.reschedule(jobInfo);
  55. }
  56. @RequestMapping("/remove")
  57. @ResponseBody
  58. public ReturnT<String> remove(int id) {
  59. return xxlJobService.remove(id);
  60. }
  61. @RequestMapping("/pause")
  62. @ResponseBody
  63. public ReturnT<String> pause(int id) {
  64. return xxlJobService.pause(id);
  65. }
  66. @RequestMapping("/resume")
  67. @ResponseBody
  68. public ReturnT<String> resume(int id) {
  69. return xxlJobService.resume(id);
  70. }
  71. @RequestMapping("/trigger")
  72. @ResponseBody
  73. public ReturnT<String> triggerJob(int id) {
  74. return xxlJobService.triggerJob(id);
  75. }
  76. }