Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

50 строки
1.9 KiB

  1. using JT809.Protocol.Enums;
  2. using JT809.Protocol.Formatters;
  3. using JT809.Protocol.MessagePack;
  4. using JT809.Protocol.Extensions;
  5. using System;
  6. using JT809.Protocol.Interfaces;
  7. namespace JT809.Protocol.SubMessageBody
  8. {
  9. /// <summary>
  10. /// 上报报警督办应答消息
  11. /// <para>子业务类型标识:UP_WARN_MSG_URGE_TODO_ACK_INFO</para>
  12. /// <para>描述:下级平台向上级平台上报某车辆的报警信息</para>
  13. /// <para>本条消息上级平台无需应答</para>
  14. /// </summary>
  15. public class JT809_0x1400_0x1411 : JT809SubBodies, IJT809MessagePackFormatter<JT809_0x1400_0x1411>, IJT809_2019_Version
  16. {
  17. public override ushort SubMsgId => JT809SubBusinessType.上报报警督办应答消息.ToUInt16Value();
  18. public override string Description => "上报报警督办应答消息";
  19. /// <summary>
  20. /// 对应报警督办请求消息源子业务类型标识
  21. /// </summary>
  22. public ushort SourceDateType { get; set; }
  23. /// <summary>
  24. /// 对应报警督办请求消息源报文序列号
  25. /// </summary>
  26. public uint SourceMsgSn { get; set; }
  27. /// <summary>
  28. /// 报警处理结果
  29. /// </summary>
  30. public JT809_0x1411_Result Result { get; set; }
  31. public JT809_0x1400_0x1411 Deserialize(ref JT809MessagePackReader reader, IJT809Config config)
  32. {
  33. var value = new JT809_0x1400_0x1411();
  34. value.SourceDateType = reader.ReadUInt16();
  35. value.SourceMsgSn = reader.ReadUInt32();
  36. value.Result = (JT809_0x1411_Result)reader.ReadByte();
  37. return value;
  38. }
  39. public void Serialize(ref JT809MessagePackWriter writer, JT809_0x1400_0x1411 value, IJT809Config config)
  40. {
  41. writer.WriteUInt16(value.SourceDateType);
  42. writer.WriteUInt32(value.SourceMsgSn);
  43. writer.WriteByte((byte)value.Result);
  44. }
  45. }
  46. }