| | |
| | | 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> |
| | |
| | | |
| | | 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); |
| | | LogHelper.Info("<<<<<<<<<<<Runnnnnnnnnnnnninggggg>>>>>>>>>>"); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | Conn.é»è®¤æ¥å¿.Error(ex.ToString()); |
| | | } |
| | | View1_Init(sender, e); |
| | | |
| | | |
| | | /// <summary> |
| | | /// ç¨åºç段:åå§åé
ç½® |
| | |
| | | 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) |
| | |
| | | } |
| | | ExitJudgeStack.TryPop(out int exitJudgeVal); |
| | | }); |
| | | //æ§è¡å¤æ¬¡ |
| | | for (int iii = 0; iii < 1; iii++) |
| | | { |
| | | if (IsExitApp) { break; } |
| | | try |
| | | { |
| | | #region [èæ¬][20250323151832119][ä¸å¡é»è¾.Program4] |
| | | //Conn.é»è®¤Redis.SetValue("西é¨å2.Param3","300","西é¨å2Queue"); |
| | | //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 |
| | | /// æè¿°: |
| | |
| | | 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) |
| | |
| | | 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) |
| | |
| | | // if (di.deviceType == 2 || di.deviceType == 1) |
| | | // RunafterMac(di,true); |
| | | /// TODO mes ä¸åã æ¹ææºæ¢°èçæ§ - çæ§ç©ºçè¿æ¯æ»¡ç - èå¨mes ä»»å¡ã |
| | | |
| | | //LogHelper.Info($"设å¤ç¶æï¼ç»´å¸å°1ï¼ç»´å¸å°æè1.State:{Device.ç»´å¸å°æè1.State} "); |
| | | //Device.ç»´å¸å°æè1.ReadPLC("ç»´å¸å°æè1.R50", out object value); |
| | | //LogHelper.Info($"设å¤ç¶æï¼ç»´å¸å°1ï¼ç»´å¸å°æè1.R50:{value?.ToString()} "); |
| | | |
| | | //LogHelper.Info($"设å¤ç¶æï¼ç»´å¸å°2ï¼ç»´å¸å°æè2.State:{Device.ç»´å¸å°æè2.State} "); |
| | | //Device.ç»´å¸å°æè2.ReadPLC("ç»´å¸å°æè2.R50", out value); |
| | | //LogHelper.Info($"设å¤ç¶æï¼ç»´å¸å°2ï¼ç»´å¸å°æè2.R50:{value?.ToString()} "); |
| | | |
| | | //LogHelper.Info($"设å¤ç¶æï¼æ·ç¬1ï¼Jsæ·é¡º1.State:{Device.Jsæ·é¡º1.State} "); |
| | | //Device.Jsæ·é¡º1.ReadPLC("Jsæ·é¡º1.D1202", out value); |
| | | //LogHelper.Info($"设å¤ç¶æï¼æ·ç¬1 Jsæ·é¡º1.D1202:{value?.ToString()} "); |
| | | |
| | | //LogHelper.Info($"设å¤ç¶æï¼æ·ç¬2ï¼Jsæ·é¡º2.State:{Device.Jsæ·é¡º2.State} "); |
| | | //Device.Jsæ·é¡º2.ReadPLC("Jsæ·é¡º2.D1202", out value); |
| | | //LogHelper.Info($"设å¤ç¶æï¼æ·ç¬2 Jsæ·é¡º2.D1202:{value?.ToString()} "); |
| | | |
| | | |
| | | #endregion [èæ¬][20250325085810885][ä¸å¡é»è¾.ç¬¬ä¸æ 段.èªæµè½¬æµç¨] |
| | | } |
| | | catch (Exception ex) |
| | |
| | | { |
| | | #region [èæ¬][20250325083149366][ä¸å¡é»è¾.ç¬¬ä¸æ 段.ç»´ç³»å°1å·.ç»´å¸å°æè1L] |
| | | |
| | | 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("ç»´å¸å°æè1.R10", "true", "ç»´å¸å°æè1Queue"); |
| | | 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][ä¸å¡é»è¾.ç¬¬ä¸æ 段.ç»´ç³»å°1å·.ç»´å¸å°æè1L] |
| | | } |
| | | catch (Exception ex) |
| | |
| | | try |
| | | { |
| | | #region [èæ¬][20250610002047005][ä¸å¡é»è¾.ç¬¬ä¸æ 段.ç»´ç³»å°1å·.ç»´å¸å°æè1R] |
| | | 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("ç»´å¸å°æè1.R10", "true", "ç»´å¸å°æè1Queue"); |
| | | 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][ä¸å¡é»è¾.ç¬¬ä¸æ 段.ç»´ç³»å°1å·.ç»´å¸å°æè1R] |
| | | } |
| | | catch (Exception ex) |
| | |
| | | { |
| | | #region [èæ¬][20250325083315503][ä¸å¡é»è¾.ç¬¬ä¸æ 段.ç»´ç³»å°2å·.ç»´å¸å°æè2L] |
| | | |
| | | 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("ç»´å¸å°æè1.R10", "true", "ç»´å¸å°æè1Queue"); |
| | | 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][ä¸å¡é»è¾.ç¬¬ä¸æ 段.ç»´ç³»å°2å·.ç»´å¸å°æè2L] |
| | | } |
| | | catch (Exception ex) |
| | |
| | | try |
| | | { |
| | | #region [èæ¬][20250610002647095][ä¸å¡é»è¾.ç¬¬ä¸æ 段.ç»´ç³»å°2å·.ç»´å¸å°æè2R] |
| | | 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("ç»´å¸å°æè1.R10", "true", "ç»´å¸å°æè1Queue"); |
| | | tag.wxr2.R11 = true; |
| | | tag.wxr2.R46_LAST = false; |
| | | } |
| | | else |
| | | { |
| | | //æ¥è¦ã |
| | | } |
| | | } |
| | | else { TcpServer.TcpServerSend(VERX.deviceNo[1], GZ.Device.PLC.PlcHelper.Hex2Bin("544F4E")); } |
| | | } |
| | | } |
| | | } |
| | | #endregion [èæ¬][20250610002647095][ä¸å¡é»è¾.ç¬¬ä¸æ 段.ç»´ç³»å°2å·.ç»´å¸å°æè2R] |
| | | } |
| | | 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][ä¸å¡é»è¾.ç¬¬ä¸æ 段.ç»´ç³»å°2å·.ç»´å¸å°æè2R] |
| | | LogHelper.Info($"æµè¯çº¿ç¨è¿è¡ç¶ææ¥å¿ããããã"); |
| | | AutoThread.InvokeMethod(AutoThread.Instance, "Threadwxr2R", new object[] { tag }); |
| | | #endregion [èæ¬][20250610002647095][ä¸å¡é»è¾.ç¬¬ä¸æ 段.ç»´ç³»å°2å·.ç»´å¸å°æè2R] |
| | | } |
| | | catch (Exception ex) |
| | |
| | | //ä¸ç´æ§è¡ï¼ç´å°æ»¡è¶³ç»ææ¡ä»¶ |
| | | 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å
çµç¶æ}ã æ
é代ç ï¼ã{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 æè´§ å°±2 åã 1 没货 å°±2 å¸è´§ï¼ é½æè´§ å°±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å¸è´§ãã"); |
| | | //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 å125"); |
| | | Conn.é»è®¤Redis.SetValue("RGV.taskend", "125", "RGVQueue", false); |
| | | } |
| | | else //1mei ä»»å¡ 2 没任å¡ã |
| | | { |
| | | LogHelper.Info($"æ¥çRGV 1工使²¡ä»»å¡,å·¥ä½2 乿²¡ä»»å¡ãä¼å
1å·¥ä½ç»ç¹1017ä»»å¡ãã"); |
| | | //ãä¸ 1017ä»»å¡ ç»1å·å·¥ä½ã |
| | | 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 乿²¡ä»»å¡ã1å·¥ä½ä¸ä»»å¡{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 å0"); |
| | | RedisHelper.Add($"RGV.bit1taskOver_LAST", "0", out string msg); |
| | | LogHelper.Info($"{e1017first.S_TASK_NO}> taskend å125"); |
| | | //tag.RGV.taskend=125 |
| | | Conn.é»è®¤Redis.SetValue("RGV.taskend", "125", "RGVQueue", false); |
| | | |
| | | } |
| | | } |
| | | } |
| | | LogHelper.Info($"rgv å¤ç宿ãtaskend 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) |
| | |
| | | { |
| | | #region [èæ¬][20250531163716255][ä¸å¡é»è¾.å¤çMESä»»å¡çº¿ç¨.ResolveMesTask] |
| | | //mes 任塿åã䏿®µä»»å¡å 夿®µä»»å¡ã |
| | | ToWMSMES.ResMesTask(); |
| | | ToWMSMES.ResMesTask(tag); |
| | | #endregion [èæ¬][20250531163716255][ä¸å¡é»è¾.å¤çMESä»»å¡çº¿ç¨.ResolveMesTask] |
| | | } |
| | | catch (Exception ex) |
| | |
| | | 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) |
| | |
| | | { |
| | | #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][ä¸å¡é»è¾.å
æ
å¤ç] |
| | |
| | | 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($"è¾é线RGV空æä»»å¡ 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) |
| | |
| | | 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) |
| | |
| | | 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) |
| | |
| | | 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) |
| | |
| | | if (IsExitApp) { break; } |
| | | try |
| | | { |
| | | |
| | | ////2217 - 1003 |
| | | #region [èæ¬][20250616095709155][ä¸å¡é»è¾.æµç¨2çå¤ççè¿åº.1å·FNKæºæ¢°æå®æ] |
| | | if (tag.FNK1.D2217 == 1 && tag.FNK1.D2217_LAST == 0) |
| | | { |
| | | tag.FNK1.D2215 = 0; |
| | | //tag.FNK1.D2212_LAST = 1; |
| | | RedisHelper.Add($"påé£ç§1ä¸çº¿.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åé£ç§1ä¸çº¿.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åé£ç§1ä¸çº¿.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åé£ç§1ä¸çº¿.D2212_LAST", "1", out string msg); |
| | | } |
| | | |
| | | AutoThread.InvokeMethod(AutoThread.Instance, "ThreadFNK1Over", new object[] { tag }); |
| | | #endregion [èæ¬][20250616095709155][ä¸å¡é»è¾.æµç¨2çå¤ççè¿åº.1å·FNKæºæ¢°æå®æ] |
| | | } |
| | | catch (Exception ex) |
| | |
| | | try |
| | | { |
| | | #region [èæ¬][20250616095733680][ä¸å¡é»è¾.æµç¨2çå¤ççè¿åº.2å·FNKæºæ¢°æå®æ] |
| | | if (tag.FNK2.D2217 == 1 && tag.FNK2.D2217_LAST == 0) |
| | | { |
| | | tag.FNK2.D2215 = 0; |
| | | //tag.FNK2.D2212_LAST = 1; |
| | | RedisHelper.Add($"påé£ç§2ä¸çº¿.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åé£ç§2ä¸çº¿.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åé£ç§2ä¸çº¿.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åé£ç§2ä¸çº¿.D2212_LAST", "0", out string msg); |
| | | } |
| | | AutoThread.InvokeMethod(AutoThread.Instance, "ThreadFNK2Over", new object[] { tag }); |
| | | #endregion [èæ¬][20250616095733680][ä¸å¡é»è¾.æµç¨2çå¤ççè¿åº.2å·FNKæºæ¢°æå®æ] |
| | | } |
| | | catch (Exception ex) |
| | |
| | | { |
| | | #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) |
| | |
| | | { |
| | | #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) |
| | |
| | | { |
| | | #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) |
| | |
| | | { |
| | | #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) |
| | |
| | | { |
| | | #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); |
| | | }); |
| | | /// <summary> |
| | | /// ç¨åºç段:Ipping |
| | | /// æè¿°:æ£æµIPå°åéæ |
| | | /// </summary> |
| | | System.Threading.Tasks.Task.Factory.StartNew(() => |
| | | { |
| | | System.Threading.Thread.CurrentThread.IsBackground = true; |
| | | ExitJudgeStack.Push(0); |
| | | //ä¸ç´æ§è¡ï¼ç´å°æ»¡è¶³ç»ææ¡ä»¶ |
| | | while (true) |
| | | { |
| | | if (IsExitApp) { break; } |
| | | try |
| | | { |
| | | #region [èæ¬][20250323151832119][ä¸å¡é»è¾.Ipping] |
| | | |
| | | //var hkr = AutoThread.InvokeMethod(AutoThread.Instance, "IsMachineOnline", new object[] { "192.168.1.103", 1000 }); |
| | | //Console.WriteLine("192.168.1.103 > " + hkr.ToString()); |
| | | #endregion [èæ¬][20250323151832119][ä¸å¡é»è¾.Ipping] |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | Conn.é»è®¤æ¥å¿.Error(ex.ToString()); |
| | | } |
| | | finally |
| | | { |
| | | System.Threading.Thread.Sleep(3000); |
| | | } |
| | | } |
| | | ExitJudgeStack.TryPop(out int exitJudgeVal); |
| | | }); |
| | | /// <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, Device }); |
| | | #endregion [èæ¬][20250708095248653][ä¸å¡é»è¾.æ°çº¿ç¨æ»çº¿] |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | |
| | | Device.A2030å货交äº?.Stop(); |
| | | Device.RGV?.Stop(); |
| | | Device.påé£ç§2ä¸çº¿?.Stop(); |
| | | Device.påé£ç§3ä¸çº¿?.Stop(); |
| | | Device.Då®å1å·æºæ¢°æ?.Stop(); |
| | | Device.Då®å2å·æºæ¢°æ?.Stop(); |
| | | Device.S2027Read?.Stop(); |
| | | Device.S2020Read?.Stop(); |
| | | Device.S2013Read?.Stop(); |
| | | Device.S2027Write?.Stop(); |
| | | Device.S2020Write?.Stop(); |
| | | Device.S2013Write?.Stop(); |
| | | Device.S2001Write?.Stop(); |
| | | Device.S2008Write?.Stop(); |
| | | Device.S3001Read?.Stop(); |
| | | Device.S3006Read?.Stop(); |
| | | Device.S3005Read?.Stop(); |
| | | Device.S3010Read?.Stop(); |
| | | Device.A3001æ¾è´§äº¤äº?.Stop(); |
| | | Device.A3005å货交äº?.Stop(); |
| | | Device.A3006æ¾è´§äº¤äº?.Stop(); |
| | | Device.A3010å货交äº?.Stop(); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | |
| | | || (Device.A2030åè´§äº¤äº == null ? false : Device.A2030å货交äº.State != GZ.Device.PLC.PlcRunState.Stoped) |
| | | || (Device.RGV == null ? false : Device.RGV.State != GZ.Device.PLC.PlcRunState.Stoped) |
| | | || (Device.påé£ç§2ä¸çº¿ == null ? false : Device.påé£ç§2ä¸çº¿.State != GZ.Device.PLC.PlcRunState.Stoped) |
| | | || (Device.påé£ç§3ä¸çº¿ == null ? false : Device.påé£ç§3ä¸çº¿.State != GZ.Device.PLC.PlcRunState.Stoped) |
| | | || (Device.Då®å1å·æºæ¢°æ == null ? false : Device.Då®å1å·æºæ¢°æ.State != GZ.Device.PLC.PlcRunState.Stoped) |
| | | || (Device.Då®å2å·æºæ¢°æ == null ? false : Device.Då®å2å·æºæ¢°æ.State != GZ.Device.PLC.PlcRunState.Stoped) |
| | | || (Device.S2027Read == null ? false : Device.S2027Read.State != GZ.Device.PLC.PlcRunState.Stoped) |
| | | || (Device.S2020Read == null ? false : Device.S2020Read.State != GZ.Device.PLC.PlcRunState.Stoped) |
| | | || (Device.S2013Read == null ? false : Device.S2013Read.State != GZ.Device.PLC.PlcRunState.Stoped) |
| | | || (Device.S2027Write == null ? false : Device.S2027Write.State != GZ.Device.PLC.PlcRunState.Stoped) |
| | | || (Device.S2020Write == null ? false : Device.S2020Write.State != GZ.Device.PLC.PlcRunState.Stoped) |
| | | || (Device.S2013Write == null ? false : Device.S2013Write.State != GZ.Device.PLC.PlcRunState.Stoped) |
| | | || (Device.S2001Write == null ? false : Device.S2001Write.State != GZ.Device.PLC.PlcRunState.Stoped) |
| | | || (Device.S2008Write == null ? false : Device.S2008Write.State != GZ.Device.PLC.PlcRunState.Stoped) |
| | | || (Device.S3001Read == null ? false : Device.S3001Read.State != GZ.Device.PLC.PlcRunState.Stoped) |
| | | || (Device.S3006Read == null ? false : Device.S3006Read.State != GZ.Device.PLC.PlcRunState.Stoped) |
| | | || (Device.S3005Read == null ? false : Device.S3005Read.State != GZ.Device.PLC.PlcRunState.Stoped) |
| | | || (Device.S3010Read == null ? false : Device.S3010Read.State != GZ.Device.PLC.PlcRunState.Stoped) |
| | | || (Device.A3001æ¾è´§äº¤äº == null ? false : Device.A3001æ¾è´§äº¤äº.State != GZ.Device.PLC.PlcRunState.Stoped) |
| | | || (Device.A3005åè´§äº¤äº == null ? false : Device.A3005å货交äº.State != GZ.Device.PLC.PlcRunState.Stoped) |
| | | || (Device.A3006æ¾è´§äº¤äº == null ? false : Device.A3006æ¾è´§äº¤äº.State != GZ.Device.PLC.PlcRunState.Stoped) |
| | | || (Device.A3010åè´§äº¤äº == null ? false : Device.A3010å货交äº.State != GZ.Device.PLC.PlcRunState.Stoped) |
| | | ) |
| | | { |
| | | System.Threading.Thread.Sleep(1000); |
| | |
| | | } |
| | | #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) |
| | | { |
| | |
| | | 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)) |
| | | { |
| | |
| | | statusCode = System.Net.HttpStatusCode.OK; |
| | | // å¤å¶å°case ä¸ |
| | | //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); |
| | | } |
| | | } |