| | |
| | | using System.Windows.Documents; |
| | | using System.Text.RegularExpressions; |
| | | using GZ.Device.PLC; |
| | | using System.Runtime.CompilerServices; |
| | | using ServiceStack.Text; |
| | | |
| | | namespace GZ.Projects.AuxAllWCS |
| | | { |
| | |
| | | } |
| | | public partial class AutoThread |
| | | { |
| | | /// <summary> |
| | | /// 1 åªå¼çº¿ç¨ Device Client |
| | | /// 2 åªå¼è®¾å¤ Device Server |
| | | /// 3 å
¨å¼ |
| | | /// </summary> |
| | | public static readonly int _type = 1; |
| | | |
| | | private static AutoThread _instance; |
| | | |
| | |
| | | public static object InvokeMethod(object instance, string methodName, params object[] args) |
| | | { |
| | | var cacheKey = $"{instance.GetType().FullName}_{methodName}"; |
| | | |
| | | if (AutoThread._type % 2 == 0) |
| | | { |
| | | Console.WriteLine($"{AutoThread._type}> å½åæ¯ Device Server 模å¼ã"); |
| | | return null; |
| | | } |
| | | |
| | | try |
| | | { |
| | |
| | | tasks.Add(GetTask(taskssss1, tag, 3000)); |
| | | tasks.Add(GetTask(taskssss2, tag, 3000)); |
| | | tasks.Add(GetTask(taskssss3, tag, 3000)); |
| | | tasks.Add(GetTask(task20132027, tag, 3000)); |
| | | //tasks.Add(GetTask(sa1022, tag, 3000)); |
| | | //tasks.Add(GetTask(sa1025, tag, 3000)); |
| | | //tasks.Add(GetTask(sa1030, tag, 3000)); |
| | |
| | | //} |
| | | } |
| | | |
| | | void task20132027(Tag tag) |
| | | { |
| | | if (tag.ssxè¾é线.s2027.wTaskNo > 0 && tag.ssxè¾é线.s2020.wæçç != tag.ssxè¾é线.s2027.Ræçç ) |
| | | { |
| | | tag.ssxè¾é线.s2027.wEbit = 0; |
| | | tag.ssxè¾é线.s2027.wæçç = ""; |
| | | tag.ssxè¾é线.s2027.wTaskNo = 0; |
| | | } |
| | | if (tag.ssxè¾é线.s2020.wTaskNo > 0 && tag.ssxè¾é线.s2020.wæçç != tag.ssxè¾é线.s2020.Ræçç ) |
| | | { |
| | | tag.ssxè¾é线.s2020.wEbit = 0; |
| | | tag.ssxè¾é线.s2020.wæçç = ""; |
| | | tag.ssxè¾é线.s2020.wTaskNo = 0; |
| | | } |
| | | if (tag.ssxè¾é线.s2013.wTaskNo > 0 && tag.ssxè¾é线.s2013.wæçç != tag.ssxè¾é线.s2013.Ræçç ) |
| | | { |
| | | tag.ssxè¾é线.s2013.wEbit = 0; |
| | | tag.ssxè¾é线.s2013.wæçç = ""; |
| | | tag.ssxè¾é线.s2013.wTaskNo = 0; |
| | | } |
| | | } |
| | | void taskssss1(Tag tag) |
| | | { |
| | | sa1025(tag); |
| | |
| | | var rdisTcode = RedisHelper.Get<string>($"Arrive{2008}BarcodeLast", out string msg); |
| | | var ntr = tag.ssxè¾é线.s2008.Ræçç ; |
| | | LogHelper.Info($"2008 æçå·{ntr} redis Arrive{2008}BarcodeLastæçå·ï¼{rdisTcode} å¹é
æ ¡éªã"); |
| | | if (rdisTcode != ntr && tag.ssxè¾é线.s2008.wTaskNo > 0) |
| | | { |
| | | LogHelper.Info($"2008 æçå·{ntr} 忢æçå·ï¼ä¹å¯è½æ¸
空äºï¼ï¼æ¸
é¤ä»»å¡æ°æ®ãwTaskNoï¼wEbit=0ï¼Ræçç =空"); |
| | | tag.ssxè¾é线.s2008.wEbit = 0; |
| | | tag.ssxè¾é线.s2008.Ræçç = ""; |
| | | tag.ssxè¾é线.s2008.wTaskNo = 0; |
| | | RedisHelper.Add<string>($"Arrive{2008}BarcodeLast", ntr, out msg); |
| | | } |
| | | if (!string.IsNullOrEmpty(ntr) && rdisTcode != ntr) |
| | | { |
| | | var str = Settings.apiHelper.Post(Settings.MESbaseUrl + "mom-basic/dataTransmission/json/service/224", JsonConvert.SerializeObject(new |
| | |
| | | var strr = JsonConvert.DeserializeObject<MES2234>(str); |
| | | if (strr.success && strr.data != null) |
| | | { |
| | | var end = (strr.data.lineNum == 1 ? 2027 |
| | | var end = (ushort)(strr.data.lineNum == 1 ? 2027 |
| | | : strr.data.lineNum == 2 ? 2020 : 2013); |
| | | tag.ssxè¾é线.s2008.wTaskNo = (uint)(20080000 + end); |
| | | tag.ssxè¾é线.s2008.wEbit = 2027; |
| | | tag.ssxè¾é线.s2008.wEbit = end; |
| | | tag.ssxè¾é线.s2008.Ræçç = ntr; |
| | | LogHelper.Info($"2008 æçå·{ntr} åä»»å¡ï¼wTaskNo={(uint)(20080000 + end)} wEbit={end} Ræçç ={ntr} Arrive{2008}BarcodeLast={ntr} "); |
| | | RedisHelper.Add<string>($"Arrive{2008}BarcodeLast", ntr, out msg); |
| | | } |
| | | } |
| | |
| | | i = 0; |
| | | } |
| | | |
| | | LogHelper.Info($"_methodCache>>>>"+ _methodCache.Count+">>>>"+JsonConvert.SerializeObject(_methodCache.Keys)); |
| | | LogHelper.Info($"_methodCache>>>>" + _methodCache.Count + ">>>>" + JsonConvert.SerializeObject(_methodCache.Keys)); |
| | | |
| | | //Console.WriteLine($"SA2030 ä»»å¡ç¶æï¼ =====>"); |
| | | //Console.WriteLine($"SA2030 ä»»å¡ç¶æï¼{tag.SA2030.RtaskState}- 空é²{tag.SA2030.R5空é²} - barcode:{tag.SA2030.Ræçç }"); |
| | |
| | | continue; |
| | | } |
| | | } |
| | | |
| | | if (!string.IsNullOrEmpty(tag.ssxè¾é线.s2013.Ræçç )) |
| | | { |
| | | var str = Settings.apiHelper.Post(Settings.MESbaseUrl + "mom-basic/dataTransmission/json/service/224", JsonConvert.SerializeObject(new |