using Quartz; using WIDESEAWCS_ITaskInfoRepository; using WIDESEAWCS_QuartzJob; namespace WIDESEAWCS_Tasks { [DisallowConcurrentExecution] public class CommonAGVJob : JobBase, IJob, IDisposable { private readonly ITaskRepository _taskRepository; public CommonAGVJob(ITaskRepository taskRepository) { _taskRepository = taskRepository; } public void Dispose() { GC.SuppressFinalize(this); } public Task Execute(IJobExecutionContext context) { AGV agv = (AGV)context.JobDetail.JobDataMap.Get("JobParams"); SendTaskAGV.SendAGVTask(agv, _taskRepository); UpdateTaskAGV.UpdateTask(agv, _taskRepository); return Task.CompletedTask; } } }