From 0d6d67bd9fe82fd477d67439cb3e5d2d853561bf Mon Sep 17 00:00:00 2001
From: czw <selecti@yeah.net>
Date: 星期二, 08 七月 2025 10:50:26 +0800
Subject: [PATCH] 1

---
 2025年6月12日/AuxAllWCS/Build/Project/代码/界面事件.cs | 1258 ++++++----------------------------------------------------
 1 files changed, 146 insertions(+), 1,112 deletions(-)

diff --git "a/2025\345\271\2646\346\234\21012\346\227\245/AuxAllWCS/Build/Project/\344\273\243\347\240\201/\347\225\214\351\235\242\344\272\213\344\273\266.cs" "b/2025\345\271\2646\346\234\21012\346\227\245/AuxAllWCS/Build/Project/\344\273\243\347\240\201/\347\225\214\351\235\242\344\272\213\344\273\266.cs"
index 42a03ab..7df8fe7 100644
--- "a/2025\345\271\2646\346\234\21012\346\227\245/AuxAllWCS/Build/Project/\344\273\243\347\240\201/\347\225\214\351\235\242\344\272\213\344\273\266.cs"
+++ "b/2025\345\271\2646\346\234\21012\346\227\245/AuxAllWCS/Build/Project/\344\273\243\347\240\201/\347\225\214\351\235\242\344\272\213\344\273\266.cs"
@@ -28,8 +28,6 @@
 using GZ.DB.Repository.OIDATABASE;
 using GZ.DB.IRepository.OIDATABASE;
 using GZ.DB.Entity.OIDATABASE;
-using GZ.Modular.Redis;
-using System.Security.Cryptography;
 namespace GZ.Projects.AuxAllWCS
 {
     /// <summary>
@@ -52,11 +50,11 @@
 
             try
             {
-                HttpSvcHost = new System.Net.HttpListener();
-                HttpSvcHost.AuthenticationSchemes = System.Net.AuthenticationSchemes.Anonymous;
-                HttpSvcHost.Prefixes.Add("http://10.221.55.116:8808/");
-                HttpSvcHost.Start();
-                HttpSvcHost.BeginGetContext(HttpSvcListenerCallback, null);
+                //HttpSvcHost = new System.Net.HttpListener();
+                //HttpSvcHost.AuthenticationSchemes = System.Net.AuthenticationSchemes.Anonymous;
+                //HttpSvcHost.Prefixes.Add("http://10.221.55.117:8808/");
+                //HttpSvcHost.Start();
+                //HttpSvcHost.BeginGetContext(HttpSvcListenerCallback, null);
             }
             catch (Exception ex)
             {
@@ -79,27 +77,9 @@
                     try
                     {
                         #region    [鑴氭湰][20250323111613779][涓氬姟閫昏緫.鍒濆鍖栭厤缃甝
-                        //LogHelper.Info("1111 +" + DateTime.Now);
-                        //((Type)typeof(Utils)).GetMethod("ThreadSettingInit").Invoke(new Utils(), null);
-                        //LogHelper.Info("2222 +" + DateTime.Now);
-                        //((Type)typeof(Utils)).GetMethod("ThreadSettingInit").Invoke(new Utils(), new object[] { });
-                        //LogHelper.Info("3333 +" + DateTime.Now);
+
                         Action myDelegate = () => SettingInit();
                         AutoThread.InvokeMethod(AutoThread.Instance, "ThreadSettingInit", new object[] { tag, myDelegate });
-                        //LogHelper.Info("4444 +" + DateTime.Now);
-                        //AutoThread.InvokeMethod(AutoThread.Instance, "ThreadSettingInit", null);
-                        //LogHelper.Info("4444 +" + DateTime.Now);
-
-                        //if (Tag.Global.SettingsOver == 0)
-                        //{
-                        //    SettingInit();
-                        //    Tag.Global.SettingsOver = 1;
-                        //}
-                        //else if (Settings.deviceInfos.Count == 0)
-                        //{
-                        //    Tag.Global.SettingsOver = 0;
-                        //}
-
                         #endregion [鑴氭湰][20250323111613779][涓氬姟閫昏緫.鍒濆鍖栭厤缃甝
                     }
                     catch (Exception ex)
@@ -113,65 +93,6 @@
                 }
                 ExitJudgeStack.TryPop(out int exitJudgeVal);
             });
-            //鎵ц澶氭
-            for (int iii = 0; iii < 1; iii++)
-            {
-                if (IsExitApp) { break; }
-                try
-                {
-                    #region    [鑴氭湰][20250323151832119][涓氬姟閫昏緫.Program4]
-                    //Conn.榛樿Redis.SetValue("瑗块棬瀛�.Param3","300","瑗块棬瀛�Queue");
-                    //return;
-                    if (false)
-                    {
-                        List<string> locs = new List<string>() { "vxr1l", "vx1r", "vxr1c1", "vxr1c2", "vxr2l", "vxr2r", "vxr2c1", "vxr2c2" };
-                        List<string> sites = new List<string>() { "196365BB283162", "193841BB283149", "198756BB287300", "198767BB286133", "206987BB282931", "204460BB282975", "209405BB287057", "209377BB285899" };
-
-                        LocRepository locservice = new LocRepository();
-                        for (int i = 0; i < locs.Count; i++)
-                        {
-                            string loccode = locs[i];
-                            string sitesss = sites[i];
-                            var loc = locservice.FindEntity(x => x.S_LOC_CODE == loccode);
-                            if (loc == null)
-                            {
-                                locservice.Insert(new LocEntity
-                                {
-                                    S_ID = Guid.NewGuid().ToString(),
-                                    S_STATE = "缂栬緫",
-                                    T_CREATE = DateTime.Now,
-                                    T_MODIFY = DateTime.Now,
-                                    S_DEEP = "vxr",
-
-                                    S_LOC_CODE = loccode,
-                                    S_AGV_SITE = sitesss,
-
-                                    S_LOCK_STATE = "鏃�,
-                                    N_ROW = 1,
-                                    N_COL = 1,
-                                    N_AGV_CODE = 0,
-                                    N_AGV_SITE_LAYER = 0,
-                                    N_CAPACITY = 1,
-                                    N_CURRENT_NUM = 0,
-                                    S_TYPE = "",
-
-                                });
-                            }
-                        }
-                        // TaskProcess.CreateTask("", locs[6], locs[7], "test", 9, new List<string> { "test" }, 1, 1, 1);
-                    }
-
-                    #endregion [鑴氭湰][20250323151832119][涓氬姟閫昏緫.Program4]
-                }
-                catch (Exception ex)
-                {
-                    Conn.榛樿鏃ュ織.Error(ex.ToString());
-                }
-                finally
-                {
-                    System.Threading.Thread.Sleep(3000);
-                }
-            }
             /// <summary>
             /// 绋嬪簭鐗囨:鎹风灛鎶撹噦1
             /// 鎻忚堪:
@@ -187,49 +108,8 @@
                     try
                     {
                         #region    [鑴氭湰][20250325083325390][涓氬姟閫昏緫.绗笁鏍囨.鎹风灛鎶撹噦1]
-                        var VERX = Settings.deviceInfos?.Find(x => x.deviceType == 2 && x.deviceName == "Js鎹烽『1");
 
-                        if (VERX != null)
-                        {
-                            if (tag.Js1.D1212_LAST == 0 && TcpServer.GetBitdata(tag.Js1.D1212, 2) == 1)
-                            {
-                                var str = Settings.apiHelper.Post(Settings.WMSbaseUrl + "mom-basic/dataTransmission/json/service/200", JsonConvert.SerializeObject(new
-                                {
-                                    requestType = 4,
-                                    endBit = VERX.location[0]
-                                }));
-                                LogHelper.Info($"{VERX.location[0]}鐢宠mes浠诲姟缁撴灉{str}");
-                                if (str.Contains("true"))
-                                {
-                                    //tag.Js1.D1212_LAST = 1;
-                                    RedisHelper.Add($"Js鎹烽『1.D1212_LAST", "1", out string msg);
-                                }
-                            }
-                            if (tag.Js1.D1212_LAST == 1 && TcpServer.GetBitdata(tag.Js1.D1212, 2) == 0)
-                            {
-                                //tag.Js1.D1212_LAST = 0; 
-                                RedisHelper.Add($"Js鎹烽『1.D1212_LAST", "0", out string msg);
-                            }
-                            if (tag.Js1.D1213_LAST == 0 && TcpServer.GetBitdata(tag.Js1.D1212, 3) == 1)
-                            {
-                                var str = Settings.apiHelper.Post(Settings.WMSbaseUrl + "mom-basic/dataTransmission/json/service/200", JsonConvert.SerializeObject(new
-                                {
-                                    requestType = 4,
-                                    endBit = VERX.location[1]
-                                }));
-                                LogHelper.Info($"{VERX.location[1]}鐢宠mes浠诲姟缁撴灉{str}");
-                                if (str.Contains("true"))
-                                {
-                                    //tag.Js1.D1213_LAST = 1;
-                                    RedisHelper.Add($"Js鎹烽『1.D1213_LAST", "1", out string msg);
-                                }
-                            }
-                            if (tag.Js1.D1213_LAST == 1 && TcpServer.GetBitdata(tag.Js1.D1212, 3) == 0)
-                            {
-                                //tag.Js1.D1213_LAST = 0;
-                                RedisHelper.Add($"Js鎹烽『1.D1213_LAST", "0", out string msg);
-                            }
-                        }
+                        AutoThread.InvokeMethod(AutoThread.Instance, "ThreadJS1", new object[] { tag });
                         #endregion [鑴氭湰][20250325083325390][涓氬姟閫昏緫.绗笁鏍囨.鎹风灛鎶撹噦1]
                     }
                     catch (Exception ex)
