e29af177b0312c564e64bca8abed3ead9bf8ed89.svn-base 3.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. //package cn.com.goldenwater.dcproj.task;
  2. //
  3. //import cn.com.goldenwater.dcproj.model.BisInspTaskScheduler;
  4. //import cn.com.goldenwater.dcproj.utils.TaskSchedulerFactory;
  5. //import cn.com.goldenwater.dcproj.utils.TaskUtils;
  6. //import org.quartz.*;
  7. //import org.springframework.stereotype.Service;
  8. //import org.springframework.transaction.annotation.Transactional;
  9. //
  10. //import javax.annotation.Resource;
  11. //
  12. ///**
  13. // * @author lhc
  14. // * @date 2020/10/12 9:03
  15. // */
  16. //
  17. //@Service
  18. //public class TaskCronJobService {
  19. // @Resource
  20. // private TaskSchedulerFactory schedulerFactory;
  21. //
  22. // /** 在对任务进行保存时需同步更新调度器中的定时任务配置 */
  23. // @Transactional
  24. // public void save(BisInspTaskScheduler taskCronJob) {
  25. // try {
  26. // BisInspTaskScheduler job = new BisInspTaskScheduler();
  27. // TriggerKey triggerKey = TaskUtils.genCronTriggerKey(job);
  28. // Scheduler scheduler = schedulerFactory.getScheduler();
  29. // JobKey jobKey = TaskUtils.genCronJobKey(job);
  30. // // 如果不同则代表着CRON表达式已经修改
  31. // if (!job.getTaskSchedule().equals(taskCronJob.getTaskSchedule())) {
  32. // CronTrigger newTrigger = TriggerBuilder.newTrigger().withIdentity(triggerKey).forJob(jobKey)
  33. // .withSchedule(CronScheduleBuilder.cronSchedule(taskCronJob.getTaskSchedule()).withMisfireHandlingInstructionDoNothing()).build();
  34. // // 更新任务
  35. // scheduler.rescheduleJob(triggerKey, newTrigger);
  36. // }
  37. // if (!job.getTaskStatus().equals(taskCronJob.getTaskStatus())) {
  38. // // 如果状态为0则停止该任务
  39. // if (!taskCronJob.getTaskStatus()) {
  40. // scheduler.unscheduleJob(triggerKey);
  41. //
  42. // scheduler.pauseJob(jobKey);
  43. // scheduler.deleteJob(jobKey);
  44. //
  45. // } else {
  46. // Trigger trigger = scheduler.getTrigger(triggerKey);
  47. // // trigger如果为null则说明scheduler中并没有创建该任务
  48. // if (trigger == null) {
  49. // Class<?> jobClass = Class.forName(job.getTaskClass().trim());
  50. // @SuppressWarnings("unchecked")
  51. // JobDetail jobDetail = JobBuilder.newJob((Class<? extends Job>) jobClass).withIdentity(jobKey)
  52. // .withDescription(job.getTaskName()).build();
  53. // trigger = TriggerBuilder.newTrigger().withIdentity(triggerKey).forJob(jobKey)
  54. // .withSchedule(CronScheduleBuilder.cronSchedule(taskCronJob.getTaskSchedule()).withMisfireHandlingInstructionDoNothing())
  55. // .build();
  56. //
  57. // scheduler.scheduleJob(jobDetail, trigger);
  58. // } else {
  59. // // 不为null则说明scheduler中有创建该任务,更新即可
  60. // CronTrigger newTrigger = TriggerBuilder.newTrigger().withIdentity(triggerKey).forJob(jobKey)
  61. // .withSchedule(CronScheduleBuilder.cronSchedule(taskCronJob.getTaskSchedule()).withMisfireHandlingInstructionDoNothing())
  62. // .build();
  63. // scheduler.rescheduleJob(triggerKey, newTrigger);
  64. // }
  65. // }
  66. // }
  67. // job.setTaskSchedule(taskCronJob.getTaskSchedule());
  68. // job.setTaskStatus(taskCronJob.getTaskStatus());
  69. // } catch (Exception e) {
  70. // log.error("定时任务刷新失败...");
  71. // log.error(e.getMessage());
  72. // }
  73. // }
  74. //
  75. //
  76. //}