/**
 * 
 */
package com.huatek.busi.service.job;

import java.util.List;
import java.util.Map;

import com.huatek.busi.dto.ScheduleJobDto;
import com.huatek.busi.entity.ScheduleJob;

/**
  * @ClassName: ScheduleJobService
  * @FullClassPath: com.huatek.busi.service.job.ScheduleJobService
  * @Description: 定时任务服务
  * @author: Arno
  * @date: Jul 3, 2019 2:34:17 PM
  * @version: 1.0
  */

public interface ScheduleJobService {

	/** 
	* @Title: findAll 
	* @Description: 获取全部任务 
	* @createDate: Jul 3, 2019 2:36:07 PM
	* @param   
	* @return   List<ScheduleJob>    
	* @throws 
	*/ 
	List<ScheduleJob> findAll();
	
	
	/**
	 * 分页获取定时任务
	 */
	Map<String, Object> findScheduleJobPage(ScheduleJobDto scheduleJob);
	/** 
	* @Title: insertScheduleJob 
	* @Description: 插入任务 
	* @createDate: Jul 4, 2019 1:26:29 PM
	* @param   
	* @return   ScheduleJob    
	* @throws 
	*/ 
	Boolean insertScheduleJob(ScheduleJobDto scheduleJob);
	
	
	/** 
	* @Title: updateScheduleJob 
	* @Description: 更新任务 
	* @createDate: Jul 4, 2019 1:26:29 PM
	* @param   
	* @return   ScheduleJob    
	* @throws 
	*/ 
	Boolean updateScheduleJob(ScheduleJobDto scheduleJob);
	
	
	/** 
	* @Title: deleteBatch 
	* @Description: 批量删除任务 
	* @createDate: Jul 4, 2019 1:26:29 PM
	* @param    pks  主键集合
	* @return   void    
	* @throws 
	*/ 
	void deleteBatch(String []  jobIds);
	
    /** 
    * @Title: updateBatch 
    * @Description: 批量更新任务  状态
    * @createDate: Jul 4, 2019 1:50:51 PM
    * @param   
    * @return   int    
    * @throws 
    */ 
    public int updateBatch(String[] jobIds, int status);
    
	/** 
	* @Title: findByPK 
	* @Description: 获取任务任务 
	* @createDate: Jul 4, 2019 1:26:29 PM
	* @param   
	* @return   ScheduleJob    
	* @throws 
	*/ 
	ScheduleJob findByPK(String  pk);
	
	
	
	/** 
	* @Title: run 
	* @Description: 立即执行 
	* @createDate: Jul 4, 2019 1:32:41 PM
	* @param   
	* @return   void    
	* @throws 
	*/ 
	void run(String[] jobIds);
	
	
	/** 
	* @Title: pause 
	* @Description:  暂停运行 
	* @createDate: Jul 4, 2019 1:32:36 PM
	* @param   
	* @return   void    
	* @throws 
	*/ 
	void pause(String[] jobIds);
	
	
	/** 
	* @Title: resume 
	* @Description: 恢复运行 
	* @createDate: Jul 4, 2019 1:32:29 PM
	* @param   
	* @return   void    
	* @throws 
	*/ 
	void resume(String[] jobIds);
	
	
	
}
