diff --git a/src/JTTools/Configs/JT808_JT1078_Config.cs b/src/JTTools/Configs/JT808_JT1078_Config.cs new file mode 100644 index 0000000..a91790f --- /dev/null +++ b/src/JTTools/Configs/JT808_JT1078_Config.cs @@ -0,0 +1,13 @@ +using JT808.Protocol.Interfaces; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; + +namespace JTTools.Configs +{ + public class JT808_JT1078_Config : GlobalConfigBase + { + public override string ConfigId { get; protected set; } = "JT808_JT1078_Config"; + } +} diff --git a/src/JTTools/Configs/JT808_JTActiveSafety_Config.cs b/src/JTTools/Configs/JT808_JTActiveSafety_Config.cs new file mode 100644 index 0000000..64994db --- /dev/null +++ b/src/JTTools/Configs/JT808_JTActiveSafety_Config.cs @@ -0,0 +1,13 @@ +using JT808.Protocol.Interfaces; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; + +namespace JTTools.Configs +{ + public class JT808_JTActiveSafety_Config : GlobalConfigBase + { + public override string ConfigId { get; protected set; } = "JT808_JTActiveSafety_Config"; + } +} diff --git a/src/JTTools/Pages/JT808Analyze.razor b/src/JTTools/Pages/JT808Analyze.razor index 0c666bb..b52a0e7 100644 --- a/src/JTTools/Pages/JT808Analyze.razor +++ b/src/JTTools/Pages/JT808Analyze.razor @@ -3,17 +3,20 @@ @using JT808.Protocol; @using JT808.Protocol.Extensions; @using Newtonsoft.Json; -@inject IJT808Config Config - +@using JTTools.Configs; +@inject IJT808Config config +@inject JT808_JT1078_Config jT808_JT1078_Config +@inject JT808_JTActiveSafety_Config jT808_JTActiveSafety_Config
@protocolType
+Hex: @HexData
@@ -22,19 +25,11 @@ @Json -@functions { - string selectedString = "JT808"; - - void DoStuff(ChangeEventArgs e) - { - selectedString = e.Value.ToString(); - Console.WriteLine("It is definitely: " + selectedString); - } -} - @code { private JT808Serializer Serializer; + private JT808Serializer JTAS_Serializer; + private JT808Serializer JT1078Serializer; string protocolType = "JT808"; @@ -42,14 +37,32 @@ private string Json; + private void OnSelectProtocolType(ChangeEventArgs e) + { + protocolType = e.Value.ToString(); + } + protected override void OnInitialized() { - Serializer = Config.GetSerializer(); + Serializer = config.GetSerializer(); + JT1078Serializer = jT808_JT1078_Config.GetSerializer(); + JTAS_Serializer = jT808_JTActiveSafety_Config.GetSerializer(); } private void Query() { var data = HexData.ToHexBytes(); - Json = Serializer.Analyze(data); + switch (protocolType) + { + case "JT808": + Json = Serializer.Analyze(data); + break; + case "JT808_JT1078": + Json = JT1078Serializer.Analyze(data); + break; + case "JT808_JTAS": + Json = JTAS_Serializer.Analyze(data); + break; + } } } diff --git a/src/JTTools/Program.cs b/src/JTTools/Program.cs index d96cf7d..4454260 100644 --- a/src/JTTools/Program.cs +++ b/src/JTTools/Program.cs @@ -1,23 +1,16 @@ using System; -using System.Collections.Generic; -using System.IO; -using System.Linq; -using System.Threading.Tasks; using JT808.Protocol; using JT808.Protocol.Extensions.JT1078; using JT808.Protocol.Extensions.JTActiveSafety; using JT809.Protocol; using JT809.Protocol.Extensions.JT1078; -using Microsoft.AspNetCore; using Microsoft.AspNetCore.Hosting; using Microsoft.Extensions.Configuration; using Microsoft.Extensions.Hosting; -using Microsoft.Extensions.Logging; using Microsoft.AspNetCore.Builder; -using Microsoft.AspNetCore.Components; -using Microsoft.AspNetCore.HttpsPolicy; using Microsoft.Extensions.DependencyInjection; using Newtonsoft.Json.Serialization; +using JTTools.Configs; namespace JTTools { @@ -90,9 +83,11 @@ namespace JTTools }) .ConfigureServices(services => { - services.AddJT808Configure() - .AddJT1078Configure() + services.AddJT808Configure(); + services.AddJT808Configure(new JT808_JTActiveSafety_Config()) .AddJTActiveSafetyConfigure(); + services.AddJT808Configure(new JT808_JT1078_Config()) + .AddJT1078Configure(); services.AddJT809Configure() .AddJT1078Configure(); })