Skip to content

Commit

Permalink
修复主动安全0x0200附加信息中的0x67
Browse files Browse the repository at this point in the history
  • Loading branch information
yedajiang44 committed Jul 20, 2023
1 parent 049bb70 commit a55ca02
Show file tree
Hide file tree
Showing 3 changed files with 3 additions and 28 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,6 @@ public void Serializer()
},
AlarmTime = Convert.ToDateTime("2019-12-11 18:31:00"),
Altitude = 7,
AlarmLevel=8,
AlarmOrEventType=9,
FlagState = 12,
Latitude = 13,
Expand All @@ -55,12 +54,12 @@ public void Serializer()
VehicleState = 19
});
var hex = JT808Serializer.Serialize(jT808UploadLocationRequest).ToHexString();
Assert.Equal("000000010000000200BA7F0E07E4F11C0028003C0000180715101010672A000000010C09081100070000000D0000000E191211183100001334343434343434191210183100030200", hex);
Assert.Equal("000000010000000200BA7F0E07E4F11C0028003C00001807151010106729000000010C091100070000000D0000000E191211183100001334343434343434191210183100030200", hex);
}
[Fact]
public void Deserialize()
{
var jT808UploadLocationRequest = JT808Serializer.Deserialize<JT808_0x0200>("000000010000000200BA7F0E07E4F11C0028003C0000180715101010672A000000010C09081100070000000D0000000E191211183100001334343434343434191210183100030200".ToHexBytes());
var jT808UploadLocationRequest = JT808Serializer.Deserialize<JT808_0x0200>("000000010000000200BA7F0E07E4F11C0028003C00001807151010106729000000010C091100070000000D0000000E191211183100001334343434343434191210183100030200".ToHexBytes());
jT808UploadLocationRequest.CustomLocationAttachData.TryGetValue(JT808_SuBiao_Constants.JT808_0X0200_0x67, out var value);
JT808_0x0200_0x67 jT808_0X0200_0X67 = value as JT808_0x0200_0x67;
Assert.Equal(1u, jT808_0X0200_0X67.AlarmId);
Expand All @@ -70,10 +69,9 @@ public void Deserialize()
Assert.Equal(Convert.ToDateTime("2019-12-10 18:31:00"), jT808_0X0200_0X67.AlarmIdentification.Time);
Assert.Equal(Convert.ToDateTime("2019-12-11 18:31:00"), jT808_0X0200_0X67.AlarmTime);
Assert.Equal(7, jT808_0X0200_0X67.Altitude);
Assert.Equal(8, jT808_0X0200_0X67.AlarmLevel);
Assert.Equal(9, jT808_0X0200_0X67.AlarmOrEventType);
Assert.Equal(0x67, jT808_0X0200_0X67.AttachInfoId);
Assert.Equal(42, jT808_0X0200_0X67.AttachInfoLength);
Assert.Equal(41, jT808_0X0200_0X67.AttachInfoLength);
Assert.Equal(12, jT808_0X0200_0X67.FlagState);
Assert.Equal(13, jT808_0X0200_0X67.Latitude);
Assert.Equal(14, jT808_0X0200_0X67.Longitude);
Expand Down

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Original file line number Diff line number Diff line change
Expand Up @@ -36,10 +36,6 @@ public class JT808_0x0200_0x67 : JT808MessagePackFormatter<JT808_0x0200_0x67>, J
/// </summary>
public byte AlarmOrEventType { get; set; }
/// <summary>
/// 报警/事件类型
/// </summary>
public byte AlarmLevel { get; set; }
/// <summary>
/// 车速
/// </summary>
public byte Speed { get; set; }
Expand Down Expand Up @@ -158,18 +154,6 @@ public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJ
break;
}
writer.WriteNumber($"[{value.AlarmOrEventType.ReadNumber()}]报警_事件类型-{alarmOrEventTypeString}", value.AlarmOrEventType);
value.AlarmLevel = reader.ReadByte();
string alarmLevelString = "未知";
switch (value.AlarmLevel)
{
case 0x01:
alarmLevelString = "一级报警";
break;
case 0x02:
alarmLevelString = "二级报警";
break;
}
writer.WriteNumber($"[{value.AlarmLevel.ReadNumber()}]报警级别-{alarmLevelString}", value.AlarmLevel);
value.Speed = reader.ReadByte();
writer.WriteNumber($"[{value.Speed.ReadNumber()}]车速", value.Speed);
value.Altitude = reader.ReadUInt16();
Expand Down Expand Up @@ -228,7 +212,6 @@ public override JT808_0x0200_0x67 Deserialize(ref JT808MessagePackReader reader,
value.AlarmId = reader.ReadUInt32();
value.FlagState = reader.ReadByte();
value.AlarmOrEventType = reader.ReadByte();
value.AlarmLevel = reader.ReadByte();
value.Speed = reader.ReadByte();
value.Altitude = reader.ReadUInt16();
value.Latitude = (int)reader.ReadUInt32();
Expand Down Expand Up @@ -258,7 +241,6 @@ public override void Serialize(ref JT808MessagePackWriter writer, JT808_0x0200_0
writer.WriteUInt32(value.AlarmId);
writer.WriteByte(value.FlagState);
writer.WriteByte(value.AlarmOrEventType);
writer.WriteByte(value.AlarmLevel);
writer.WriteByte(value.Speed);
writer.WriteUInt16(value.Altitude);
writer.WriteUInt32((uint)value.Latitude);
Expand Down

0 comments on commit a55ca02

Please sign in to comment.