From a185ce942bac5a8e0af35f80ffd8721e2b4bcd1e Mon Sep 17 00:00:00 2001 From: "SmallChi(Koike)" <564952747@qq.com> Date: Tue, 7 Apr 2020 18:14:33 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E5=96=84=E5=90=84=E4=B8=AA=E5=8D=8F?= =?UTF-8?q?=E8=AE=AE=E7=9A=84=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/JTTools/Configs/JTJsonWriterOptions.cs | 22 +++++++ src/JTTools/Pages/Index.razor | 6 +- src/JTTools/Pages/JT1078Parse.razor | 10 +--- src/JTTools/Pages/JT19056Analyze.razor | 69 ++++++++++++++-------- src/JTTools/Pages/JT808Analyze.razor | 22 +++---- src/JTTools/Pages/JT808Parse.razor | 35 ----------- src/JTTools/Pages/JT809Parse.razor | 9 +-- src/JTTools/Shared/NavMenu.razor | 12 ++-- 8 files changed, 90 insertions(+), 95 deletions(-) create mode 100644 src/JTTools/Configs/JTJsonWriterOptions.cs delete mode 100644 src/JTTools/Pages/JT808Parse.razor diff --git a/src/JTTools/Configs/JTJsonWriterOptions.cs b/src/JTTools/Configs/JTJsonWriterOptions.cs new file mode 100644 index 0000000..260a8d6 --- /dev/null +++ b/src/JTTools/Configs/JTJsonWriterOptions.cs @@ -0,0 +1,22 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text.Encodings.Web; +using System.Text.Json; +using System.Text.Unicode; +using System.Threading.Tasks; + +namespace JTTools.Configs +{ + public static class JTJsonWriterOptions + { + /// + /// 汉字编码 + /// + public readonly static JsonWriterOptions Instance = new System.Text.Json.JsonWriterOptions + { + Indented = true, + Encoder = JavaScriptEncoder.Create(UnicodeRanges.All) + }; + } +} diff --git a/src/JTTools/Pages/Index.razor b/src/JTTools/Pages/Index.razor index e54d914..e0795fa 100644 --- a/src/JTTools/Pages/Index.razor +++ b/src/JTTools/Pages/Index.razor @@ -1,7 +1,5 @@ @page "/" -

Hello, world!

+

JTTools

-Welcome to your new app. - - +JT808、JT809、JT1078、JT19056、JTNE(新能源)、主动安全(苏标)解析工具 diff --git a/src/JTTools/Pages/JT1078Parse.razor b/src/JTTools/Pages/JT1078Parse.razor index fa96a45..a5c6d28 100644 --- a/src/JTTools/Pages/JT1078Parse.razor +++ b/src/JTTools/Pages/JT1078Parse.razor @@ -4,15 +4,11 @@ @using JT1078.Protocol.Extensions; @using Newtonsoft.Json; - -

JT1078Parse

- -

Hex: @HexData

-
- @Json + +
@code { @@ -25,6 +21,6 @@ private void Query() { var data = HexData.ToHexBytes(); - Json = JsonConvert.SerializeObject(JT1078Serializer.Deserialize(data)); + Json = JsonConvert.SerializeObject(JT1078Serializer.Deserialize(data), Formatting.Indented); } } diff --git a/src/JTTools/Pages/JT19056Analyze.razor b/src/JTTools/Pages/JT19056Analyze.razor index 3ab24fd..b134f05 100644 --- a/src/JTTools/Pages/JT19056Analyze.razor +++ b/src/JTTools/Pages/JT19056Analyze.razor @@ -1,48 +1,65 @@ -@page "/jt19056analyze" +@page "/jt19056" @using JT808.Protocol; @using JT808.Protocol.Extensions; -@using Newtonsoft.Json; +@using JTTools.Configs; @inject IJT808Config Config -

jt808analyze

- -

Up Hex: @UpHexData

-

Down Hex: @DownHexData

- - - - + +
- @UpJson -
- @DownJson + +
@code { private JT808CarDVRSerializer Serializer; - private string UpHexData = "7E 02 00 00 26 12 34 56 78 90 12 00 7D 02 00 00 00 01 00 00 00 02 00 BA 7F 0E 07 E4 F1 1C 00 28 00 3C 00 00 18 10 15 10 10 10 01 04 00 00 00 64 02 02 00 7D 01 13 7E"; - private string DownHexData = "7E 02 00 00 26 12 34 56 78 90 12 00 7D 02 00 00 00 01 00 00 00 02 00 BA 7F 0E 07 E4 F1 1C 00 28 00 3C 00 00 18 10 15 10 10 10 01 04 00 00 00 64 02 02 00 7D 01 13 7E"; + private static string UpHexData = "55 7A C4 00 00 00 EB"; - private string UpJson; - private string DownJson; + private static string DownHexData = "55 7A C4 00 14 00 20 03 25 10 26 01 20 03 25 10 26 01 00 00 12 34 00 12 34 56 A9"; - protected override void OnInitialized() + private string HexData = UpHexData; + + string wayType = "up"; + + private void OnSelectWayType(ChangeEventArgs e) { - Serializer = Config.GetCarDVRSerializer(); + wayType = e.Value.ToString(); + switch (wayType) + { + case "up": + HexData = UpHexData; + break; + case "down": + HexData = DownHexData; + break; + } } - private void UpQuery() + private string Json; + + protected override void OnInitialized() { - var data = UpHexData.ToHexBytes(); - UpJson = Serializer.UpAnalyze(data); + Serializer = Config.GetCarDVRSerializer(); } - private void DownQuery() + private void Query() { - var data = DownHexData.ToHexBytes(); - DownJson = Serializer.UpAnalyze(data); + var data = HexData.ToHexBytes(); + switch (wayType) + { + case "up": +#warning UpAnalyze bug + Json = Serializer.UpAnalyze(data, options: JTJsonWriterOptions.Instance); + break; + case "down": +#warning DownAnalyze bug + Json = Serializer.DownAnalyze(data, options: JTJsonWriterOptions.Instance); + break; + } } - } diff --git a/src/JTTools/Pages/JT808Analyze.razor b/src/JTTools/Pages/JT808Analyze.razor index b52a0e7..9d6be8b 100644 --- a/src/JTTools/Pages/JT808Analyze.razor +++ b/src/JTTools/Pages/JT808Analyze.razor @@ -1,13 +1,14 @@ -@page "/jt808analyze" +@page "/jt808" @using JT808.Protocol; @using JT808.Protocol.Extensions; -@using Newtonsoft.Json; @using JTTools.Configs; +@using System.Text; +@using System.Text.Encodings.Web; +@using System.Text.Unicode; @inject IJT808Config config @inject JT808_JT1078_Config jT808_JT1078_Config @inject JT808_JTActiveSafety_Config jT808_JTActiveSafety_Config -

jt808analyze

-

@protocolType

- -

Hex: @HexData

-
- @Json + +
@code { private JT808Serializer Serializer; + private JT808Serializer JTAS_Serializer; + private JT808Serializer JT1078Serializer; string protocolType = "JT808"; @@ -55,13 +55,13 @@ switch (protocolType) { case "JT808": - Json = Serializer.Analyze(data); + Json = Serializer.Analyze(data,options: JTJsonWriterOptions.Instance); break; case "JT808_JT1078": - Json = JT1078Serializer.Analyze(data); + Json = JT1078Serializer.Analyze(data, options: JTJsonWriterOptions.Instance); break; case "JT808_JTAS": - Json = JTAS_Serializer.Analyze(data); + Json = JTAS_Serializer.Analyze(data, options: JTJsonWriterOptions.Instance); break; } } diff --git a/src/JTTools/Pages/JT808Parse.razor b/src/JTTools/Pages/JT808Parse.razor deleted file mode 100644 index dca7815..0000000 --- a/src/JTTools/Pages/JT808Parse.razor +++ /dev/null @@ -1,35 +0,0 @@ -@page "/jt808" - -@using JT808.Protocol; -@using JT808.Protocol.Extensions; -@using Newtonsoft.Json; -@inject IJT808Config Config - -

JT808Parse

- -

Hex: @HexData

- - - -
- @Json -
- -@code { - private JT808Serializer Serializer; - - private string HexData = "7E 02 00 00 26 12 34 56 78 90 12 00 7D 02 00 00 00 01 00 00 00 02 00 BA 7F 0E 07 E4 F1 1C 00 28 00 3C 00 00 18 10 15 10 10 10 01 04 00 00 00 64 02 02 00 7D 01 13 7E"; - - private string Json; - - protected override void OnInitialized() - { - Serializer = Config.GetSerializer(); - } - - private void Query() - { - var data = HexData.ToHexBytes(); - Json = JsonConvert.SerializeObject(Serializer.Deserialize(data)); - } -} diff --git a/src/JTTools/Pages/JT809Parse.razor b/src/JTTools/Pages/JT809Parse.razor index b646da9..13ea0dc 100644 --- a/src/JTTools/Pages/JT809Parse.razor +++ b/src/JTTools/Pages/JT809Parse.razor @@ -5,14 +5,11 @@ @using Newtonsoft.Json; @inject IJT809Config Config -

JT809Parse

- -

Hex: @HexData

-
- @Json + +
@code { @@ -30,6 +27,6 @@ private void Query() { var data = HexData.ToHexBytes(); - Json = JsonConvert.SerializeObject(Serializer.Deserialize(data)); + Json = JsonConvert.SerializeObject(Serializer.Deserialize(data), Formatting.Indented); } } diff --git a/src/JTTools/Shared/NavMenu.razor b/src/JTTools/Shared/NavMenu.razor index 6e1a6c5..4fc55fe 100644 --- a/src/JTTools/Shared/NavMenu.razor +++ b/src/JTTools/Shared/NavMenu.razor @@ -13,23 +13,23 @@