JobInfoController.java 2.9 KB

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