| | |
| | | using GZ.DB.IRepository.OIDATABASE; |
| | | using GZ.DB.Repository.OIDATABASE; |
| | | using static System.Windows.Forms.VisualStyles.VisualStyleElement; |
| | | using System.Windows.Interop; |
| | | using static System.Windows.Forms.VisualStyles.VisualStyleElement.TextBox; |
| | | |
| | | namespace GZ.Projects.AuxAllWCS |
| | | { |
| | |
| | | } |
| | | try |
| | | { |
| | | LogHelper.Info("ä»»å¡ä¸å Rgv ä»»å¡ è¿å
¥"); |
| | | #region Rgv |
| | | |
| | | LogHelper.Info($"æ¥çRGV çµéï¼ã{tag.RGV.Rå½åçµé}ã å
çµç¶æï¼ã{tag.RGV.Rå
çµç¶æ}ã æ
é代ç ï¼ã{tag.RGV.RgvrunError}ã"); |
| | | |
| | | if (tag.RGV.taskend == 125) |
| | | { |
| | | System.Threading.Thread.Sleep(3000); |
| | | return; |
| | | } |
| | | LogHelper.Info("ä»»å¡ä¸å Rgv ä»»å¡ è¿å
¥"); |
| | | |
| | | var task1Isrun = false; |
| | | if (tag.RGV.ReadTask1No > 0 && tag.RGV.bit1taskOver != 1) |
| | | { |
| | |
| | | if (task2Isrun) |
| | | mes += tag.RGV.ReadTask2No + "æ§è¡ä¸..."; |
| | | LogHelper.Info($"{mes} ä¸è½ä¸åæ°ä»»å¡ã"); |
| | | throw new Exception($"{mes} ä¸è½ä¸åæ°ä»»å¡ã"); |
| | | System.Threading.Thread.Sleep(3000); |
| | | return; |
| | | } |
| | | var thisOver = 0; |
| | | TaskEntity task1 = null; |
| | |
| | | if (task1.S_B_STATE == "åè´§å®æ") |
| | | { |
| | | task1.S_B_STATE = "宿"; |
| | | tag.RGV.ReadTask1No = 0; |
| | | } |
| | | else |
| | | { |
| | | task1.S_B_STATE = "åè´§å®æ"; |
| | | } |
| | | tag.RGV.bit1taskOver = 0; |
| | | 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); |
| | |
| | | if (task2.S_B_STATE == "åè´§å®æ") |
| | | { |
| | | task2.S_B_STATE = "宿"; |
| | | tag.RGV.ReadTask2No = 0; |
| | | } |
| | | else |
| | | { |
| | | task2.S_B_STATE = "åè´§å®æ"; |
| | | } |
| | | tag.RGV.bit2taskOver = 0; |
| | | 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å·¥ä½ä»»å¡åå¤ç"); |
| | |
| | | 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); |
| | | } |
| | | } |
| | | //{ |
| | | // 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(); |
| | |
| | | LogHelper.Info($"{task1.S_TASK_NO}> end å 125"); |
| | | Conn.é»è®¤Redis.SetValue("RGV.taskend", "125", "RGVQueue", false); |
| | | } |
| | | else //1æä»»å¡ 2 没任å¡ã |
| | | 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)) |
| | | |
| | | // 2å· ä¼å
ç» 1020 1008 1016 |
| | | var t2 = tklist.OrderBy(x => x.T_CREATE).ToList().Find(x => x.S_START_LOC == "1020" || x.S_START_LOC == "1008" || x.S_START_LOC == "1016"); |
| | | if (t2 != null) |
| | | { |
| | | 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); |
| | | } |
| | | LogHelper.Info($"æ¥çRGV1 æä»»å¡{task1.S_TASK_NO},å·¥ä½2 没任å¡ã æ¾1020 1008 1016åè´§ä»»å¡{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) |
| | | ////2 妿æåä¾§åè´§ä»»å¡ãå°±åãæ²¡æ |
| | | //else if (leftSide.Contains(task1.S_START_LOC)) |
| | | //{ |
| | | // leftSide.Remove(task1.S_START_LOC); |
| | | // var lsde = leftSide.FirstOrDefault(); |
| | | // 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); |
| | | // 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 没任å¡ã æ¾åä¾§ 1002,1010 åè´§ä»»å¡{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; |
| | |
| | | LogHelper.Info($"{task2.S_TASK_NO}> taskend å125"); |
| | | Conn.é»è®¤Redis.SetValue("RGV.taskend", "125", "RGVQueue", false); |
| | | } |
| | | else //1mei ä»»å¡ 2 没任å¡ã |
| | | else if (tklist.Any()) //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(); |
| | | } |
| | | //var lss = tklist.Take(2).ToList(); |
| | | var e1017first = tklist.Find(x => x.S_START_LOC == "1002" || x.S_START_LOC == "1010" || x.S_START_LOC == "1023"); |
| | | //if (e1017first != null) |
| | | //{ |
| | | // e1017first = tklist.FirstOrDefault(); |
| | | //} |
| | | if (e1017first != null) |
| | | { |
| | | LogHelper.Info($"æ¥çRGV 1工使²¡ä»»å¡,å·¥ä½2 乿²¡ä»»å¡ã1å·¥ä½ä¸ä»»å¡{e1017first.S_TASK_NO}> ç»ç¹{e1017first.S_END_LOC}ã"); |
| | | LogHelper.Info($"æ¥çRGV1 ä»»å¡å·¥ä½2 没任å¡ã 1002 1010 1023åè´§ä»»å¡{e1017first.S_TASK_NO}ã"); |
| | | tag.RGV.workMod = 1; |
| | | tag.RGV.taskmod = 1; |
| | | uint tno = Convert.ToUInt32(e1017first.S_TASK_NO.Substring(4)); |
| | |
| | | LogHelper.Info($"{e1017first.S_TASK_NO}> taskend å125"); |
| | | //tag.RGV.taskend=125 |
| | | Conn.é»è®¤Redis.SetValue("RGV.taskend", "125", "RGVQueue", false); |
| | | |
| | | } |
| | | else |
| | | { |
| | | var t2 = tklist.OrderBy(x => x.T_CREATE).ToList().Find(x => x.S_START_LOC == "1020" || x.S_START_LOC == "1008" || x.S_START_LOC == "1016"); |
| | | if (tklist != null) |
| | | { |
| | | LogHelper.Info($"æ¥çRGV1 没任å¡å·¥ä½2 没任å¡ã æ¾1020 1008 1016åè´§ä»»å¡{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); |
| | | 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); |
| | | } |
| | | } |
| | | } |
| | | } |
| | |
| | | } |
| | | |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 1020 1023空æ¡ä¸çº¿ |
| | | /// </summary> |
| | |
| | | public void ThreadEdown(Tag tag) |
| | | { |
| | | Console.WriteLine($"ThreadEdown 20 23 = ç©ºä¸æ£æµ =================> "); |
| | | TaskRepository taskRepository = new TaskRepository(); |
| | | 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æçç }"); |
| | | Console.WriteLine($"{Bssx} ç©ºä¸æ£æµï¼ä»»å¡ç³è¯·ï¼{RtaskState}- æ¯å¦å·²å¤çï¼{RtaskState_LAST}- æçç ï¼{Ræçç } "); |
| | | if (RtaskState == 3 && RtaskState_LAST == 0) |
| | | { |
| | | var task = taskRepository.FindEntity(x => x.S_START_LOC == Bssx && x.S_B_STATE != "宿" && x.S_B_STATE != "忶"); |
| | | string msg = ""; |
| | | if (task != null) |
| | | { |
| | | Console.WriteLine($"{Bssx} ææ£å¨ [{task.S_B_STATE}] ä¸ç{task.S_TASK_NO}ä»»å¡"); |
| | | LogHelper.Info($"{Bssx} ææ£å¨ [{task.S_B_STATE}] ä¸ç{task.S_TASK_NO}ä»»å¡"); |
| | | continue; |
| | | } |
| | | try |
| | | { |
| | | var listtep = new List<string>(); |
| | |
| | | { |
| | | 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) |
| | | if (R5 == 5 && R5空é²_LAST == 0 && task == null) |
| | | { |
| | | task = taskRepository.FindEntity(x => x.S_END_LOC == item && x.S_B_STATE != "宿" && x.S_B_STATE != "忶"); |
| | | msg = ""; |
| | | if (task != null) |
| | | { |
| | | Console.WriteLine($" {item}ææ£å¨ [{task.S_B_STATE}] ä¸ç{task.S_TASK_NO}ä»»å¡"); |
| | | LogHelper.Info($" {item}ææ£å¨ [{task.S_B_STATE}] ä¸ç{task.S_TASK_NO}ä»»å¡"); |
| | | continue; |
| | | } |
| | | |
| | | 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); |
| | | RedisHelper.Add($"S{Bssx}Read.RtaskState_LAST", "1", out msg); |
| | | //Conn.é»è®¤Redis.SetValue($"S{Bssx}Read.RtaskState_LAST", "1", $"S{Bssx}ReadQueue"); |
| | | RedisHelper.Add($"S{item}Read.R5空é²_LAST", "1", out string msg1); |
| | | RedisHelper.Add($"S{item}Read.R5空é²_LAST", "1", out msg); |
| | | //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); |
| | | RedisHelper.Add($"S{item}Read.R5空é²_LAST", "0", out msg); |
| | | //Conn.é»è®¤Redis.SetValue($"S{item}Read.R5空é²_LAST", "0", $"S{item}ReadQueue"); |
| | | } |
| | | } |
| | |
| | | public void ThreadDdown(Tag tag) |
| | | { |
| | | Console.WriteLine($"ThreadDdown 08 10 ==================> 1026"); |
| | | TaskRepository taskRepository = new TaskRepository(); |
| | | 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)); |
| | |
| | | Console.WriteLine($"{Bssx} æ»¡ä¸æ£æµï¼ä»»å¡ç³è¯·ï¼{RtaskState}- æ¯å¦å·²å¤çï¼{RtaskState_LAST}- æçç ï¼{Ræçç }"); |
| | | if (RtaskState == 3 && RtaskState_LAST == 0) |
| | | { |
| | | var task = taskRepository.FindEntity(x => x.S_START_LOC == Bssx && x.S_B_STATE != "宿" && x.S_B_STATE != "忶"); |
| | | string msg = ""; |
| | | if (task != null) |
| | | { |
| | | Console.WriteLine($"{Bssx} ææ£å¨ [{task.S_B_STATE}] ä¸ç{task.S_TASK_NO}ä»»å¡"); |
| | | LogHelper.Info($"{Bssx} ææ£å¨ [{task.S_B_STATE}] ä¸ç{task.S_TASK_NO}ä»»å¡"); |
| | | continue; |
| | | } |
| | | |
| | | 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) |
| | | { |
| | | task = taskRepository.FindEntity(x => x.S_END_LOC == item && x.S_B_STATE != "宿" && x.S_B_STATE != "忶"); |
| | | msg = ""; |
| | | if (task != null) |
| | | { |
| | | Console.WriteLine($"{item} ææ£å¨ [{task.S_B_STATE}] ä¸ç{task.S_TASK_NO}ä»»å¡"); |
| | | LogHelper.Info($"{item} ææ£å¨ [{task.S_B_STATE}] ä¸ç{task.S_TASK_NO}ä»»å¡"); |
| | | continue; |
| | | } |
| | | 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{Bssx}Read.RtaskState_LAST", "1", out 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"); |
| | |
| | | public void Thread0210Down(Tag tag) |
| | | { |
| | | Console.WriteLine($"Thread0210Down ==================>"); |
| | | TaskRepository taskRepository = new TaskRepository(); |
| | | 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)); |
| | |
| | | Console.WriteLine($"{Bssx} æ»¡ä¸æ£æµï¼ä»»å¡ç³è¯·ï¼{RtaskState}- æ¯å¦å·²å¤çï¼{RtaskState_LAST}- æçç ï¼{Ræçç }"); |
| | | if (RtaskState == 3 && RtaskState_LAST == 0) |
| | | { |
| | | var task = taskRepository.FindEntity(x => x.S_START_LOC == Bssx && x.S_B_STATE != "宿" && x.S_B_STATE != "忶"); |
| | | string msg = ""; |
| | | if (task != null) |
| | | { |
| | | Console.WriteLine($"{Bssx} ææ£å¨ [{task.S_B_STATE}] ä¸ç{task.S_TASK_NO}ä»»å¡"); |
| | | LogHelper.Info($"{Bssx} ææ£å¨ [{task.S_B_STATE}] ä¸ç{task.S_TASK_NO}ä»»å¡"); |
| | | continue; |
| | | } |
| | | 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) |
| | | { |
| | | task = taskRepository.FindEntity(x => x.S_END_LOC == item && x.S_B_STATE != "宿" && x.S_B_STATE != "忶"); |
| | | msg = ""; |
| | | if (task != null) |
| | | { |
| | | Console.WriteLine($"{item} ææ£å¨ [{task.S_B_STATE}] ä¸ç{task.S_TASK_NO}ä»»å¡"); |
| | | LogHelper.Info($"{item} ææ£å¨ [{task.S_B_STATE}] ä¸ç{task.S_TASK_NO}ä»»å¡"); |
| | | continue; |
| | | } |
| | | 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{Bssx}Read.RtaskState_LAST", "1", out 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"); |
| | |
| | | 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") |
| | | if (ssx == "1005" && tag.SF䏿ä½.WRelease1005 == 0) |
| | | { |
| | | 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; |
| | | //tag.SF䏿ä½.WRelease1005 = 0; |
| | | //tag.SF䏿ä½.WSafe0305 = 0; |
| | | } |
| | | else if (ssx == "1003") |
| | | else if (ssx == "1003" && tag.SF䏿ä½.WRelease1003 == 0) |
| | | { |
| | | 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; |
| | | |
| | | //tag.SF䏿ä½.WRelease1003 = 0; |
| | | //tag.SF䏿ä½.WSafe0305 = 0; |
| | | } |
| | | else if (ssx == "1013") |
| | | else if (ssx == "1013" && tag.SF䏿ä½.WRelease1013 == 0) |
| | | { |
| | | 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; |
| | | //tag.SF䏿ä½.WRelease1013 = 0; |
| | | //tag.SF䏿ä½.WSafe1113 = 0; |
| | | } |
| | | else if (ssx == "1011") |
| | | else if (ssx == "1011" && tag.SF䏿ä½.WRelease1011 == 0) |
| | | { |
| | | 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; |
| | | //tag.SF䏿ä½.WRelease1011 = 0; |
| | | //tag.SF䏿ä½.WSafe1113 = 0; |
| | | } |
| | | } |
| | | else if (RArrive == 0 && RArriveLast == 1) |
| | |
| | | Console.WriteLine($"ThreadFNK1Over =====>"); |
| | | if (tag.FNK1.D2217 == 1 && tag.FNK1.D2217_LAST == 0) |
| | | { |
| | | //tag.FNK1.D2215 = 0; |
| | | tag.FNK1.D2215 = 0; |
| | | //tag.FNK1.D2212_LAST = 1; |
| | | RedisHelper.Add($"påé£ç§1ä¸çº¿.D2217_LAST", "1", 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; |
| | |
| | | } |
| | | if (tag.FNK2.D2211 == 1) |
| | | tag.FNK2.D2210 = 0; |
| | | |
| | | } |
| | | |
| | | public void Thread1019Down(Tag tag) |