1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- package com.persagy.service.impl;
- import com.persagy.service.AlarmQuartzService;
- import lombok.extern.slf4j.Slf4j;
- import org.quartz.Scheduler;
- import org.quartz.SchedulerException;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.beans.factory.annotation.Qualifier;
- import org.springframework.stereotype.Service;
- /**
- * @description:报警定时任务服务
- * @author:LuoGuanhyi
- * @company:PersagyTechnologyCo.,Ltd
- * @since:2020/9/18 001820:11
- * @version:V1.0
- **/
- @Slf4j
- @Service
- public class AlarmQuartzServiceImpl implements AlarmQuartzService {
- @Autowired
- @Qualifier("quartzScheduler")
- Scheduler quartzScheduler;
- /**
- * 添加定时器
- * @param startTime 添加报警恢复定时任务
- * @param jobName job名称
- * @param jobGroupName job分组
- * @param jobDataMap 触发器的数据(任务相关的数据都放在这里)
- * @return
- * @throws SchedulerException
- */
- // @Override
- // public synchronized String addCommand(Date startTime, String jobName, String jobGroupName, JobDataMap jobDataMap) throws SchedulerException {
- // if(startTime.before(new Date())){
- //// log.info("执行时间【{}】为历史时间,自动跳过",DateUtils.formatDate(startTime));
- // return "2";
- // }
- // JobKey jobKey = new JobKey(jobName, jobGroupName);
- // JobDetail jobDetail = JobBuilder.newJob(AlarmE.class).withIdentity(jobName, jobGroupName).build();
- // Trigger trigger = TriggerBuilder.newTrigger().startAt(startTime)
- // .withIdentity("trigger_" + jobName , jobName)
- // .usingJobData(jobDataMap)
- // .withSchedule(simpleSchedule().withMisfireHandlingInstructionIgnoreMisfires()).build();
- // //已经存在的job实例和触发器自动覆盖 job实 例 唯 一标识:
- // HashSet<Trigger> triggerSet = new HashSet<Trigger>();
- // Date fireTime = trigger.getFireTimeAfter(new Date());
- // if(fireTime != null){
- // log.info("执行时间为:【{}】,设置时间为【{}】",DateUtils.formatDate(fireTime),DateUtils.formatDate(startTime));
- // }else {
- // log.info("执行时间为 空!");
- // }
- // triggerSet.add(trigger);
- // quartzScheduler.scheduleJob(jobDetail, triggerSet, true);
- //
- // return "success";
- // }
- }
|