JobInfoController.java 3.1 KB

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