api/ApiHelper.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
core/Monitor.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
device/TcpServer.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
wms/WMSHelper.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
api/ApiHelper.cs
@@ -638,6 +638,16 @@ LogHelper.Info("触发API:PDA满托下线入库" + JsonConvert.SerializeObject(model), "API"); try { if( model.RfId.Length < 16) { result.resultCode = 1; result.resultMsg = $"输入的RFID,长度不够,要大于16位"; LogHelper.Info(result.resultMsg); return result; } model.RfId = WMSHelper.ConvertHexToAscii(model.RfId); //该产线的满托下线位置,起点 var startPoint = Settings.ProductionLines.FirstOrDefault(a => a.PointOut == model.StartLoc); if (startPoint != null)//起点存在 @@ -822,7 +832,7 @@ } else { result.resultCode = 9; result.resultCode = 12; result.resultMsg = $"此位置:{startPoint.PointOut}已锁住"; LogHelper.Info(result.resultMsg); return result; core/Monitor.cs
@@ -552,6 +552,12 @@ db.Updateable<TN_InventoryM>(targetInM).UpdateColumns(it => new { it.EXPIRATION_DAY }).ExecuteCommand(); } targetInM = db.Queryable<TN_InventoryM>().First(a => a.EXPIRATION_DAY > 0 && a.ITEMSTATE == "过期");//已过期的货品,剩余天数改为0 if (targetInM != null) { targetInM.EXPIRATION_DAY = 0; db.Updateable<TN_InventoryM>(targetInM).UpdateColumns(it => new { it.EXPIRATION_DAY }).ExecuteCommand(); } // 同步 TN_DayProDetail var curDay = System.DateTime.Now.Date; device/TcpServer.cs
@@ -113,7 +113,6 @@ if (!buffers.Keys.Contains(remote_ip)) { buffers.Add(remote_ip, new byte[1024]); } if (!isSend.Keys.Contains(remote_ip)) { wms/WMSHelper.cs
@@ -2,6 +2,7 @@ using HH.WCS.Mobox3.DoubleCoin.models; using HH.WCS.Mobox3.DoubleCoin.util; using System; using System.Text; using static HH.WCS.Mobox3.DoubleCoin.api.ApiModel; namespace HH.WCS.Mobox3.DoubleCoin.wms @@ -122,6 +123,32 @@ } } /// <summary> /// 将16进制字符串转换为ASCII字符串 /// </summary> /// <param name="hexString"></param> /// <returns></returns> public static string ConvertHexToAscii(string hexString) { LogHelper.Info($"将16进制字符串转换为ASCII字符串,转换前:{hexString}"); // 验证输入是否为16位16进制字符串 if (hexString.Length != 16 || !System.Text.RegularExpressions.Regex.IsMatch(hexString, @"^[0-9A-Fa-f]+$")) { throw new ArgumentException("输入必须是16位的16进制字符串"); } // 每两位转换一个ASCII字符 StringBuilder asciiString = new StringBuilder(); for (int i = 0; i < 16; i += 2) { string hexPair = hexString.Substring(i, 2); byte asciiChar = Convert.ToByte(hexPair, 16); asciiString.Append((char)asciiChar); } LogHelper.Info($"将16进制字符串转换为ASCII字符串,转换后:{asciiString.ToString()}"); return asciiString.ToString(); } } }