| | |
| | | public class HandleHelper : IDataDockingSocket.IHandleHelper |
| | | { |
| | | /// <summary> |
| | | /// 验证 |
| | | /// </summary> |
| | | public bool Valid(byte[] bytes) |
| | | { |
| | | SZJTKTLogHelper.Info($"字节长度:{bytes.Count()}"); |
| | | if (bytes == null || bytes.Count() < 1) |
| | | return false; |
| | | var appParas = AppParasHelper.Get(); |
| | | SZJTKTLogHelper.Info($"获取参数"); |
| | | if (appParas == null) |
| | | return false; |
| | | var bytePrefix = new byte[8]; |
| | | Array.Copy(bytes, 0, bytePrefix, 0, 8); |
| | | var prefix = Encoding.ASCII.GetString(bytePrefix); |
| | | SZJTKTLogHelper.Info($"前缀:{prefix}"); |
| | | if (prefix != appParas.Prefix) |
| | | return false; |
| | | |
| | | byte[] byteProductID = new byte[4]; |
| | | Array.Copy(bytes, 9, byteProductID, 0, 4); |
| | | var productId = HandleDataHelper.Bytes2Int4(byteProductID); |
| | | SZJTKTLogHelper.Info($"设备编号:{productId}"); |
| | | if (productId.ToString() != appParas.ProductID) |
| | | return false; |
| | | |
| | | return true; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 处理注册码 |
| | | /// </summary> |
| | | public void HandleRegisterCode(IMonitorDataDockingSession session) |
| | | { |
| | | try |
| | | { |
| | | { |
| | | if (session == null) |
| | | { |
| | | SZJTKTLogHelper.Error("session == null"); |
| | |
| | | return; |
| | | } |
| | | |
| | | SZJTKTLogHelper.Info("开始解析的位置!"); |
| | | foreach (var item in appParas.InstructionItems) |
| | | { |
| | | SendInstructionJobHelper.StartJob(session, item); |
| | | Thread.Sleep(appParas.InstructionSendSpace * 1000); |
| | | } |
| | | } |
| | | |
| | | catch (Exception ex) |
| | |
| | | { |
| | | |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | /// <summary> |
| | | /// 处理数据 |
| | |
| | | if (!session.IsConnected) |
| | | return; |
| | | if (bytes == null) |
| | | return; |
| | | if (!AppParas.Verify(bytes)) |
| | | return; |
| | | return; |
| | | if (mappers == null || mappers.Count < 1) |
| | | return; |
| | | var appParas = AppParasHelper.Get(); |
| | |
| | | return; |
| | | } |
| | | |
| | | var item = appParas.InstructionItems.Find(x => x.Verify(bytes)); |
| | | if (item == null) |
| | | return; |
| | | var src_list = HandleDataHelper.HandleData(item, bytes); |
| | | SZJTKTLogHelper.Info($"开始处理数据:{BitConverter.ToString(bytes)}"); |
| | | |
| | | var src_list = HandleDataHelper.HandleData(bytes); |
| | | if (src_list != null && src_list.Count > 0) |
| | | { |
| | | var receive_list = new List<Model.MonitorDataDockingReceiveRecord>(); |
| | |
| | | } |
| | | } |
| | | |
| | | |
| | | |
| | | } |
| | | } |