diff --git a/src/JTTools/Controllers/JTToolsController.cs b/src/JTTools/Controllers/JTToolsController.cs index 209c9eb..4f0ef07 100644 --- a/src/JTTools/Controllers/JTToolsController.cs +++ b/src/JTTools/Controllers/JTToolsController.cs @@ -61,6 +61,29 @@ namespace JTTools.Controllers return jTResultDto; } + [Route("Analyze808")] + [HttpPost] + public ActionResult Analyze808([FromBody]JTRequestDto parameter) + { + JTResultDto jTResultDto = new JTResultDto(); + try + { + jTResultDto.Code = 200; + jTResultDto.Data = jT808Serializer.Analyze(parameter.HexData.ToHexBytes()); + } + catch (JT808Exception ex) + { + jTResultDto.Code = 500; + jTResultDto.Message = $"{ex.ErrorCode}-{ex.Message}"; + } + catch (Exception ex) + { + jTResultDto.Code = 500; + jTResultDto.Message = ex.Message; + } + return jTResultDto; + } + [Route("Parse809")] [HttpPost] public ActionResult Parse809([FromBody]JT809RequestDto parameter) diff --git a/src/JTTools/JTTools.csproj b/src/JTTools/JTTools.csproj index 35ab638..7d36340 100644 --- a/src/JTTools/JTTools.csproj +++ b/src/JTTools/JTTools.csproj @@ -12,12 +12,12 @@ - + - + diff --git a/src/ui/jttools/src/App.vue b/src/ui/jttools/src/App.vue index 2c88856..d0bff8d 100644 --- a/src/ui/jttools/src/App.vue +++ b/src/ui/jttools/src/App.vue @@ -7,37 +7,18 @@
-
- -
@@ -61,6 +42,26 @@
+ +
+
+ +
+
+ + + +
+
+ +
+
+
@@ -120,21 +121,34 @@ export default { name: 'App', data () { return { + tabLabel: (h) => { + return h('div', [ + h('span', 'JT808分析工具'), + h('Badge', { + props: { + dot: true + } + }) + ]) + }, parse808Parameter: { 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' }, + analyze808arameter: { + 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' + }, parse809Parameter: { HexData: '5B 00 00 00 92 00 00 06 82 94 00 01 33 EF B8 01 00 00 00 00 00 27 0F D4 C1 41 31 32 33 34 35 00 00 00 00 00 00 00 00 00 00 00 00 00 02 94 01 00 00 00 5C 01 00 02 00 00 00 00 5A 01 AC 3F 40 12 3F FA A1 00 00 00 00 5A 01 AC 4D 50 03 73 6D 61 6C 6C 63 68 69 00 00 00 00 00 00 00 00 31 32 33 34 35 36 37 38 39 30 31 00 00 00 00 00 00 00 00 00 31 32 33 34 35 36 40 71 71 2E 63 6F 6D 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 BA D8 5D' }, parse1078Parameter: { HexData: '30 31 63 64 81 E2 10 88 01 12 34 56 78 10 01 10 00 00 01 6B B3 92 CA 7C 02 80 00 28 00 2E 00 00 00 01 61 E1 A2 BF 00 98 CF C0 EE 1E 17 28 34 07 78 8E 39 A4 03 FD DB D1 D5 46 BF B0 63 01 3F 59 AC 34 C9 7A 02 1A B9 6A 28 A4 2C 08' }, - parse808ResultObject: {}, parse808Result: '', + analyze808Result: '', parse809Result: '', parse1078Result: '', apiUrl: 'https://jttools.smallchi.cn/api' - //apiUrl: 'http://localhost:18888/api' + // apiUrl: 'http://localhost:18888/api' } }, mounted () {}, @@ -157,6 +171,24 @@ export default { this.$Loading.error() }) }, + analyze808Click () { + if (!this.analyze808arameter) return + this.$Loading.start() + axios + .post(this.apiUrl + '/JTTools/Analyze808', this.analyze808arameter) + .then(response => { + if (response.data.Code === 200) { + this.analyze808Result = JSON.parse(response.data.Data) + } else { + this.analyze808Result = response.data.Message + } + this.$Loading.finish() + }) + .catch(error => { + this.analyze808Result = JSON.stringify(error) + this.$Loading.error() + }) + }, parse809Click () { if (!this.parse809Parameter) return this.$Loading.start() @@ -226,7 +258,8 @@ export default { height: 60px; line-height: 60px; } - +.ivu-badge{top: -15px; + right: -10px;} .ivu-menu-horizontal { height: 60px; line-height: 60px;