分支自 SuZhouGuanHong/TaiYuanTaiZhong

dengjunjie
2024-05-07 46f7bf1ee45c97b688a370bbe45d149efb403cc1
´úÂë¹ÜÀí/PCS/WCS_Server/WIDESEA_WCS/Jobs/equipment/PipelineJob.cs
@@ -1,10 +1,30 @@
using Quartz;
using HslCommunication;
using Microsoft.AspNetCore.Mvc;
using Newtonsoft.Json;
using Quartz;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Reflection;
using System.Text;
using System.Threading.Tasks;
using System.Xml.Linq;
using WIDESEA_Comm;
using WIDESEA_Comm.LogInfo;
using WIDESEA_Comm.TaskNo;
using WIDESEA_Core.BaseProvider;
using WIDESEA_Core.EFDbContext;
using WIDESEA_Core.Extensions;
using WIDESEA_Entity.DomainModels;
using WIDESEA_WCS.IRepositories;
using WIDESEA_WCS.Jobs;
using WIDESEA_WCS.JobsPart.Common;
using WIDESEA_WCS.Repositories;
using WIDESEA_WCS.WCSClient;
using WIDESEA_WMS.IRepositories;
using WIDESEA_WMS.Repositories;
using static System.Collections.Specialized.BitVector32;
namespace WIDESEA_WCS
{
@@ -12,34 +32,32 @@
    /// é“¾æ¡æœº
    /// </summary>
    [DisallowConcurrentExecution]
    public class PipelineJob : IJob
    public class PipelineJob : JobBase, IJob
    {
        public Task Execute(IJobExecutionContext context)
        {
            try
            {
                var client = context.JobDetail.JobDataMap.Get("JobParams") as PLCClient;
                if (client == null)
                {
                    return Task.CompletedTask;
                }
                //自动重连
                if (!client.IsConnected)
                {
                    client.Connect();
                    return Task.CompletedTask;
                }
                DoAction(client);
                ExecuteJob(context, DoAction);
            }
            catch { }
            return Task.CompletedTask;
        }
        private void DoAction(PLCClient client)
        private void DoAction(IJobExecutionContext context)
        {
            throw new NotImplementedException();
            var client = context.JobDetail.JobDataMap.Get("JobParams") as PLCClient;
            //自动重连
            if (!client.IsConnected)
            {
                client.Connect();
                return;
            }
            client.WriteByOrder("W_Palpitate", client.ReadByOrder<bool>("R_Palpitate", "心跳"));
            Pipeline pipeline = new Pipeline();
            pipeline.Loadinglevel(client);
            pipeline.AutoEmptyTray(client);
            pipeline.StationState(client);
        }
    }
}