package com.casic.config.task; import com.casic.config.TimeConfig; import com.casic.service.DayDataService; import com.casic.service.HourDataService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Configuration; import org.springframework.scheduling.annotation.EnableScheduling; import org.springframework.scheduling.annotation.SchedulingConfigurer; import org.springframework.scheduling.config.ScheduledTaskRegistrar; import org.springframework.scheduling.config.TriggerTask; import org.springframework.scheduling.support.CronTrigger; @Configuration @EnableScheduling public class TaskConfigurer implements SchedulingConfigurer { @Autowired private DayDataService dayDataProvider; @Autowired private TimeConfig timeConfig; @Override public void configureTasks(ScheduledTaskRegistrar taskRegistrar) { // TriggerTask triggrtTask = new TriggerTask(wellLocalData(), // triggerContext -> new CronTrigger(timeConfig.getWellLocalTime()).nextExecutionTime(triggerContext)); // taskRegistrar.addTriggerTask(triggrtTask); TriggerTask triggrtTask = new TriggerTask(wellCoverData(), triggerContext -> new CronTrigger(timeConfig.getWellCoverTime()).nextExecutionTime(triggerContext)); taskRegistrar.addTriggerTask(triggrtTask); triggrtTask = new TriggerTask(liquidData(), triggerContext -> new CronTrigger(timeConfig.getLiquidTime()).nextExecutionTime(triggerContext)); taskRegistrar.addTriggerTask(triggrtTask); // triggrtTask = new TriggerTask(harmFulData(), // triggerContext -> new CronTrigger(timeConfig.getWellLocalTime()).nextExecutionTime(triggerContext)); // taskRegistrar.addTriggerTask(triggrtTask); } private Runnable wellLocalData() { return new Runnable() { @Override public void run() { dayDataProvider.wellLocalData(); } }; } private Runnable harmFulData() { return new Runnable() { @Override public void run() { dayDataProvider.harmFulData(); } }; } private Runnable liquidData() { return new Runnable() { @Override public void run() { dayDataProvider.liquidData(); } }; } private Runnable wellCoverData() { return new Runnable() { @Override public void run() { dayDataProvider.wellCoverData(); } }; } }