using Quartz; using System; using System.Collections.Generic; using System.Linq; using System.Reflection; using System.Text; using System.Threading.Tasks; using System.Xml.Linq; using WIDESEA_Comm.DBItem; using WIDESEA_Comm.ItemDB; using WIDESEA_Core.EFDbContext; using WIDESEA_Entity.DomainModels; using WIDESEA_WCS.IRepositories; using WIDESEA_WCS.Jobs; using WIDESEA_WCS.Repositories; using WIDESEA_WCS.WCSClient; namespace WIDESEA_WCS { /// /// 桁架 /// [DisallowConcurrentExecution] public class GantryJob : JobBase, IJob { public Task Execute(IJobExecutionContext context) { try { ExecuteJob(context, DoAction); } catch { } return Task.CompletedTask; } private void DoAction(IJobExecutionContext context) { var client = context.JobDetail.JobDataMap.Get("JobParams") as PLCClient; //自动重连 if (!client.IsConnected) { client.Connect(); return; } client.WriteByOrder("W_Palpitate", client.ReadByOrder("R_Palpitate", "心跳")); Gantry gantry = new Gantry(); gantry.QueryOrder(client); gantry.QueryWheeldata(client); gantry.Layofflevel(client); } } }