@@ -258,55 +138,8 @@
                     try
                     {
                         #region    [鑴氭湰][20250325083326611][涓氬姟閫昏緫.绗笁鏍囨.鎹风灛鎶撹噦2]
-                        //jsz2鎹风灛鎶撹噦2
 
-                        var VERX = Settings.deviceInfos?.Find(x => x.deviceType == 2 && x.deviceName == "Js鎹烽『2");
-
-                        if (VERX != null)
-                        {
-                            if (tag.Js2.D1212_LAST == 0 && TcpServer.GetBitdata(tag.Js2.D1212, 2) == 1)
-                            {
-                                var str = Settings.apiHelper.Post(Settings.WMSbaseUrl + "mom-basic/dataTransmission/json/service/200", JsonConvert.SerializeObject(new
-                                {
-                                    requestType = 4,
-                                    endBit = VERX.location[0]
-                                }));
-                                LogHelper.Info($"{VERX.location[0]}鐢宠mes浠诲姟缁撴灉{str}");
-                                if (str.Contains("true"))
-                                {
-                                    //tag.Js2.D1212_LAST = 1;
-
-                                    RedisHelper.Add($"Js鎹烽『1.D1212_LAST", "1", out string msg);
-                                }
-                            }
-                            if (tag.Js2.D1212_LAST == 1 && TcpServer.GetBitdata(tag.Js2.D1212, 2) == 0)
-                            {
-                                //tag.Js2.D1212_LAST = 0;
-
-                                RedisHelper.Add($"Js鎹烽『1.D1212_LAST", "0", out string msg);
-                            }
-                            if (tag.Js2.D1213_LAST == 0 && TcpServer.GetBitdata(tag.Js2.D1212, 3) == 1)
-                            {
-                                var str = Settings.apiHelper.Post(Settings.WMSbaseUrl + "mom-basic/dataTransmission/json/service/200", JsonConvert.SerializeObject(new
-                                {
-                                    requestType = 4,
-                                    endBit = VERX.location[1]
-                                }));
-                                LogHelper.Info($"{VERX.location[1]}鐢宠mes浠诲姟缁撴灉{str}");
-                                if (str.Contains("true"))
-                                {
-                                    //tag.Js2.D1213_LAST = 1;
-
-                                    RedisHelper.Add($"Js鎹烽『1.D1213_LAST", "1", out string msg);
-                                }
-                            }
-                            if (tag.Js2.D1213_LAST == 1 && TcpServer.GetBitdata(tag.Js2.D1213, 2) == 0)
-                            {
-                                //tag.Js2.D1213_LAST = 0;
-
-                                RedisHelper.Add($"Js鎹烽『1.D1213_LAST", "0", out string msg);
-                            }
-                        }
+                        AutoThread.InvokeMethod(AutoThread.Instance, "ThreadJS2", new object[] { tag });
                         #endregion [鑴氭湰][20250325083326611][涓氬姟閫昏緫.绗笁鏍囨.鎹风灛鎶撹噦2]
                     }
                     catch (Exception ex)
@@ -339,6 +172,24 @@
                         //	if (di.deviceType == 2 || di.deviceType == 1)
                         //	RunafterMac(di,true);
                         /// TODO  mes 涓嬪彂銆�  鏀规垚鏈烘鑷傜洃鎺�-  鐩戞帶绌虹殑杩樻槸婊$殑 - 鑱斿姩mes 浠诲姟銆�+
+                        //LogHelper.Info($"璁惧鐘舵�锛氱淮甯屽皵1锛氱淮甯屽皵鎶撹噦1.State:{Device.缁村笇灏旀姄鑷�.State} ");
+                        //Device.缁村笇灏旀姄鑷�.ReadPLC("缁村笇灏旀姄鑷�.R50", out object value);
+                        //LogHelper.Info($"璁惧鐘舵�锛氱淮甯屽皵1锛氱淮甯屽皵鎶撹噦1.R50:{value?.ToString()} ");
+
+                        //LogHelper.Info($"璁惧鐘舵�锛氱淮甯屽皵2锛氱淮甯屽皵鎶撹噦2.State:{Device.缁村笇灏旀姄鑷�.State} ");
+                        //Device.缁村笇灏旀姄鑷�.ReadPLC("缁村笇灏旀姄鑷�.R50", out value);
+                        //LogHelper.Info($"璁惧鐘舵�锛氱淮甯屽皵2锛氱淮甯屽皵鎶撹噦2.R50:{value?.ToString()} ");
+
+                        //LogHelper.Info($"璁惧鐘舵�锛氭嵎鐬�锛欽s鎹烽『1.State:{Device.Js鎹烽『1.State} ");
+                        //Device.Js鎹烽『1.ReadPLC("Js鎹烽『1.D1202", out value);
+                        //LogHelper.Info($"璁惧鐘舵�锛氭嵎鐬� Js鎹烽『1.D1202:{value?.ToString()} ");
+
+                        //LogHelper.Info($"璁惧鐘舵�锛氭嵎鐬�锛欽s鎹烽『2.State:{Device.Js鎹烽『2.State} ");
+                        //Device.Js鎹烽『2.ReadPLC("Js鎹烽『2.D1202", out value);
+                        //LogHelper.Info($"璁惧鐘舵�锛氭嵎鐬� Js鎹烽『2.D1202:{value?.ToString()} ");
+
+
                         #endregion [鑴氭湰][20250325085810885][涓氬姟閫昏緫.绗笁鏍囨.鑷祦杞祦绋媇
                     }
                     catch (Exception ex)
