using Quartz; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using WIDESEAWCS_IBasicInfoRepository; using WIDESEAWCS_ISystemServices; using WIDESEAWCS_ITaskInfoRepository; using WIDESEAWCS_ITaskInfoService; using WIDESEAWCS_QuartzJob; namespace WIDESEAWCS_Tasks { /// /// 任务获取 后底板2 的任务 /// /// [DisallowConcurrentExecution] public class TaskAcquisition_Back2_Job : JobBase, IJob { private readonly ITaskRepository _taskRepository; private readonly ITaskService _taskService; private readonly ISys_ConfigService _sys_ConfigService; private readonly IDt_StationManagerRepository _stationManagerRepository; public TaskAcquisition_Back2_Job(ITaskRepository taskRepository, ITaskService taskService, ISys_ConfigService configService, IDt_StationManagerRepository stationManagerRepository) { _taskRepository = taskRepository; _taskService = taskService; _sys_ConfigService = configService; _stationManagerRepository = stationManagerRepository; } public Task Execute(IJobExecutionContext context) { /// 主要读取对应的db块的偏移量获取上线点的要料信息从而生成任务至Task表 Console.WriteLine("TaskAcquisition_Back2_Job正常进入...."); bool flag = context.JobDetail.JobDataMap.TryGetValue("JobParams", out object? value); if (flag && value != null) { OtherDevice device = (OtherDevice)value; if (!device.IsConnected) { return Task.CompletedTask; } device.Communicator.Read("10", 20); } return Task.CompletedTask; } } }