1
czw
5 天以前 a47e45d04ca5beadcf815d852cae52ef56f669e5
2025Äê6ÔÂ12ÈÕ/AuxAllWCS/Build/Project/´úÂë/VS×Ô¶¨ÒåÀà/AutoThread.cs
@@ -30,9 +30,33 @@
using System.Net.NetworkInformation;
using System.Windows.Documents;
using System.Text.RegularExpressions;
using GZ.Device.PLC;
namespace GZ.Projects.AuxAllWCS
{
    public static class ExtendClass
    {
        public static void Disnull(this TaskRepository repository)
        {
            repository.dbcontext.Dispose();
            repository = null;
        }
        public static void Disnull(this LocRepository repository)
        {
            repository.dbcontext.Dispose();
            repository = null;
        }
        public static void Disnull(this TaskActRepository repository)
        {
            repository.dbcontext.Dispose();
            repository = null;
        }
        public static void Disnull(this SYSRepository repository)
        {
            repository.dbcontext.Dispose();
            repository = null;
        }
    }
    public partial class AutoThread
    {
@@ -90,7 +114,7 @@
            }
            catch (Exception ex)
            {
                LogHelper.Error($"InvokeMethod > cacheKey-{ex.Message}", ex);
                LogHelper.Error($"InvokeMethod > cacheKey:{cacheKey}-{ex.Message}", ex);
                throw ex;
            }
        }
@@ -126,6 +150,7 @@
        //        return _repository;
        //    }
        //}
        /// <summary>
        /// é…ç½®åˆå§‹åŒ–。
        /// </summary>
@@ -152,9 +177,11 @@
        }
        public void ThreaTotal(Tag tag, Device device)
        {
            List<Task> tasks = new List<Task>();
            LogHelper.Info("ThreaTotal çº¿ç¨‹æ€»çº¿å¯åЍ");
            tasks.Add(GetTask(delegate (Tag tag1, Device device1)
            {
                try
@@ -216,9 +243,26 @@
            tasks.Add(GetTask(ThreadMXC5, tag, 3000));
            tasks.Add(GetTask(ThreadMXC6, tag, 3000));
            tasks.Add(GetTask(ThreadS7helper, tag, 3000));
            LogHelper.Info("ThreaTotal çº¿ç¨‹æ€»çº¿runing");
            Task.WaitAll(tasks.ToArray());
            LogHelper.Info("ThreaTotal çº¿ç¨‹æ€»çº¿over");
        }
        private void ThreadS7helper(Tag tag)
        {
            //var plc = new Plc(CpuType.S71500,);
            //foreach (var item in collection)
            //{
            //    S7.Net.Plc plc = new Plc(CpuType.S71500, item.address, 0, 1);
            //    Link(plc);
            //    PLCS.Add(item.deviceName, plc);
            //}
        }
        void taskssss1(Tag tag)
        {
            sa1025(tag);
@@ -238,7 +282,7 @@
            sa3010(tag);
        }
        public static ConcurrentDictionary<string, bool> Iponlines = new ConcurrentDictionary<string, bool>();
        //public static ConcurrentDictionary<string, bool> Iponlines = new ConcurrentDictionary<string, bool>();
        public bool IsMachineOnline(string hostNameOrIp, int timeout = 1000)
        {
            //device.p发那科1下线.Config.IP
@@ -1213,6 +1257,8 @@
                        }
                    }
                }
                task1 = null;
                task2 = null;
                LogHelper.Info($"rgv å¤„理完成。taskend 125");
                #endregion
            }
@@ -1236,7 +1282,6 @@
            TaskRepository taskRepository = new TaskRepository();
            try
            {
                var requires1 = taskActRepository.FindList(x => taskCOdes.Contains(x.S_ACTION_CODE) && x.N_CREATEMETHOD == 0).OrderBy(x => x.T_CREATE).ToList();
                var timeMorhours = requires1.FindAll(x => DateTime.Now.Subtract(x.T_CREATE).TotalHours > 1);
                if (timeMorhours.Any())
@@ -1629,9 +1674,10 @@
                                else if (dev.deviceType == 6)
                                {
                                    var close = (System.UInt16)System.Convert.ChangeType(Conn.默认Redis.GetValue(dev.deviceName + "." + (V ? "RD1203" : "RD1204")), typeof(System.UInt16));
                                    LogHelper.Info($"{dev.deviceName}{(V ? "å·¦" : "右")} å…‰æ …{(goin ? "关闭" : "开启")} ç”³è¯·ã€‚ å…³é—­çŠ¶æ€ï¼š{close}!");
                                    var canDo = (System.UInt16)System.Convert.ChangeType(Conn.默认Redis.GetValue(dev.deviceName + "." + (locindex == 0 ? "RD1200" : locindex == 1 ? "RD1201" : "RD1202")), typeof(System.UInt16));
                                    if (close == 0)
                                    LogHelper.Info($"{dev.deviceName}{(V ? "å·¦" : "右")} å…‰æ …{(goin ? "关闭" : "开启")} ç”³è¯·ã€‚宁江 å…³é—­çŠ¶æ€ï¼š{close}! å…è®¸æ“ä½œçŠ¶æ€ï¼š{canDo}");
                                    if (close == 0 && canDo == 1)
                                    {
                                        continuuuuu = true;
                                    }
@@ -1680,6 +1726,8 @@
                    }
                }
                requires1 = null;
                timeMorhours = null;
            }
            catch (Exception ex)
            {