@@ -368,66 +219,7 @@
                     {
                         #region    [鑴氭湰][20250325083149366][涓氬姟閫昏緫.绗笁鏍囨.缁寸郴灏�鍙�缁村笇灏旀姄鑷�L]
 
-                        var VERX = Settings.deviceInfos?.Find(x => x.deviceType == 1 && x.deviceName.Contains("1"));
-
-                        if (VERX != null)
-                        {
-                            if (tag.wxr1.R44 && !tag.wxr1.R44_LAST && tag.wxr1.R10)
-                            {
-                                if (TcpServer.TrayIps.TryGetValue(VERX.deviceNo[0], out string traycode))
-                                {
-                                    var str = Settings.apiHelper.Post(Settings.WMSbaseUrl + "mom-basic/dataTransmission/json/service/200", JsonConvert.SerializeObject(new
-                                    {
-                                        requestType = 1,
-                                        cntrCode = traycode,
-                                        startBit = VERX.location[0],
-                                        endBit = ""
-                                    }));
-                                    LogHelper.Info($"{VERX.location[0]}鐢宠mes浠诲姟缁撴灉{str}");
-                                    if (str.Contains("true"))
-                                    {
-                                        tag.wxr1.R44_LAST = true;
-                                    }
-                                }
-                                else
-                                {
-                                    TcpServer.TcpServerSend(VERX.deviceNo[0], GZ.Device.PLC.PlcHelper.Hex2Bin("544F4E"));
-                                }
-                            }
-                            else
-                            {
-                                //TaskRepository ts = new TaskRepository();
-                                if (tag.wxr1.R10_LAST) //鎵樼洏鏀剧疆淇″彿銆傘�
-                                {
-                                    if (tag.wxr1.R10)
-                                    {
-                                        tag.wxr1.R10_LAST = false;
-                                    }
-                                    else
-                                    if (TcpServer.TrayIps.TryGetValue(VERX.deviceNo[0], out string traycode))
-                                    {
-                                        //涓婃姤鏍¢獙銆�-                                        ///var str = Settings.apiHelper.Post(Settings.MESbaseUrl + "mom-basic/dataTransmission/json/service/202", requestJson);
-                                        var str = Settings.apiHelper.Post(Settings.WMSbaseUrl + "mom-basic/dataTransmission/json/service/202", JsonConvert.SerializeObject(new
-                                        {
-                                            sceneType = 1,
-                                            cntrCode = traycode,
-                                        }));
-                                        if (str.Contains("true"))
-                                        {
-                                            //Conn.榛樿Redis.SetValue("缁村笇灏旀姄鑷�.R10", "true", "缁村笇灏旀姄鑷�Queue");
-                                            tag.wxr1.R10 = true;
-                                            tag.wxr1.R44_LAST = false;
-                                        }
-                                        else
-                                        {
-                                            //鎶ヨ銆�-                                        }
-                                    }
-                                    else { TcpServer.TcpServerSend(VERX.deviceNo[0], GZ.Device.PLC.PlcHelper.Hex2Bin("544F4E")); }
-                                }
-                            }
-                        }
+                        AutoThread.InvokeMethod(AutoThread.Instance, "Threadwxr1L", new object[] { tag });
                         #endregion [鑴氭湰][20250325083149366][涓氬姟閫昏緫.绗笁鏍囨.缁寸郴灏�鍙�缁村笇灏旀姄鑷�L]
                     }
                     catch (Exception ex)
@@ -456,65 +248,8 @@
                     try
                     {
                         #region    [鑴氭湰][20250610002047005][涓氬姟閫昏緫.绗笁鏍囨.缁寸郴灏�鍙�缁村笇灏旀姄鑷�R]
-                        var VERX = Settings.deviceInfos?.Find(x => x.deviceType == 1 && x.deviceName.Contains("1"));
 
-                        if (VERX != null)
-                        {
-                            if (tag.wxr1.R46 && !tag.wxr1.R46_LAST && tag.wxr1.R11)
-                            {
-                                if (TcpServer.TrayIps.TryGetValue(VERX.deviceNo[1], out string traycode))
-                                {
-                                    var str = Settings.apiHelper.Post(Settings.WMSbaseUrl + "mom-basic/dataTransmission/json/service/200", JsonConvert.SerializeObject(new
-                                    {
-                                        requestType = 1,
-                                        cntrCode = traycode,
-                                        startBit = VERX.location[1],
-                                        endBit = ""
-                                    }));
-                                    LogHelper.Info($"{VERX.location[1]}鐢宠mes浠诲姟缁撴灉{str}");
-                                    if (str.Contains("true"))
-                                    {
-                                        tag.wxr1.R46_LAST = true;
-                                    }
-                                }
-                                else
-                                {
-                                    TcpServer.TcpServerSend(VERX.deviceNo[1], GZ.Device.PLC.PlcHelper.Hex2Bin("544F4E"));
-                                }
-                            }
-                            else
-                            {
-                                if (tag.wxr1.R11_LAST) //鎵樼洏鏀剧疆淇″彿銆傘�
-                                {
-                                    if (tag.wxr1.R11)
-                                    {
-                                        tag.wxr1.R11_LAST = false;
-                                    }
-                                    else
-                                    if (TcpServer.TrayIps.TryGetValue(VERX.deviceNo[1], out string traycode))
-                                    {
-                                        //涓婃姤鏍¢獙銆�-                                        ///var str = Settings.apiHelper.Post(Settings.MESbaseUrl + "mom-basic/dataTransmission/json/service/202", requestJson);
-                                        var str = Settings.apiHelper.Post(Settings.WMSbaseUrl + "mom-basic/dataTransmission/json/service/202", JsonConvert.SerializeObject(new
-                                        {
-                                            sceneType = 1,
-                                            cntrCode = traycode,
-                                        }));
-                                        if (str.Contains("true"))
-                                        {
-                                            //Conn.榛樿Redis.SetValue("缁村笇灏旀姄鑷�.R10", "true", "缁村笇灏旀姄鑷�Queue");
-                                            tag.wxr1.R11 = true;
-                                            tag.wxr1.R46_LAST = false;
-                                        }
-                                        else
-                                        {
-                                            //鎶ヨ銆�-                                        }
-                                    }
-                                    else { TcpServer.TcpServerSend(VERX.deviceNo[1], GZ.Device.PLC.PlcHelper.Hex2Bin("544F4E")); }
-                                }
-                            }
-                        }
+                        AutoThread.InvokeMethod(AutoThread.Instance, "Threadwxr1R", new object[] { tag });
                         #endregion [鑴氭湰][20250610002047005][涓氬姟閫昏緫.绗笁鏍囨.缁寸郴灏�鍙�缁村笇灏旀姄鑷�R]
                     }
                     catch (Exception ex)
@@ -544,65 +279,7 @@
                     {
                         #region    [鑴氭湰][20250325083315503][涓氬姟閫昏緫.绗笁鏍囨.缁寸郴灏�鍙�缁村笇灏旀姄鑷�L]
 
-                        var VERX = Settings.deviceInfos?.Find(x => x.deviceType == 1 && x.deviceName.Contains("2"));
-
-                        if (VERX != null)
-                        {
-                            if (tag.wxr2.R44 && !tag.wxr2.R44_LAST && tag.wxr2.R10)
-                            {
-                                if (TcpServer.TrayIps.TryGetValue(VERX.deviceNo[0], out string traycode))
-                                {
-                                    var str = Settings.apiHelper.Post(Settings.WMSbaseUrl + "mom-basic/dataTransmission/json/service/200", JsonConvert.SerializeObject(new
-                                    {
-                                        requestType = 1,
-                                        cntrCode = traycode,
-                                        startBit = VERX.location[0],
-                                        endBit = ""
-                                    }));
-                                    LogHelper.Info($"{VERX.location[0]}鐢宠mes浠诲姟缁撴灉{str}");
-                                    if (str.Contains("true"))
-                                    {
-                                        tag.wxr2.R44_LAST = true;
-                                    }
-                                }
-                                else
-                                {
-                                    TcpServer.TcpServerSend(VERX.deviceNo[0], GZ.Device.PLC.PlcHelper.Hex2Bin("544F4E"));
-                                }
-                            }
-                            else
-                            {
-                                if (tag.wxr2.R10_LAST) //鎵樼洏鏀剧疆淇″彿銆傘�
-                                {
-                                    if (tag.wxr2.R10)
-                                    {
-                                        tag.wxr2.R10_LAST = false;
-                                    }
-                                    else
-                                    if (TcpServer.TrayIps.TryGetValue(VERX.deviceNo[0], out string traycode))
-                                    {
-                                        //涓婃姤鏍¢獙銆�-                                        ///var str = Settings.apiHelper.Post(Settings.MESbaseUrl + "mom-basic/dataTransmission/json/service/202", requestJson);
-                                        var str = Settings.apiHelper.Post(Settings.WMSbaseUrl + "mom-basic/dataTransmission/json/service/202", JsonConvert.SerializeObject(new
-                                        {
-                                            sceneType = 1,
-                                            cntrCode = traycode,
-                                        }));
-                                        if (str.Contains("true"))
-                                        {
-                                            //Conn.榛樿Redis.SetValue("缁村笇灏旀姄鑷�.R10", "true", "缁村笇灏旀姄鑷�Queue");
-                                            tag.wxr2.R10 = true;
-                                            tag.wxr2.R44_LAST = false;
-                                        }
-                                        else
-                                        {
-                                            //鎶ヨ銆�-                                        }
-                                    }
-                                    else { TcpServer.TcpServerSend(VERX.deviceNo[0], GZ.Device.PLC.PlcHelper.Hex2Bin("544F4E")); }
-                                }
-                            }
-                        }
+                        AutoThread.InvokeMethod(AutoThread.Instance, "Threadwxr2L", new object[] { tag });
                         #endregion [鑴氭湰][20250325083315503][涓氬姟閫昏緫.绗笁鏍囨.缁寸郴灏�鍙�缁村笇灏旀姄鑷�L]
                     }
                     catch (Exception ex)
@@ -631,91 +308,8 @@
                     try
                     {
                         #region    [鑴氭湰][20250610002647095][涓氬姟閫昏緫.绗笁鏍囨.缁寸郴灏�鍙�缁村笇灏旀姄鑷�R]
-                        var VERX = Settings.deviceInfos?.Find(x => x.deviceType == 1 && x.deviceName.Contains("2"));
 
-                        if (VERX != null)
-                        {
-                            if (tag.wxr2.R46 && !tag.wxr2.R46_LAST && tag.wxr2.R11)
-                            {
-                                if (TcpServer.TrayIps.TryGetValue(VERX.deviceNo[1], out string traycode))
-                                {
-                                    var str = Settings.apiHelper.Post(Settings.WMSbaseUrl + "mom-basic/dataTransmission/json/service/200", JsonConvert.SerializeObject(new
-                                    {
-                                        requestType = 1,
-                                        cntrCode = traycode,
-                                        startBit = VERX.location[1],
-                                        endBit = ""
-                                    }));
-                                    LogHelper.Info($"{VERX.location[1]}鐢宠mes浠诲姟缁撴灉{str}");
-                                    if (str.Contains("true"))
-                                    {
-                                        tag.wxr2.R46_LAST = true;
-                                    }
-                                }
-                                else
-                                {
-                                    TcpServer.TcpServerSend(VERX.deviceNo[2], GZ.Device.PLC.PlcHelper.Hex2Bin("544F4E"));
-                                }
-                            }
-                            else
-                            {
-                                if (tag.wxr2.R11_LAST) //鎵樼洏鏀剧疆淇″彿銆傘�
-                                {
-                                    if (tag.wxr2.R11)
-                                    {
-                                        tag.wxr2.R11_LAST = false;
-                                    }
-                                    else
-                                    if (TcpServer.TrayIps.TryGetValue(VERX.deviceNo[1], out string traycode))
-                                    {
-                                        //涓婃姤鏍¢獙銆�-                                        ///var str = Settings.apiHelper.Post(Settings.MESbaseUrl + "mom-basic/dataTransmission/json/service/202", requestJson);
-                                        var str = Settings.apiHelper.Post(Settings.WMSbaseUrl + "mom-basic/dataTransmission/json/service/202", JsonConvert.SerializeObject(new
-                                        {
-                                            sceneType = 1,
-                                            cntrCode = traycode,
-                                        }));
-                                        if (str.Contains("true"))
-                                        {
-                                            //Conn.榛樿Redis.SetValue("缁村笇灏旀姄鑷�.R10", "true", "缁村笇灏旀姄鑷�Queue");
-                                            tag.wxr2.R11 = true;
-                                            tag.wxr2.R46_LAST = false;
-                                        }
-                                        else
-                                        {
-                                            //鎶ヨ銆�-                                        }
-                                    }
-                                    else { TcpServer.TcpServerSend(VERX.deviceNo[1], GZ.Device.PLC.PlcHelper.Hex2Bin("544F4E")); }
-                                }
-                            }
-                        }
-                        #endregion [鑴氭湰][20250610002647095][涓氬姟閫昏緫.绗笁鏍囨.缁寸郴灏�鍙�缁村笇灏旀姄鑷�R]
-                    }
-                    catch (Exception ex)
-                    {
-                        Conn.榛樿鏃ュ織.Error(ex.ToString());
-                    }
-                    finally
-                    {
-                        System.Threading.Thread.Sleep(3000);
-                    }
-                }
-                ExitJudgeStack.TryPop(out int exitJudgeVal);
-            });
-
-            System.Threading.Tasks.Task.Factory.StartNew(() =>
-            {
-                System.Threading.Thread.CurrentThread.IsBackground = true;
-                ExitJudgeStack.Push(0);
-                //涓�洿鎵ц锛岀洿鍒版弧瓒崇粨鏉熸潯浠�-                while (true)
-                {
-                    if (IsExitApp) { break; }
-                    try
-                    {
-                        #region    [鑴氭湰][20250610002647095][涓氬姟閫昏緫.绗笁鏍囨.缁寸郴灏�鍙�缁村笇灏旀姄鑷�R]
-                        LogHelper.Info($"娴嬭瘯绾跨▼杩愯鐘舵�鏃ュ織銆嬨�銆嬨�銆�);
+                        AutoThread.InvokeMethod(AutoThread.Instance, "Threadwxr2R", new object[] { tag });
                         #endregion [鑴氭湰][20250610002647095][涓氬姟閫昏緫.绗笁鏍囨.缁寸郴灏�鍙�缁村笇灏旀姄鑷�R]
                     }
                     catch (Exception ex)
@@ -740,324 +334,13 @@
                 //涓�洿鎵ц锛岀洿鍒版弧瓒崇粨鏉熸潯浠�                 while (true)
                 {
-                    //if (IsExitApp) { break; }
-                    LogHelper.Info("浠诲姟涓嬪彂  while 杩涘叆");
+                    if (IsExitApp) { break; }
                     try
                     {
-                        LogHelper.Info("浠诲姟涓嬪彂  try 1 杩涘叆");
                         #region    [鑴氭湰][20250325085542733][涓氬姟閫昏緫.浠诲姟涓嬪彂]
 
-                        ITaskRepository taskservice = new TaskRepository();
-                        try
-                        {
-                            LogHelper.Info("浠诲姟涓嬪彂  ARG 浠诲姟 杩涘叆");
-                            #region AGV浠诲姟涓嬪彂銆�-
-                            var tklist = taskservice.FindList(x => x.S_B_STATE == "鏈墽琛� && x.S_WORK_MODE == "AGV");
-                            if (tklist.Any())
-                                foreach (var tk in tklist.GroupBy(item =>
-                                {
-                                    var ticks = item.T_CREATE.Ticks;
-                                    return new DateTime(ticks - ticks % (10 * TimeSpan.TicksPerMinute));
-                                }).OrderBy(x => x.Key))
-                                {
-                                    var ts = tk.OrderByDescending(x => x.N_PRIORITY).ToList();
-                                    foreach (var t in ts)
-                                    {
-                                        var b = false;
-                                        b = RunTask(t);
-
-                                        if (b)
-                                        {
-                                            t.S_B_STATE = "宸叉帹閫�;
-                                            taskservice.Update(t);
-                                        }
-                                    }
-                                    break;
-                                }
-                            //foreach (var tk in tklist.GroupBy(item =>
-                            //{
-                            //    var ticks = item.T_CREATE.Ticks;
-                            //    return new DateTime(ticks - ticks % (10 * TimeSpan.TicksPerMinute));
-                            //}).OrderBy(x => x.Key))
-                            //if (tklist.Any())
-                            //{
-
-                            #endregion
-                        }
-                        catch (Exception ex)
-                        {
-                            LogHelper.Info(ex.Message + ex.StackTrace);
-                        }
-                        try
-                        {
-                            LogHelper.Info("浠诲姟涓嬪彂  Rgv 浠诲姟 杩涘叆");
-                            #region Rgv
-
-                            LogHelper.Info($"鏌ョ湅RGV 鐢甸噺锛氥�{tag.RGV.R褰撳墠鐢甸噺}銆�鍏呯數鐘舵�锛氥�{tag.RGV.R鍏呯數鐘舵�}銆�鏁呴殰浠g爜锛氥�{tag.RGV.RgvrunError}銆�);
-                            var task1Isrun = false;
-                            if (tag.RGV.ReadTask1No > 0 && tag.RGV.bit1taskOver != 1)
-                            {
-                                task1Isrun = true;
-                                if (tag.RGV.bit1taskOver_LAST == 1)
-                                    RedisHelper.Add($"RGV.bit1taskOver_LAST", "0", out string msg);
-                            }
-                            var task2Isrun = false;
-                            if (tag.RGV.ReadTask2No > 0 && tag.RGV.bit2taskOver != 1)
-                            {
-                                task2Isrun = true;
-                                if (tag.RGV.bit2taskOver_LAST == 1)
-                                    RedisHelper.Add($"RGV.bit2taskOver_LAST", "0", out string msg);
-                            }
-                            if (task1Isrun || task2Isrun)
-                            {
-                                string mes = "";
-                                if (task1Isrun)
-                                    mes += tag.RGV.ReadTask1No + "鎵ц涓�..";
-                                if (task2Isrun)
-                                    mes += tag.RGV.ReadTask2No + "鎵ц涓�..";
-                                LogHelper.Info($"{mes} 涓嶈兘涓嬪彂鏂颁换鍔°�");
-                                throw new Exception($"{mes} 涓嶈兘涓嬪彂鏂颁换鍔°�");
-                            }
-
-                            var thisOver = 0;
-
-                            TaskEntity task1 = null;
-                            TaskEntity task2 = null;
-
-                            LogHelper.Info($"鏌ョ湅RGV 1宸ヤ綅浠诲姟銆�);
-                            if (tag.RGV.ReadTask1No > 0 && tag.RGV.bit1taskOver == 1)
-                            {
-                                var taskno = tag.RGV.ReadTask1No;
-                                LogHelper.Info($"RGV 1宸ヤ綅浠诲姟{tag.RGV.ReadTask1No}");
-                                string tno = "TN" + (DateTime.Now.ToString("yy")) + ((taskno.ToString()).PadLeft(8, '0'));
-                                task1 = taskservice.FindEntity(x => x.S_TASK_NO == tno);
-
-                                LogHelper.Info($"RGV 1宸ヤ綅浠诲姟{JsonConvert.SerializeObject(task1)}.bit1taskOver_LAST锛歿tag.RGV.bit1taskOver_LAST}");
-                                if (tag.RGV.bit1taskOver_LAST == 0 && task1 != null)
-                                {
-                                    if (task1.S_B_STATE != "瀹屾垚")
-                                    {
-                                        thisOver = 1;
-                                        if (task1.S_B_STATE == "鍙栬揣瀹屾垚")
-                                        {
-                                            task1.S_B_STATE = "瀹屾垚";
-                                        }
-                                        else
-                                        {
-                                            task1.S_B_STATE = "鍙栬揣瀹屾垚";
-                                        }
-                                        LogHelper.Info($"RGV 1宸ヤ綅浠诲姟{task1.S_TASK_NO} 鐘舵�鍒囨崲涓簕task1.S_B_STATE}");
-                                        //tag.RGV.bit1taskOver_LAST = 1;
-                                        RedisHelper.Add($"RGV.bit1taskOver_LAST", "1", out string msg);
-                                        LogHelper.Info($"RGV 1宸ヤ綅浠诲姟鍐欏鐞�);
-                                        taskservice.Update(task1);
-                                        LogHelper.Info($"RGV 1宸ヤ綅浠诲姟鏇存柊銆�);
-                                    }
-                                    else
-                                    {
-                                        LogHelper.Info("RGV1宸ヤ綅浠诲姟宸茬粡瀹屾垚銆�);
-                                    }
-                                }
-                            }
-                            else if (tag.RGV.ReadTask1No == 0)
-                            {
-                                LogHelper.Info($"RGV 1宸ヤ綅娌℃湁浠诲姟銆�);
-                            }
-
-                            LogHelper.Info($"鏌ョ湅RGV 2宸ヤ綅浠诲姟銆�);
-                            if (tag.RGV.ReadTask2No > 0 && tag.RGV.bit2taskOver == 1)
-                            {
-                                var taskno = tag.RGV.ReadTask2No;
-                                LogHelper.Info($"RGV 2宸ヤ綅浠诲姟{tag.RGV.ReadTask2No}");
-                                string tno = "TN" + (DateTime.Now.ToString("yy")) + ((taskno.ToString()).PadLeft(8, '0'));
-                                task2 = taskservice.FindEntity(x => x.S_TASK_NO == tno);
-
-                                LogHelper.Info($"RGV2宸ヤ綅浠诲姟{JsonConvert.SerializeObject(task2)}.bit2taskOver_LAST锛歿tag.RGV.bit2taskOver_LAST}");
-                                if (tag.RGV.bit2taskOver_LAST == 0 && task2 != null)
-                                {
-                                    if (task2.S_B_STATE != "瀹屾垚")
-                                    {
-                                        thisOver = 2;
-                                        if (task2.S_B_STATE == "鍙栬揣瀹屾垚")
-                                        {
-                                            task2.S_B_STATE = "瀹屾垚";
-                                        }
-                                        else
-                                        {
-                                            task2.S_B_STATE = "鍙栬揣瀹屾垚";
-                                        }
-                                        LogHelper.Info($"RGV 2宸ヤ綅浠诲姟{task2.S_TASK_NO} 鐘舵�鍒囨崲涓簕task2.S_B_STATE}");
-                                        RedisHelper.Add($"RGV.bit2taskOver_LAST", "1", out string msg);
-                                        LogHelper.Info($"RGV 2宸ヤ綅浠诲姟鍐欏鐞�);
-                                        taskservice.Update(task2);
-                                        LogHelper.Info($"RGV 2宸ヤ綅浠诲姟鏇存柊銆�);
-                                    }
-                                    else
-                                    {
-                                        LogHelper.Info("RGV2宸ヤ綅浠诲姟宸茬粡瀹屾垚銆�);
-                                    }
-                                }
-                            }
-                            else if (tag.RGV.ReadTask2No == 0)
-                            {
-                                LogHelper.Info($"RGV 2宸ヤ綅娌℃湁浠诲姟銆�);
-                            }
-
-                            //if (thisOver > 0)
-                            {
-                                var v2 = RedisHelper.Get<WriteGroupEntity>("RGVQueue", out string rev);
-                                if (v2 != null)
-                                {
-                                    LogHelper.Info($"RGVQueue 璇诲埌缁撴灉-{JsonConvert.SerializeObject(v2)}  \n 涓嬪彂鍓嶈繘琛屾竻闄ゃ�");
-                                    var b = RedisHelper.Remove("RGVQueue", out rev);
-                                }
-                            }
-
-                            ///1 鏈夎揣  灏� 鍙栥�  1 娌¤揣 灏� 鍗歌揣锛�閮芥湁璐� 灏�鍗歌揣銆�閮芥病璐�灏�鍗�-                            var tklist = taskservice.FindList(x => x.S_B_STATE == "鏈墽琛� && x.S_WORK_MODE == "RGV").OrderBy(x => x.T_CREATE).ToList();
-                            if (task1 != null && task1.S_B_STATE != "瀹屾垚") //1鏈変换鍔�-                            {
-                                if (task2 != null && task2.S_B_STATE != "瀹屾垚")// 1 鏈変换鍔� 2 鏈変换鍔°� 
-                                {
-                                    LogHelper.Info($"鏌ョ湅RGV1 鏈変换鍔task1.S_TASK_NO},宸ヤ綅2 涔熸湁浠诲姟{task2.S_TASK_NO}銆�寮�宸ヤ綅1 鍗歌揣銆�);
-                                    tag.RGV.workMod = 1;
-                                    tag.RGV.taskmod = 2;
-                                    tag.RGV.taskno1 = Convert.ToUInt32(task1.S_TASK_NO.Substring(4));
-                                    tag.RGV.task1do = Convert.ToUInt16(task1.S_END_LOC);
-                                    System.Threading.Thread.Sleep(750);
-                                    //RedisHelper.Add($"RGV.bit1taskOver_LAST", "0", out string msg);
-                                    //tag.RGV.taskend = 125;
-                                    //Conn.榛樿Redis.SetValue("RGV.taskend", "125", "RGVQueue");
-
-                                    LogHelper.Info($"{task1.S_TASK_NO}> bit1taskOver_LAST 鍐�0");
-                                    RedisHelper.Add($"RGV.bit1taskOver_LAST", "0", out string msg);
-                                    LogHelper.Info($"{task1.S_TASK_NO}> end 鍐�125");
-                                    Conn.榛樿Redis.SetValue("RGV.taskend", "125", "RGVQueue", false);
-                                }
-                                else //1鏈変换鍔� 2 娌′换鍔°�
-                                {
-                                    LogHelper.Info($"鏌ョ湅RGV1 鏈変换鍔task1.S_TASK_NO},宸ヤ綅2 娌′换鍔°� 鎵惧悓渚у彇璐т换鍔°�");
-                                    //1 濡傛灉鏈夊悓渚у彇璐т换鍔°�灏卞彇銆傛病鏈�-                                    var leftSide = new List<string> { "1023", "1020" };
-                                    var RightSide = new List<string> { "1002", "1008", "1010", "1016" };
-                                    bool creT2 = false;
-                                    if (leftSide.Contains(task1.S_START_LOC))
-                                    {
-                                        leftSide.Remove(task1.S_START_LOC);
-                                        var lsde = leftSide.FirstOrDefault();
-                                        var t2 = tklist.Find(x => x.S_START_LOC == lsde && x.S_END_LOC != "1017");
-                                        if (t2 != null) //鍚屼晶鍙栬揣浠诲姟銆�-                                        {
-                                            LogHelper.Info($"鏌ョ湅RGV1 鏈変换鍔task1.S_TASK_NO},宸ヤ綅2 娌′换鍔°� 鎵惧悓渚у彇璐т换鍔t2.S_TASK_NO}銆�);
-                                            tag.RGV.workMod = 2;
-                                            tag.RGV.taskmod = 1;
-                                            tag.RGV.taskno2 = Convert.ToUInt32(t2.S_TASK_NO.Substring(4));
-                                            tag.RGV.task2do = Convert.ToUInt16(t2.S_START_LOC);
-                                            t2.S_B_STATE = "宸叉帹閫�;
-                                            taskservice.Update(t2);
-                                            creT2 = true;
-                                            System.Threading.Thread.Sleep(750);
-                                            LogHelper.Info($"{t2.S_TASK_NO}> bit2taskOver_LAST 鍐�0");
-                                            RedisHelper.Add($"RGV.bit2taskOver_LAST", "0", out string msg);
-                                            LogHelper.Info($"{t2.S_TASK_NO}> end 鍐�125");
-                                            Conn.榛樿Redis.SetValue("RGV.taskend", "125", "RGVQueue", false);
-                                        }
-                                    }
-                                    else if (RightSide.Contains(task1.S_START_LOC))
-                                    {
-                                        RightSide.Remove(task1.S_START_LOC);
-                                        var t2 = tklist.Find(x => RightSide.Contains(x.S_START_LOC) && x.S_END_LOC != "1017");
-                                        if (t2 != null) //鍚屼晶鍙栬揣浠诲姟銆�-                                        {
-                                            LogHelper.Info($"鏌ョ湅RGV1 鏈変换鍔task1.S_TASK_NO},宸ヤ綅2 娌′换鍔°� 鎵惧悓渚у彇璐т换鍔t2.S_TASK_NO}銆�);
-                                            tag.RGV.workMod = 2;
-                                            tag.RGV.taskmod = 1;
-                                            tag.RGV.taskno2 = Convert.ToUInt32(t2.S_TASK_NO.Substring(4));
-                                            tag.RGV.task2do = Convert.ToUInt16(t2.S_START_LOC);
-                                            t2.S_B_STATE = "宸叉帹閫�;
-                                            taskservice.Update(t2);
-                                            creT2 = true;
-                                            System.Threading.Thread.Sleep(750);
-                                            LogHelper.Info($"{t2.S_TASK_NO}> bit2taskOver_LAST 鍐�125");
-                                            RedisHelper.Add($"RGV.bit2taskOver_LAST", "0", out string msg);
-                                            LogHelper.Info($"{t2.S_TASK_NO}> end 鍐�125");
-                                            Conn.榛樿Redis.SetValue("RGV.taskend", "125", "RGVQueue", false);
-                                        }
-                                    }
-                                    //else //1 鐩存帴鍗歌揣銆�
-                                    if (!creT2)
-                                    {
-                                        LogHelper.Info($"鏌ョ湅RGV1 鏈変换鍔task1.S_TASK_NO},宸ヤ綅2 娌′换鍔°� 娌℃湁鍚屼晶鍙栬揣浠诲姟 1宸ヤ綅鍗歌揣銆�);
-                                        tag.RGV.workMod = 1;
-                                        tag.RGV.taskmod = 2;
-                                        tag.RGV.taskno1 = Convert.ToUInt32(task1.S_TASK_NO.Substring(4));
-                                        tag.RGV.task1do = Convert.ToUInt16(task1.S_END_LOC);
-                                        System.Threading.Thread.Sleep(750);
-                                        LogHelper.Info($"{task1.S_TASK_NO}> bit1taskOver_LAST 鍐�0");
-                                        RedisHelper.Add($"RGV.bit1taskOver_LAST", "0", out string msg);
-                                        LogHelper.Info($"{task1.S_TASK_NO}> taskend 鍐�0");
-                                        Conn.榛樿Redis.SetValue("RGV.taskend", "125", "RGVQueue", false);
-                                    }
-                                }
-                            }
-                            else
-                            {
-                                if (task2 != null && task2.S_B_STATE != "瀹屾垚")// 1 娌′换鍔� 2 鏈変换鍔°� 
-                                {
-                                    LogHelper.Info($"鏌ョ湅RGV 1宸ヤ綅娌′换鍔�宸ヤ綅2 鏈変换鍔task2.S_TASK_NO}銆傚伐浣�鍗歌揣銆傘�");
-                                    //2 鍗歌揣銆�-                                    tag.RGV.workMod = 2;
-                                    tag.RGV.taskmod = 2;
-                                    tag.RGV.taskno2 = Convert.ToUInt32(task2.S_TASK_NO.Substring(4));
-                                    tag.RGV.task2do = Convert.ToUInt16(task2.S_END_LOC);
-                                    System.Threading.Thread.Sleep(750);
-                                    LogHelper.Info($"{task2.S_TASK_NO}> bit2taskOver_LAST 鍐�0");
-                                    RedisHelper.Add($"RGV.bit2taskOver_LAST", "0", out string msg);
-                                    //tag.RGV.taskend = 125;
-                                    LogHelper.Info($"{task2.S_TASK_NO}> taskend 鍐�25");
-                                    Conn.榛樿Redis.SetValue("RGV.taskend", "125", "RGVQueue", false);
-                                }
-                                else //1mei 浠诲姟  2 娌′换鍔°�
-                                {
-                                    LogHelper.Info($"鏌ョ湅RGV 1宸ヤ綅娌′换鍔�宸ヤ綅2 涔熸病浠诲姟銆備紭鍏�宸ヤ綅缁堢偣1017浠诲姟銆傘�");
-                                    //銆佷笅 1017浠诲姟 缁�鍙峰伐浣嶃�
-                                    var lss = tklist.Take(2).ToList();
-                                    var e1017first = lss.Find(x => x.S_END_LOC == "1017");
-                                    if (e1017first == null)
-                                    {
-                                        e1017first = lss.FirstOrDefault();
-                                    }
-                                    if (e1017first != null)
-                                    {
-                                        LogHelper.Info($"鏌ョ湅RGV 1宸ヤ綅娌′换鍔�宸ヤ綅2 涔熸病浠诲姟銆�宸ヤ綅涓嬩换鍔e1017first.S_TASK_NO}> 缁堢偣{e1017first.S_END_LOC}銆�);
-                                        tag.RGV.workMod = 1;
-                                        tag.RGV.taskmod = 1;
-                                        uint tno = Convert.ToUInt32(e1017first.S_TASK_NO.Substring(4));
-                                        LogHelper.Info($"{e1017first.S_TASK_NO}> 杞崲鍚庝换鍔″彿{tno} 寮�鍐欏叆銆�);
-                                        tag.RGV.taskno1 = tno;
-                                        LogHelper.Info($"{e1017first.S_TASK_NO}>寮�鍐欏叆 task1do>>{e1017first.S_START_LOC}銆�);
-                                        tag.RGV.task1do = Convert.ToUInt16(e1017first.S_START_LOC);
-                                        LogHelper.Info($"{e1017first.S_TASK_NO}> 鏇存柊浠诲姟銆�);
-                                        e1017first.S_B_STATE = "宸叉帹閫�;
-                                        taskservice.Update(e1017first);
-                                        System.Threading.Thread.Sleep(750);
-                                        LogHelper.Info($"{e1017first.S_TASK_NO}> bit1taskOver_LAST 鍐�");
-                                        RedisHelper.Add($"RGV.bit1taskOver_LAST", "0", out string msg);
-                                        LogHelper.Info($"{e1017first.S_TASK_NO}> taskend 鍐�25");
-                                        //tag.RGV.taskend=125
-                                        Conn.榛樿Redis.SetValue("RGV.taskend", "125", "RGVQueue", false);
-
-                                    }
-                                }
-                            }
-                            LogHelper.Info($"rgv 澶勭悊瀹屾垚銆倀askend 125");
-                            #endregion
-                        }
-                        catch (Exception ex)
-                        {
-                            LogHelper.Info(ex.Message + ex.StackTrace);
-                        }
+                        Func<TaskEntity, bool> myDelegate = (t) => RunTask(t);
+                        AutoThread.InvokeMethod(AutoThread.Instance, "ThreadTaskRun", new object[] { tag, myDelegate });
                         #endregion [鑴氭湰][20250325085542733][涓氬姟閫昏緫.浠诲姟涓嬪彂]
                     }
                     catch (Exception ex)
@@ -1087,7 +370,7 @@
                     {
                         #region    [鑴氭湰][20250531163716255][涓氬姟閫昏緫.澶勭悊MES浠诲姟绾跨▼.ResolveMesTask]
                         //mes 浠诲姟鎷嗗垎銆備竴娈典换鍔″拰 澶氭浠诲姟銆�-                        ToWMSMES.ResMesTask();
+                        ToWMSMES.ResMesTask(tag);
                         #endregion [鑴氭湰][20250531163716255][涓氬姟閫昏緫.澶勭悊MES浠诲姟绾跨▼.ResolveMesTask]
                     }
                     catch (Exception ex)
@@ -1104,15 +387,7 @@
             try
             {
                 #region    [鑴氭湰][20250605212104026][涓氬姟閫昏緫.SocketServer]
-                var host = System.Net.Dns.GetHostEntry(System.Net.Dns.GetHostName());
-                foreach (var ip in host.AddressList)
-                {
-                    if (ip.AddressFamily == System.Net.Sockets.AddressFamily.InterNetwork)
-                    {
-                        Console.WriteLine($"ip= {ip.ToString()}");
-                        new TcpServer(ip.ToString());
-                    }
-                }
+                AutoThread.InvokeMethod(AutoThread.Instance, "TaskEverythingRun");
                 #endregion [鑴氭湰][20250605212104026][涓氬姟閫昏緫.SocketServer]
             }
             catch (Exception ex)
@@ -1138,120 +413,8 @@
                     {
                         #region    [鑴氭湰][20250611223832523][涓氬姟閫昏緫.鍏夋爡澶勭悊]
                         // - 鍏夋爡浜や簰澶勭悊銆傘�
-                        var taskCOdes = new List<string> { "Sarrive", "Srelease", "Earrive", "Erelease" };
-                        TaskActRepository taskActRepository = new TaskActRepository();
-                        TaskRepository taskRepository = new TaskRepository();
-                        var requires = taskActRepository.FindList(x => taskCOdes.Contains(x.S_ACTION_CODE) && x.N_CREATEMETHOD == 0);
-                        foreach (var item in requires)
-                        {
-                            var tin = taskCOdes.IndexOf(item.S_ACTION_CODE);
-                            if (tin == -1)
-                            {
-                                item.N_CREATEMETHOD = -1;
-                                taskActRepository.Update(item);
-                                continue;
-                            }
-                            //var task = taskRepository.FindEntity(x => x.S_TASK_NO == item.S_TASK_NO);
-                            string loc = "";
-                            if (tin < 2)
-                            {
-                                loc = item.S_START_LOC;
-                            }
-                            else
-                            {
-                                loc = item.S_END_LOC;
-                            }
-                            if (loc == null) continue; else loc = loc.Trim();
-                            bool goin = tin % 2 == 0;
-                            bool continuuuuu = false;
-                            var dev = Settings.deviceInfos.Find(x => x.location.Contains(loc));
-                            if (dev != null)
-                            {
-                                var V = dev.location.ToList().FindIndex(x => x == loc) == 0;
-                                //杞﹁蛋浜� 寮�厜鏍�-                                if (!goin)
-                                {
-                                    if (dev.deviceType == 1)
-                                    {
-                                        LogHelper.Info($"{dev.deviceName}{(V ? "宸� : "鍙�)} 鍏夋爡{(goin ? "鍏抽棴" : "寮�惎")} 鐢宠銆� + string.Format("{0}{1}{2}", dev.deviceName + "." + (V ? "R02" : "R04"), "true", dev.deviceName + "Queue"));
-                                        Conn.榛樿Redis.SetValue(dev.deviceName + "." + (V ? "R02" : "R04"), "true", dev.deviceName + "Queue");
-
-                                    }
-                                    else if (dev.deviceType == 2)
-                                    {
-                                        LogHelper.Info($"{dev.deviceName}{(V ? "宸� : "鍙�)} 鍏夋爡{(goin ? "鍏抽棴" : "寮�惎")} 鐢宠銆� + string.Format("{0}{1}{2}", dev.deviceName + "." + (V ? "D1222" : "D1223"), "1", dev.deviceName + "Queue"));
-                                        Conn.榛樿Redis.SetValue(dev.deviceName + "." + (V ? "D1222" : "D1223"), "1", dev.deviceName + "Queue");
-                                    }
-
-                                    item.N_CREATEMETHOD = 1;
-                                    taskActRepository.Update(item);
-                                }
-                                //杞﹁杩涘叆浜や簰銆�-                                else
-                                {
-                                    if (dev.deviceType == 1)
-                                    {
-                                        var tf = Conn.榛樿Redis.GetValue(dev.deviceName + "." + (V ? "R50" : "R52"));//璇诲叧闂姸鎬�-                                        if (tf?.ToLower() == "true")
-                                        {
-                                            LogHelper.Info($"{dev.deviceName}{(V ? "宸� : "鍙�)} 鍏夋爡{(goin ? "鍏抽棴" : "寮�惎")} 鐢宠銆�宸茬粡鍏抽棴锛�);
-                                            continuuuuu = true;
-                                        }
-                                        else
-                                        {
-                                            LogHelper.Info($"{dev.deviceName}{(V ? "宸� : "鍙�)} 鍏夋爡{(goin ? "鍏抽棴" : "寮�惎")} 鐢宠銆� + string.Format("{0}{1}{2}", dev.deviceName + "." + (V ? "R01" : "R03"), "true", dev.deviceName + "Queue"));
-                                            Conn.榛樿Redis.SetValue(dev.deviceName + "." + (V ? "R01" : "R03"), "true", dev.deviceName + "Queue");
-                                        }
-
-                                    }
-                                    else if (dev.deviceType == 2)
-                                    {
-                                        var tf = Conn.榛樿Redis.GetValue(dev.deviceName + ".D1202");
-                                        int numm = int.Parse(string.IsNullOrEmpty(tf) ? "0" : tf);
-                                        if (TcpServer.GetBitdata(numm, (V ? 0 : 1)) == 1)
-                                        {
-                                            LogHelper.Info($"{dev.deviceName}{(V ? "宸� : "鍙�)} 鍏夋爡{(goin ? "鍏抽棴" : "寮�惎")} 鐢宠銆�宸茬粡鍏抽棴锛�);
-                                            continuuuuu = true;
-                                        }
-                                        else
-                                        {
-                                            LogHelper.Info($"{dev.deviceName}{(V ? "宸� : "鍙�)} 鍏夋爡{(goin ? "鍏抽棴" : "寮�惎")} 鐢宠銆� + string.Format("{0}{1}{2}", dev.deviceName + "." + (V ? "D1220" : "D1221"), dev.deviceName + "Queue"));
-                                            Conn.榛樿Redis.SetValue(dev.deviceName + "." + (V ? "D1220" : "D1221"), "1", dev.deviceName + "Queue");
-                                        }
-                                    }
-
-                                }
-
-                            }
-                            if (continuuuuu)
-                            {
-                                LogHelper.Info($"{item.S_TASK_NO}{item.S_ACTION_CODE} 杞﹁締鍙戦�缁х画浠诲姟锛�);
-                                continueTask(new HaiKangOrderInfo
-                                {
-                                    reqCode = item.S_ID.Replace("-", ""),
-                                    taskCode = item.S_TASK_NO
-                                });
-                                item.N_CREATEMETHOD = 1;
-                                taskActRepository.Update(item);
-                            }
-                        }
-                        System.Threading.Thread.Sleep(3000);
-                        //閲嶇疆淇″彿
-                        foreach (var dev in Settings.deviceInfos.FindAll(x => x.deviceType == 2))
-                        {
-                            var tf = Conn.榛樿Redis.GetValue(dev.deviceName + ".D1202");
-                            int numm = int.Parse(string.IsNullOrEmpty(tf) ? "0" : tf);
-                            if (TcpServer.GetBitdata(numm, 0) == 0)
-                            {
-                                Conn.榛樿Redis.SetValue(dev.deviceName + ".D1220", "0", dev.deviceName + "Queue");
-                                Conn.榛樿Redis.SetValue(dev.deviceName + ".D1222", "0", dev.deviceName + "Queue");
-                            }
-                            else if (TcpServer.GetBitdata(numm, 1) == 0)
-                            {
-                                Conn.榛樿Redis.SetValue(dev.deviceName + ".D1221", "0", dev.deviceName + "Queue");
-                                Conn.榛樿Redis.SetValue(dev.deviceName + ".D1223", "0", dev.deviceName + "Queue");
-                            }
-                        }
+                        Action<HaiKangOrderInfo> myDelegate = (t) => continueTask(t);
+                        AutoThread.InvokeMethod(AutoThread.Instance, "ThreadGrats", new object[] { tag, myDelegate });
 
                         // 鍙戦偅绉戜笅鏂欏厜鏍呫�
                         #endregion [鑴氭湰][20250611223832523][涓氬姟閫昏緫.鍏夋爡澶勭悊]
@@ -1282,66 +445,9 @@
                     try
                     {
                         #region    [鑴氭湰][20250616094224396][涓氬姟閫昏緫.娴佺▼2鐑鐞嗙倝杩涘嚭.1020绌烘涓嬬嚎]
-                        //1020  1023 绌烘涓嬬嚎
-                        foreach (var Bssx in new string[] { "1020", "1023" })
-                        {
-                            var RtaskState = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($"S{Bssx}Read.RtaskState"), typeof(System.UInt16));
-                            var RtaskState_LAST = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($"S{Bssx}Read.RtaskState_LAST"), typeof(System.UInt16));
-                            var R鎵樼洏鐮�= (System.String)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($"S{Bssx}Read.R鎵樼洏鐮�), typeof(System.String));
-                            Console.WriteLine($"{Bssx} 绌轰笅妫�祴锛氫换鍔$敵璇凤細{RtaskState}- 鏄惁宸插鐞嗭細{RtaskState_LAST}- 鎵樼洏鐮侊細{R鎵樼洏鐮亇");
-                            if (RtaskState == 3 && RtaskState_LAST == 0)
-                            {
-                                try
-                                {
-                                    foreach (var item in (Bssx == "1020" ? new string[] { "1004", "1012" } : new string[] { "1006", "1014" }))
-                                    {
-                                        var R5 = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($"S{item}Read.R5绌洪棽"), typeof(System.UInt16));
-                                        var R5绌洪棽_LAST = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($"S{item}Read.R5绌洪棽_LAST"), typeof(System.UInt16));
-                                        if (R5 == 5 && R5绌洪棽_LAST == 0)
-                                        {
-                                            var b = TaskProcess.CreateTask("", Bssx, item, "绌轰笂RGV", 5, new List<string> { R鎵樼洏鐮�}, "RGV");
-                                            if (b)
-                                            {
-                                                LogHelper.Debug($"杈撻�绾縍GV绌烘墭浠诲姟 from:{Bssx}>to {item}寮�鍒涘缓鎴愬姛");
-                                                RedisHelper.Add($"S{Bssx}Read.RtaskState_LAST", "1", out string msg);
-                                                //Conn.榛樿Redis.SetValue($"S{Bssx}Read.RtaskState_LAST", "1", $"S{Bssx}ReadQueue");
-                                                RedisHelper.Add($"S{item}Read.R5绌洪棽_LAST", "1", out string msg1);
-                                                //Conn.榛樿Redis.SetValue($"S{item}Read.R5绌洪棽_LAST", "1", $"S{item}ReadQueue");
-                                                break;
-                                            }
-                                        }
-                                        else if (R5 != 5 && R5绌洪棽_LAST == 1)
-                                        {
-                                            RedisHelper.Add($"S{item}Read.R5绌洪棽_LAST", "0", out string msg);
-                                            //Conn.榛樿Redis.SetValue($"S{item}Read.R5绌洪棽_LAST", "0", $"S{item}ReadQueue");
-                                        }
-                                    }
-                                    System.Threading.Thread.Sleep(1000);
-                                }
-                                catch (Exception ex)
-                                {
-                                    LogHelper.Error(ex.Message, ex);
-                                    Console.WriteLine(ex.Message + ex.StackTrace);
-                                }
-                            }
-                            else if (RtaskState != 3 && RtaskState_LAST == 1)
-                            {
-                                RedisHelper.Add($"S{Bssx}Read.RtaskState_LAST", "0", out string msg);
-                                //Conn.榛樿Redis.SetValue($"S{Bssx}Read.RtaskState_LAST", "0", $"S{Bssx}ReadQueue");
-                            }
-                            System.Threading.Thread.Sleep(2000);
-                        }
 
-                        foreach (var item in new string[] { "1004", "1012", "1006", "1014", "1026", "1017" })
-                        {
-                            var R5 = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($"S{item}Read.R5绌洪棽"), typeof(System.UInt16));
-                            var R5绌洪棽_LAST = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($"S{item}Read.R5绌洪棽_LAST"), typeof(System.UInt16));
-                            if (R5 != 5 && R5绌洪棽_LAST == 1)
-                            {
-                                RedisHelper.Add($"S{item}Read.R5绌洪棽_LAST", "0", out string msg);
-                                //Conn.榛樿Redis.SetValue($"S{item}Read.R5绌洪棽_LAST", "0", $"S{item}ReadQueue");
-                            }
-                        }
+                        //1020  1023 绌烘涓嬬嚎
+                        AutoThread.InvokeMethod(AutoThread.Instance, "ThreadEdown", new object[] { tag });
                         #endregion [鑴氭湰][20250616094224396][涓氬姟閫昏緫.娴佺▼2鐑鐞嗙倝杩涘嚭.1020绌烘涓嬬嚎]
                     }
                     catch (Exception ex)
@@ -1399,42 +505,9 @@
                     try
                     {
                         #region    [鑴氭湰][20250616094632985][涓氬姟閫昏緫.娴佺▼2鐑鐞嗙倝杩涘嚭.瀹氬瓙婊′笅绾縘
+
                         //瀹氬瓙婊′笅绾� 1008  1016   ->  1026
-                        foreach (var Bssx in new string[] { "1008", "1016" })
-                        {
-                            var RtaskState = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($"S{Bssx}Read.RtaskState"), typeof(System.UInt16));
-                            var RtaskState_LAST = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($"S{Bssx}Read.RtaskState_LAST"), typeof(System.UInt16));
-                            var R鎵樼洏鐮�= (System.String)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($"S{Bssx}Read.R鎵樼洏鐮�), typeof(System.String));
-                            Console.WriteLine($"{Bssx} 婊′笅妫�祴锛氫换鍔$敵璇凤細{RtaskState}- 鏄惁宸插鐞嗭細{RtaskState_LAST}- 鎵樼洏鐮侊細{R鎵樼洏鐮亇");
-                            if (RtaskState == 3 && RtaskState_LAST == 0)
-                            {
-                                var item = "1026";
-                                var R5 = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($"S{item}Read.R5绌洪棽"), typeof(System.UInt16));
-                                var R5绌洪棽_LAST = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($"S{item}Read.R5绌洪棽_LAST"), typeof(System.UInt16));
-                                if (R5 == 5 && R5绌洪棽_LAST == 0)
-                                {
-                                    var b = TaskProcess.CreateTask("", Bssx, item, "婊¤浆1026", 5, new List<string> { R鎵樼洏鐮�}, "RGV");
-                                    if (b)
-                                    {
-                                        RedisHelper.Add($"S{Bssx}Read.RtaskState_LAST", "1", out string msg);
-                                        RedisHelper.Add($"S{item}Read.R5绌洪棽_LAST", "1", out string msg2);
-                                        //Conn.榛樿Redis.SetValue($"S{Bssx}Read.RtaskState_LAST", "1", $"S{Bssx}ReadQueue");
-                                        //Conn.榛樿Redis.SetValue($"S{item}Read.R5绌洪棽_LAST", "1", $"S{item}ReadQueue");
-                                        break;
-                                    }
-                                }
-                                else if (R5 != 5 && R5绌洪棽_LAST == 1)
-                                {
-                                    RedisHelper.Add($"S{item}Read.R5绌洪棽_LAST", "0", out string msg2);
-                                }
-                            }
-                            else if (RtaskState != 3 && RtaskState_LAST == 1)
-                            {
-                                RedisHelper.Add($"S{Bssx}Read.RtaskState_LAST", "0", out string msg);
-                                //Conn.榛樿Redis.SetValue($"S{Bssx}Read.RtaskState_LAST", "0", $"S{Bssx}ReadQueue");
-                            }
-                            System.Threading.Thread.Sleep(2000);
-                        }
+                        AutoThread.InvokeMethod(AutoThread.Instance, "ThreadDdown", new object[] { tag });
                         #endregion [鑴氭湰][20250616094632985][涓氬姟閫昏緫.娴佺▼2鐑鐞嗙倝杩涘嚭.瀹氬瓙婊′笅绾縘
                     }
                     catch (Exception ex)
@@ -1463,41 +536,9 @@
                     try
                     {
                         #region    [鑴氭湰][20250616094511322][涓氬姟閫昏緫.娴佺▼2鐑鐞嗙倝杩涘嚭.杞瓙婊′笅绾縘
+
                         //杞瓙婊′笅绾� 1002  1010   - RGV2宸ヤ綅涓嶅彲鍒�1017 涓嶅彲涓嬪彂2宸ヤ綅浠诲姟銆�-                        foreach (var Bssx in new string[] { "1002", "1010" })
-                        {
-                            var RtaskState = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($"S{Bssx}Read.RtaskState"), typeof(System.UInt16));
-                            var RtaskState_LAST = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($"S{Bssx}Read.RtaskState_LAST"), typeof(System.UInt16));
-                            var R鎵樼洏鐮�= (System.String)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($"S{Bssx}Read.R鎵樼洏鐮�), typeof(System.String));
-                            Console.WriteLine($"{Bssx} 婊′笅妫�祴锛氫换鍔$敵璇凤細{RtaskState}- 鏄惁宸插鐞嗭細{RtaskState_LAST}- 鎵樼洏鐮侊細{R鎵樼洏鐮亇");
-                            if (RtaskState == 3 && RtaskState_LAST == 0)
-                            {
-                                var item = "1017";
-                                var R5 = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($"S{item}Read.R5绌洪棽"), typeof(System.UInt16));
-                                var R5绌洪棽_LAST = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($"S{item}Read.R5绌洪棽_LAST"), typeof(System.UInt16));
-                                if (R5 == 5 && R5绌洪棽_LAST == 0)
-                                {
-                                    var b = TaskProcess.CreateTask("", Bssx, item, "婊¤浆1017", 5, new List<string> { R鎵樼洏鐮�}, "RGV");
-                                    if (b)
-                                    {
-                                        RedisHelper.Add($"S{Bssx}Read.RtaskState_LAST", "1", out string msg);
-                                        RedisHelper.Add($"S{item}Read.R5绌洪棽_LAST", "1", out string msg1);
-                                        //Conn.榛樿Redis.SetValue($"S{Bssx}Read.RtaskState_LAST", "1", $"S{Bssx}ReadQueue");
-                                        //Conn.榛樿Redis.SetValue($"S{item}Read.R5绌洪棽_LAST", "1", $"S{item}ReadQueue");
-                                        break;
-                                    }
-                                }
-                                else if (R5 != 5 && R5绌洪棽_LAST == 1)
-                                {
-                                    RedisHelper.Add($"S{item}Read.R5绌洪棽_LAST", "0", out string msg1);
-                                }
-                            }
-                            else if (RtaskState != 3 && RtaskState_LAST == 1)
-                            {
-                                RedisHelper.Add($"S{Bssx}Read.RtaskState_LAST", "0", out string msg);
-                            }
-                            System.Threading.Thread.Sleep(2000);
-                        }
+                        AutoThread.InvokeMethod(AutoThread.Instance, "Thread0210Down", new object[] { tag });
                         #endregion [鑴氭湰][20250616094511322][涓氬姟閫昏緫.娴佺▼2鐑鐞嗙倝杩涘嚭.杞瓙婊′笅绾縘
                     }
                     catch (Exception ex)
@@ -1526,56 +567,9 @@
                     try
                     {
                         #region    [鑴氭湰][20250616095605911][涓氬姟閫昏緫.娴佺▼2鐑鐞嗙倝杩涘嚭.涓嬫枡浣嶆娴媇
+
                         //涓嬫枡浣嶆娴嬨�  1003  鍒颁綅鏃�鍐�鏍囪瘑淇″彿 骞�缁欐満姊版墜淇″彿銆� 
-                        foreach (var ssx in new string[] { "1003", "1005", "1011", "1013" })
-                        {
-                            var RArrive = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($"FNK1003051113.RArrive{ssx}"), typeof(System.UInt16));
-                            var RArriveLast = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($"FNK1003051113.RArrive{ssx}_LAST"), typeof(System.UInt16));
-                            if (RArrive == 1 && RArriveLast == 0)
-                            {
-                                if (ssx == "1005")
-                                {
-                                    tag.FNK1.D2215 = 1;
-                                    //tag.SF涓嬫枡浣�RArrive1005_LAST = 1;
-                                    RedisHelper.Add($"FNK1003051113.RArrive1005_LAST", "1", out string msg);
-
-                                    tag.SF涓嬫枡浣�WRelease1005 = 0;
-                                    tag.SF涓嬫枡浣�WSafe0305 = 0;
-                                }
-                                else if (ssx == "1003")
-                                {
-                                    tag.FNK1.D2210 = 1;
-                                    //tag.SF涓嬫枡浣�RArrive1003_LAST = 1;
-
-                                    RedisHelper.Add($"FNK1003051113.RArrive1003_LAST", "1", out string msg);
-                                    tag.SF涓嬫枡浣�WRelease1003 = 0;
-                                    tag.SF涓嬫枡浣�WSafe0305 = 0;
-                                }
-                                else if (ssx == "1013")
-                                {
-                                    tag.FNK2.D2215 = 1;
-                                    //tag.SF涓嬫枡浣�RArrive1013_LAST = 1;
-                                    RedisHelper.Add($"FNK1003051113.RArrive1013_LAST", "1", out string msg);
-
-                                    tag.SF涓嬫枡浣�WRelease1013 = 0;
-                                    tag.SF涓嬫枡浣�WSafe1113 = 0;
-                                }
-                                else if (ssx == "1011")
-                                {
-                                    tag.FNK2.D2210 = 1;
-                                    //tag.SF涓嬫枡浣�RArrive1011_LAST = 1;
-                                    RedisHelper.Add($"FNK1003051113.RArrive1011_LAST", "1", out string msg);
-
-                                    tag.SF涓嬫枡浣�WRelease1011 = 0;
-                                    tag.SF涓嬫枡浣�WSafe1113 = 0;
-                                }
-                            }
-                            else if (RArrive == 0 && RArriveLast == 1)
-                            {
-                                RedisHelper.Add($"FNK1003051113.RArrive{ssx}_LAST", "0", out string msg);
-                                //Conn.榛樿Redis.SetValue($"FNK1003051113.RArrive{ssx}_LAST", "0", $"FNK1003051113Queue");
-                            }
-                        }
+                        AutoThread.InvokeMethod(AutoThread.Instance, "Thread涓嬫枡浣嶆娴�, new object[] { tag });
                         #endregion [鑴氭湰][20250616095605911][涓氬姟閫昏緫.娴佺▼2鐑鐞嗙倝杩涘嚭.涓嬫枡浣嶆娴媇
                     }
                     catch (Exception ex)
@@ -1603,37 +597,9 @@
                     if (IsExitApp) { break; }
                     try
                     {
-
-                        ////2217 - 1003
                         #region    [鑴氭湰][20250616095709155][涓氬姟閫昏緫.娴佺▼2鐑鐞嗙倝杩涘嚭.1鍙稦NK鏈烘鎵嬪畬鎴怾
-                        if (tag.FNK1.D2217 == 1 && tag.FNK1.D2217_LAST == 0)
-                        {
-                            tag.FNK1.D2215 = 0;
-                            //tag.FNK1.D2212_LAST = 1;
-                            RedisHelper.Add($"p鍙戦偅绉�涓嬬嚎.D2217_LAST", "1", out string msg);
 
-                            tag.SF涓嬫枡浣�WRelease1005 = 1;
-                            tag.SF涓嬫枡浣�WSafe0305 = 1;
-                        }
-                        else if (tag.FNK1.D2217 == 0 && tag.FNK1.D2217_LAST == 1)
-                            //tag.FNK1.D2217_LAST = 0;
-                            RedisHelper.Add($"p鍙戦偅绉�涓嬬嚎.D2217_LAST", "0", out string msg);
-
-                        if (tag.FNK1.D2212 == 1 && tag.FNK1.D2212_LAST == 0)
-                        {
-                            tag.FNK1.D2210 = 0;
-                            //tag.FNK1.D2217_LAST = 1;
-
-                            RedisHelper.Add($"p鍙戦偅绉�涓嬬嚎.D2212_LAST", "1", out string msg);
-                            tag.SF涓嬫枡浣�WRelease1003 = 1;
-                            tag.SF涓嬫枡浣�WSafe0305 = 1;
-                        }
-                        else if (tag.FNK1.D2212 == 0 && tag.FNK1.D2212_LAST == 1)
-                        {
-                            //tag.FNK1.D2212_LAST = 0;
-                            RedisHelper.Add($"p鍙戦偅绉�涓嬬嚎.D2212_LAST", "1", out string msg);
-                        }
-
+                        AutoThread.InvokeMethod(AutoThread.Instance, "ThreadFNK1Over", new object[] { tag });
                         #endregion [鑴氭湰][20250616095709155][涓氬姟閫昏緫.娴佺▼2鐑鐞嗙倝杩涘嚭.1鍙稦NK鏈烘鎵嬪畬鎴怾
                     }
                     catch (Exception ex)
@@ -1662,32 +628,8 @@
                     try
                     {
                         #region    [鑴氭湰][20250616095733680][涓氬姟閫昏緫.娴佺▼2鐑鐞嗙倝杩涘嚭.2鍙稦NK鏈烘鎵嬪畬鎴怾
-                        if (tag.FNK2.D2217 == 1 && tag.FNK2.D2217_LAST == 0)
-                        {
-                            tag.FNK2.D2215 = 0;
-                            //tag.FNK2.D2212_LAST = 1;
-                            RedisHelper.Add($"p鍙戦偅绉�涓嬬嚎.D2217_LAST", "1", out string msg);
 
-                            tag.SF涓嬫枡浣�WRelease1013 = 1;
-                            tag.SF涓嬫枡浣�WSafe1113 = 1;
-                        }
-                        else if (tag.FNK2.D2217 == 0 && tag.FNK2.D2217_LAST == 1)
-                            //tag.FNK2.D2217_LAST = 0;
-                            RedisHelper.Add($"p鍙戦偅绉�涓嬬嚎.D2217_LAST", "0", out string msg);
-                        if (tag.FNK2.D2212 == 1 && tag.FNK2.D2212_LAST == 0)
-                        {
-                            tag.FNK2.D2210 = 0;
-                            //tag.FNK2.D2217_LAST = 1;
-                            RedisHelper.Add($"p鍙戦偅绉�涓嬬嚎.D2212_LAST", "1", out string msg);
-
-                            tag.SF涓嬫枡浣�WRelease1011 = 1;
-                            tag.SF涓嬫枡浣�WSafe1113 = 1;
-                        }
-                        else if (tag.FNK2.D2212 == 0 && tag.FNK2.D2212_LAST == 1)
-                        {
-                            //tag.FNK2.D2212_LAST = 0;
-                            RedisHelper.Add($"p鍙戦偅绉�涓嬬嚎.D2212_LAST", "0", out string msg);
-                        }
+                        AutoThread.InvokeMethod(AutoThread.Instance, "ThreadFNK2Over", new object[] { tag });
                         #endregion [鑴氭湰][20250616095733680][涓氬姟閫昏緫.娴佺▼2鐑鐞嗙倝杩涘嚭.2鍙稦NK鏈烘鎵嬪畬鎴怾
                     }
                     catch (Exception ex)
@@ -1717,7 +659,7 @@
                     {
                         #region    [鑴氭湰][20250617085708084][涓氬姟閫昏緫.娴佺▼2鐑鐞嗙倝杩涘嚭.1019杞弧鍑鸿緭閫佺嚎.Program1]
 
-                        Console.WriteLine($"1019浠诲姟鐘舵�锛歿tag.SA1019.RtaskState}- barcode:{tag.SA1019.R鎵樼洏鐮亇- 绌洪棽{tag.SA1019.R5绌洪棽}");
+                        AutoThread.InvokeMethod(AutoThread.Instance, "Thread1019Down", new object[] { tag });
                         #endregion [鑴氭湰][20250617085708084][涓氬姟閫昏緫.娴佺▼2鐑鐞嗙倝杩涘嚭.1019杞弧鍑鸿緭閫佺嚎.Program1]
                     }
                     catch (Exception ex)
@@ -1747,7 +689,7 @@
                     {
                         #region    [鑴氭湰][20250617085712101][涓氬姟閫昏緫.娴佺▼2鐑鐞嗙倝杩涘嚭.1025agv涓婄┖.Program1]
 
-                        Console.WriteLine($"SA1025 浠诲姟鐘舵�锛歿tag.SA1025.RtaskState}- 绌洪棽{tag.SA1025.R5绌洪棽}");
+                        AutoThread.InvokeMethod(AutoThread.Instance, "Thread1025Up", new object[] { tag });
                         #endregion [鑴氭湰][20250617085712101][涓氬姟閫昏緫.娴佺▼2鐑鐞嗙倝杩涘嚭.1025agv涓婄┖.Program1]
                     }
                     catch (Exception ex)
@@ -1777,7 +719,7 @@
                     {
                         #region    [鑴氭湰][20250617085750712][涓氬姟閫昏緫.娴佺▼2鐑鐞嗙倝杩涘嚭.1022agv涓婄┖.Program1]
 
-                        Console.WriteLine($"SA1022 浠诲姟鐘舵�锛歿tag.SA1022.RtaskState}- 绌洪棽{tag.SA1022.R5绌洪棽}");
+                        AutoThread.InvokeMethod(AutoThread.Instance, "Thread1022Up", new object[] { tag });
                         #endregion [鑴氭湰][20250617085750712][涓氬姟閫昏緫.娴佺▼2鐑鐞嗙倝杩涘嚭.1022agv涓婄┖.Program1]
                     }
                     catch (Exception ex)
@@ -1807,7 +749,7 @@
                     {
                         #region    [鑴氭湰][20250617085800942][涓氬姟閫昏緫.娴佺▼2鐑鐞嗙倝杩涘嚭.1030涓嬫瘝鎵�Program1]
 
-                        Console.WriteLine($"SA1030 浠诲姟鐘舵�锛歿tag.SA1030.RtaskState}- 绌洪棽{tag.SA1030.R5绌洪棽}-->瀵瑰簲缁堢偣2001>绌洪棽5锛歿tag.SA2001.R5绌洪棽}");
+                        AutoThread.InvokeMethod(AutoThread.Instance, "Thread1030Down", new object[] { tag });
                         #endregion [鑴氭湰][20250617085800942][涓氬姟閫昏緫.娴佺▼2鐑鐞嗙倝杩涘嚭.1030涓嬫瘝鎵�Program1]
                     }
                     catch (Exception ex)
@@ -1837,8 +779,66 @@
                     {
                         #region    [鑴氭湰][20250617085809982][涓氬姟閫昏緫.娴佺▼2鐑鐞嗙倝杩涘嚭.2030杈撻�绾夸笅瀹氬瓙.Program1]
 
-                        Console.WriteLine($"SA2030 浠诲姟鐘舵�锛歿tag.SA2030.RtaskState}- 绌洪棽{tag.SA2030.R5绌洪棽} - barcode:{tag.SA2030.R鎵樼洏鐮亇");
+                        AutoThread.InvokeMethod(AutoThread.Instance, "Thread2030Down", new object[] { tag });
                         #endregion [鑴氭湰][20250617085809982][涓氬姟閫昏緫.娴佺▼2鐑鐞嗙倝杩涘嚭.2030杈撻�绾夸笅瀹氬瓙.Program1]
+                    }
+                    catch (Exception ex)
+                    {
+                        Conn.榛樿鏃ュ織.Error(ex.ToString());
+                    }
+                    finally
+                    {
+                        System.Threading.Thread.Sleep(3000);
+                    }
+                }
+                ExitJudgeStack.TryPop(out int exitJudgeVal);
+            });
+            //鎵ц澶氭
+            for (int iii = 0; iii < 1; iii++)
+            {
+                if (IsExitApp) { break; }
+                try
+                {
+                    #region    [鑴氭湰][20250323151832119][涓氬姟閫昏緫.Program4]
+
+                    //LogHelper.Info($"<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>");
+                    //LogHelper.Info($"<<<<<<<<<<<<<<<<<绋嬪簭路鍚姩>>>>>>>>>>>>>>");
+
+                    //// 浣跨敤鎷︽埅鍣�+                    //var interceptor = new ConsoleInterceptor();
+                    //Console.SetOut(interceptor);
+
+                    //LogHelper.Info($"<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>");
+                    //AnsiConsole.Markup("[underline red]Hello[/] World!");
+                    // AnsiConsole.Markup("[underline red]Hello[/] World!");
+                    #endregion [鑴氭湰][20250323151832119][涓氬姟閫昏緫.Program4]
+                }
+                catch (Exception ex)
+                {
+                    Conn.榛樿鏃ュ織.Error(ex.ToString());
+                }
+                finally
+                {
+                    System.Threading.Thread.Sleep(3000);
+                }
+            }
+            /// <summary>
+            /// 绋嬪簭鐗囨:鏂扮嚎绋嬫�绾�+            /// 鎻忚堪:1
+            /// </summary>
+            System.Threading.Tasks.Task.Factory.StartNew(() =>
+            {
+                System.Threading.Thread.CurrentThread.IsBackground = true;
+                ExitJudgeStack.Push(0);
+                //涓�洿鎵ц锛岀洿鍒版弧瓒崇粨鏉熸潯浠�+                while (true)
+                {
+                    if (IsExitApp) { break; }
+                    try
+                    {
+                        #region    [鑴氭湰][20250708095248653][涓氬姟閫昏緫.鏂扮嚎绋嬫�绾縘
+                        AutoThread.InvokeMethod(AutoThread.Instance, "ThreaTotal", new object[] { tag });
+                        #endregion [鑴氭湰][20250708095248653][涓氬姟閫昏緫.鏂扮嚎绋嬫�绾縘
                     }
                     catch (Exception ex)
                     {
@@ -1955,6 +955,7 @@
                     Device.RGV?.Stop();
                     Device.p鍙戦偅绉�涓嬬嚎?.Stop();
                     Device.p鍙戦偅绉�涓婄嚎?.Stop();
+                    Device.p鍙戦偅绉�涓婄嚎?.Stop();
                 }
                 catch (Exception ex)
                 {
@@ -2007,6 +1008,7 @@
                         || (Device.RGV == null ? false : Device.RGV.State != GZ.Device.PLC.PlcRunState.Stoped)
                         || (Device.p鍙戦偅绉�涓嬬嚎 == null ? false : Device.p鍙戦偅绉�涓嬬嚎.State != GZ.Device.PLC.PlcRunState.Stoped)
                         || (Device.p鍙戦偅绉�涓婄嚎 == null ? false : Device.p鍙戦偅绉�涓婄嚎.State != GZ.Device.PLC.PlcRunState.Stoped)
+                        || (Device.p鍙戦偅绉�涓婄嚎 == null ? false : Device.p鍙戦偅绉�涓婄嚎.State != GZ.Device.PLC.PlcRunState.Stoped)
                     )
                     {
                         System.Threading.Thread.Sleep(1000);
@@ -2041,6 +1043,38 @@
         }
         #endregion
 
+        #region View2浜嬩欢
+        /// <summary>
+        /// View2鎵撳紑浜嬩欢
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        public void View2_LoadEvent(object sender, RoutedEventArgs e)
+        {
+
+
+
+        }
+        /// <summary>
+        /// View2鍏抽棴浜嬩欢
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        public void View2_CloseEvent(object sender, System.ComponentModel.CancelEventArgs e)
+        {
+
+
+        }
+        /// <summary>
+        /// View2鍒濆鍖�+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        public void View2_Init(object sender, RoutedEventArgs e)
+        {
+        }
+        #endregion
+
         #region 鍒囨崲tab椤�         public void tab_SelectionChanged(object sender, EventArgs e)
         {
@@ -2060,7 +1094,7 @@
                 System.Net.HttpListenerResponse response = context.Response;
                 switch (request.LocalEndPoint.ToString())
                 {
-                    case "10.221.55.116:8808":
+                    case "10.221.55.117:8808":
                         {
                             using (var reader = new System.IO.StreamReader(request.InputStream, System.Text.Encoding.UTF8))
                             {
@@ -2161,7 +1195,7 @@
                                         statusCode = System.Net.HttpStatusCode.OK;
                                         // 澶嶅埗鍒癱ase 涓�                                         //var _ when System.Text.RegularExpressions.Regex.IsMatch(path, @"\.(html|ico|js|css)(\?.*)?$", System.Text.RegularExpressions.RegexOptions.IgnoreCase)
-                                        var filePath = System.IO.Path.Combine("Static", path.Substring(1));
+                                        var filePath = /*Directory.GetCurrentDirectory() + "\\Static" + "\\" + path.Substring(1);*/System.IO.Path.Combine(Directory.GetCurrentDirectory() + "\\Static", path.Substring(1));
                                         return File.ReadAllText(filePath);
                                     }
                             }

--
Gitblit v1.9.1