From ba92a3d604ce920af50ea7e050887101b94c1322 Mon Sep 17 00:00:00 2001 From: zenghongyao <873884283@qq.com> Date: Mon, 19 May 2025 08:51:10 +0800 Subject: [PATCH] =?UTF-8?q?=E6=89=93=E5=BC=80=E6=B3=A8=E9=87=8A=E7=9A=84?= =?UTF-8?q?=E8=AE=A2=E9=98=85=E4=BF=A1=E6=81=AF=EF=BC=8C=E4=BC=98=E5=8C=96?= =?UTF-8?q?=E7=94=B5=E8=A1=A8=E4=BF=A1=E6=81=AF=E6=9C=AA=E7=BC=93=E5=AD=98?= =?UTF-8?q?=E4=B8=8D=E4=BF=9D=E5=AD=98=E6=95=B0=E6=8D=AE=EF=BC=8C=E4=BB=85?= =?UTF-8?q?=E4=BF=9D=E5=AD=98=E6=97=A5=E5=BF=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../AnalysisData/DataStorage.cs | 148 ++-- .../SubscriberAnalysisAppService.cs | 820 +++++++++--------- web/JiShe.CollectBus.Host/appsettings.json | 2 +- 3 files changed, 488 insertions(+), 482 deletions(-) diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/DataStorage.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/DataStorage.cs index 7a1bc75..ff9a29e 100644 --- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/DataStorage.cs +++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/DataStorage.cs @@ -311,7 +311,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData } meterReadingTelemetryPacketInfos.Add(taskData); //如果无字段名,则不保存数据,如saveData=false 也不保存数据 - if (!string.IsNullOrWhiteSpace(item.FiledName)) + if (!string.IsNullOrWhiteSpace(item.FiledName) && item.ProjectId>0) { treeModelSingleMeasuringEntities.Add(meter); } @@ -342,44 +342,46 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData if (!data.TimeSpan.HasValue) data.TimeSpan = analysisBaseDto.ReceivedTime; // 类型(心跳,登录,上电,掉电) - long timestamps = DateTime.Now.GetDateTimeOffset().ToUnixTimeNanoseconds(); - var treeData = new TreeModelSingleMeasuringEntity() + if (data.ProjectId > 0) { - SystemName = _applicationOptions.SystemType, - DeviceId = $"{data.DeviceId}", - DeviceType = $"{data.DeviceType}", - ProjectId = $"{data.ProjectId}", - DataType = IOTDBDataTypeConst.Status, - Timestamps = timestamps, - SingleMeasuring = (data.FiledName!, data.DataValue!) - }; - await _dbProvider.GetSessionPool(false).InsertAsync(treeData); - // 数据帧 - var treeFrameData = new TreeModelSingleMeasuringEntity() - { - SystemName = _applicationOptions.SystemType, - DeviceId = $"{data.DeviceId}", - DeviceType = $"{data.DeviceType}", - ProjectId = $"{data.ProjectId}", - DataType = IOTDBDataTypeConst.Status, - Timestamps = timestamps, - SingleMeasuring = (ConcentratorStatusFieldConst.FrameData, analysisBaseDto.ReceivedHexMessage ?? string.Empty) - }; - - await _dbProvider.GetSessionPool(false).InsertAsync(treeFrameData); + long timestamps = DateTime.Now.GetDateTimeOffset().ToUnixTimeNanoseconds(); + var treeData = new TreeModelSingleMeasuringEntity() + { + SystemName = _applicationOptions.SystemType, + DeviceId = $"{data.DeviceId}", + DeviceType = $"{data.DeviceType}", + ProjectId = $"{data.ProjectId}", + DataType = IOTDBDataTypeConst.Status, + Timestamps = timestamps, + SingleMeasuring = (data.FiledName!, data.DataValue!) + }; + await _dbProvider.GetSessionPool(false).InsertAsync(treeData); + // 数据帧 + var treeFrameData = new TreeModelSingleMeasuringEntity() + { + SystemName = _applicationOptions.SystemType, + DeviceId = $"{data.DeviceId}", + DeviceType = $"{data.DeviceType}", + ProjectId = $"{data.ProjectId}", + DataType = IOTDBDataTypeConst.Status, + Timestamps = timestamps, + SingleMeasuring = (ConcentratorStatusFieldConst.FrameData, analysisBaseDto.ReceivedHexMessage ?? string.Empty) + }; + await _dbProvider.GetSessionPool(false).InsertAsync(treeFrameData); - // 时间 - var treeRecordingTimeData = new TreeModelSingleMeasuringEntity() - { - SystemName = _applicationOptions.SystemType, - DeviceId = $"{data.DeviceId}", - DeviceType = $"{data.DeviceType}", - ProjectId = $"{data.ProjectId}", - Timestamps = timestamps, - DataType = IOTDBDataTypeConst.Status, - SingleMeasuring = (ConcentratorStatusFieldConst.RecordingTime, data.TimeSpan.HasValue ? data.TimeSpan.Value : DateTime.Now) - }; - await _dbProvider.GetSessionPool(true).InsertAsync(treeRecordingTimeData); + // 时间 + var treeRecordingTimeData = new TreeModelSingleMeasuringEntity() + { + SystemName = _applicationOptions.SystemType, + DeviceId = $"{data.DeviceId}", + DeviceType = $"{data.DeviceType}", + ProjectId = $"{data.ProjectId}", + Timestamps = timestamps, + DataType = IOTDBDataTypeConst.Status, + SingleMeasuring = (ConcentratorStatusFieldConst.RecordingTime, data.TimeSpan.HasValue ? data.TimeSpan.Value : DateTime.Now) + }; + await _dbProvider.GetSessionPool(false).InsertAsync(treeRecordingTimeData); + } // 新建 string taskMark = CommonHelper.GetTaskMark(analysisBaseDto.AFN, analysisBaseDto.Fn, analysisBaseDto.Pn, analysisBaseDto.MSA, analysisBaseDto.PSEQ); @@ -439,42 +441,46 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData if (!item.TimeSpan.HasValue) item.TimeSpan = analysisBaseDto.ReceivedTime; // 类型(心跳,登录,上电,掉电) - long timestamps = DateTime.Now.GetDateTimeOffset().ToUnixTimeNanoseconds(); - var treeData = new TreeModelSingleMeasuringEntity() + if (item.ProjectId > 0) { - SystemName = _applicationOptions.SystemType, - DeviceId = $"{item.DeviceId}", - DeviceType = $"{item.DeviceType}", - ProjectId = $"{item.ProjectId}", - DataType = IOTDBDataTypeConst.Status, - Timestamps = timestamps, - SingleMeasuring = (item.FiledName!, item.DataValue!) - }; - await _dbProvider.GetSessionPool(false).InsertAsync(treeData); - // 数据帧 - var treeFrameData = new TreeModelSingleMeasuringEntity() - { - SystemName = _applicationOptions.SystemType, - DeviceType = $"{item.DeviceType}", - ProjectId = $"{item.ProjectId}", - DataType = IOTDBDataTypeConst.Status, - Timestamps = timestamps, - SingleMeasuring = (ConcentratorStatusFieldConst.FrameData, analysisBaseDto.ReceivedHexMessage ?? string.Empty) - }; - - await _dbProvider.GetSessionPool(false).InsertAsync(treeFrameData); + long timestamps = DateTime.Now.GetDateTimeOffset().ToUnixTimeNanoseconds(); + var treeData = new TreeModelSingleMeasuringEntity() + { + SystemName = _applicationOptions.SystemType, + DeviceId = $"{item.DeviceId}", + DeviceType = $"{item.DeviceType}", + ProjectId = $"{item.ProjectId}", + DataType = IOTDBDataTypeConst.Status, + Timestamps = timestamps, + SingleMeasuring = (item.FiledName!, item.DataValue!) + }; + await _dbProvider.GetSessionPool(false).InsertAsync(treeData); + // 数据帧 + var treeFrameData = new TreeModelSingleMeasuringEntity() + { + SystemName = _applicationOptions.SystemType, + DeviceType = $"{item.DeviceType}", + ProjectId = $"{item.ProjectId}", + DataType = IOTDBDataTypeConst.Status, + Timestamps = timestamps, + SingleMeasuring = (ConcentratorStatusFieldConst.FrameData, analysisBaseDto.ReceivedHexMessage ?? string.Empty) + }; - // 时间 - var treeRecordingTimeData = new TreeModelSingleMeasuringEntity() - { - SystemName = _applicationOptions.SystemType, - DeviceType = $"{item.DeviceType}", - ProjectId = $"{item.ProjectId}", - DataType = IOTDBDataTypeConst.Status, - Timestamps = timestamps, - SingleMeasuring = (ConcentratorStatusFieldConst.RecordingTime, item.TimeSpan.HasValue ? item.TimeSpan.Value : DateTime.Now) - }; - await _dbProvider.GetSessionPool(false).InsertAsync(treeRecordingTimeData); + await _dbProvider.GetSessionPool(false).InsertAsync(treeFrameData); + + // 时间 + var treeRecordingTimeData = new TreeModelSingleMeasuringEntity() + { + SystemName = _applicationOptions.SystemType, + DeviceType = $"{item.DeviceType}", + ProjectId = $"{item.ProjectId}", + DataType = IOTDBDataTypeConst.Status, + Timestamps = timestamps, + SingleMeasuring = (ConcentratorStatusFieldConst.RecordingTime, item.TimeSpan.HasValue ? item.TimeSpan.Value : DateTime.Now) + }; + await _dbProvider.GetSessionPool(false).InsertAsync(treeRecordingTimeData); + + } // 新建 string taskMark = CommonHelper.GetTaskMark(analysisBaseDto.AFN, analysisBaseDto.Fn, analysisBaseDto.Pn, analysisBaseDto.MSA, analysisBaseDto.PSEQ); diff --git a/services/JiShe.CollectBus.Application/Subscribers/SubscriberAnalysisAppService.cs b/services/JiShe.CollectBus.Application/Subscribers/SubscriberAnalysisAppService.cs index d17b921..7b3517b 100644 --- a/services/JiShe.CollectBus.Application/Subscribers/SubscriberAnalysisAppService.cs +++ b/services/JiShe.CollectBus.Application/Subscribers/SubscriberAnalysisAppService.cs @@ -42,458 +42,458 @@ namespace JiShe.CollectBus.Subscribers _protocolService = protocolService; } - ///// - ///// 解析AFN00H - ///// - ///// - ///// - //[KafkaSubscribe(ProtocolConst.SubscriberAFN00HReceivedEventNameTemp)] - //public async Task ReceivedAFN00Event(MessageProtocolAnalysis receivedMessage) - //{ - // var protocolPlugin = await _protocolService.GetProtocolServiceAsync(receivedMessage.DeviceNo); - // if (protocolPlugin == null) - // { - // _logger.LogError("协议不存在!"); - // } - // else - // { - // if (receivedMessage.Data==null) - // { - // Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); - // return SubscribeAck.Success(); - // } - // if (receivedMessage.Data.DT == null || receivedMessage.Data.AFN_FC == null) - // { - // Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); - // return SubscribeAck.Success(); - // } - // string serverName = $"AFN{receivedMessage.Data.AFN_FC.AFN}_F{receivedMessage.Data.DT.Fn}_Analysis"; - // //var analysisStrategy = _serviceProvider.GetKeyedService($"AFN0_F1_Analysis"); + /// + /// 解析AFN00H + /// + /// + /// + [KafkaSubscribe(ProtocolConst.SubscriberAFN00HReceivedEventNameTemp)] + public async Task ReceivedAFN00Event(MessageProtocolAnalysis receivedMessage) + { + var protocolPlugin = await _protocolService.GetProtocolServiceAsync(receivedMessage.DeviceNo); + if (protocolPlugin == null) + { + _logger.LogError("协议不存在!"); + } + else + { + if (receivedMessage.Data == null) + { + Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); + return SubscribeAck.Success(); + } + if (receivedMessage.Data.DT == null || receivedMessage.Data.AFN_FC == null) + { + Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); + return SubscribeAck.Success(); + } + string serverName = $"AFN{receivedMessage.Data.AFN_FC.AFN}_F{receivedMessage.Data.DT.Fn}_Analysis"; + //var analysisStrategy = _serviceProvider.GetKeyedService($"AFN0_F1_Analysis"); - // //var data = await analysisStrategy.ExecuteAsync>(tB3761); - // var executor = _serviceProvider.GetRequiredService(); - // await executor.ExecuteAsync(serverName, receivedMessage.Data); - // } + //var data = await analysisStrategy.ExecuteAsync>(tB3761); + var executor = _serviceProvider.GetRequiredService(); + await executor.ExecuteAsync(serverName, receivedMessage.Data); + } - // return SubscribeAck.Fail(); - //} + return SubscribeAck.Fail(); + } - ///// - ///// 解析AFN01H - ///// - ///// - ///// - //[KafkaSubscribe(ProtocolConst.SubscriberAFN01HReceivedEventNameTemp)] - //public async Task ReceivedAFN01Event(MessageProtocolAnalysis receivedMessage) - //{ - // var protocolPlugin = await _protocolService.GetProtocolServiceAsync(receivedMessage.DeviceNo); - // if (protocolPlugin == null) - // { - // _logger.LogError("协议不存在!"); - // } - // else - // { - // if (receivedMessage.Data == null) - // { - // Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); - // return SubscribeAck.Success(); - // } - // if (receivedMessage.Data.DT == null || receivedMessage.Data.AFN_FC == null) - // { - // Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); - // return SubscribeAck.Success(); - // } - // string serverName = $"AFN{receivedMessage.Data.AFN_FC.AFN}_F{receivedMessage.Data.DT.Fn}_Analysis"; - // //var analysisStrategy = _serviceProvider.GetKeyedService($"AFN0_F1_Analysis"); + /// + /// 解析AFN01H + /// + /// + /// + [KafkaSubscribe(ProtocolConst.SubscriberAFN01HReceivedEventNameTemp)] + public async Task ReceivedAFN01Event(MessageProtocolAnalysis receivedMessage) + { + var protocolPlugin = await _protocolService.GetProtocolServiceAsync(receivedMessage.DeviceNo); + if (protocolPlugin == null) + { + _logger.LogError("协议不存在!"); + } + else + { + if (receivedMessage.Data == null) + { + Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); + return SubscribeAck.Success(); + } + if (receivedMessage.Data.DT == null || receivedMessage.Data.AFN_FC == null) + { + Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); + return SubscribeAck.Success(); + } + string serverName = $"AFN{receivedMessage.Data.AFN_FC.AFN}_F{receivedMessage.Data.DT.Fn}_Analysis"; + //var analysisStrategy = _serviceProvider.GetKeyedService($"AFN0_F1_Analysis"); - // //var data = await analysisStrategy.ExecuteAsync>(tB3761); - // var executor = _serviceProvider.GetRequiredService(); - // await executor.ExecuteAsync(serverName, receivedMessage.Data); - // } + //var data = await analysisStrategy.ExecuteAsync>(tB3761); + var executor = _serviceProvider.GetRequiredService(); + await executor.ExecuteAsync(serverName, receivedMessage.Data); + } - // return SubscribeAck.Fail(); - //} + return SubscribeAck.Fail(); + } - ///// - ///// 解析AFN02H - ///// - ///// - ///// - //[KafkaSubscribe(ProtocolConst.SubscriberAFN02HReceivedEventNameTemp)] - //public async Task ReceivedAFN02Event(MessageProtocolAnalysis receivedMessage) - //{ - // var protocolPlugin = await _protocolService.GetProtocolServiceAsync(receivedMessage.DeviceNo); - // if (protocolPlugin == null) - // { - // _logger.LogError("协议不存在!"); - // } - // else - // { - // if (receivedMessage.Data == null) - // { - // Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); - // return SubscribeAck.Success(); - // } - // if (receivedMessage.Data.DT == null || receivedMessage.Data.AFN_FC == null) - // { - // Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); - // return SubscribeAck.Success(); - // } - // string serverName = $"AFN{receivedMessage.Data.AFN_FC.AFN}_F{receivedMessage.Data.DT.Fn}_Analysis"; - // //var analysisStrategy = _serviceProvider.GetKeyedService($"AFN0_F1_Analysis"); + /// + /// 解析AFN02H + /// + /// + /// + [KafkaSubscribe(ProtocolConst.SubscriberAFN02HReceivedEventNameTemp)] + public async Task ReceivedAFN02Event(MessageProtocolAnalysis receivedMessage) + { + var protocolPlugin = await _protocolService.GetProtocolServiceAsync(receivedMessage.DeviceNo); + if (protocolPlugin == null) + { + _logger.LogError("协议不存在!"); + } + else + { + if (receivedMessage.Data == null) + { + Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); + return SubscribeAck.Success(); + } + if (receivedMessage.Data.DT == null || receivedMessage.Data.AFN_FC == null) + { + Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); + return SubscribeAck.Success(); + } + string serverName = $"AFN{receivedMessage.Data.AFN_FC.AFN}_F{receivedMessage.Data.DT.Fn}_Analysis"; + //var analysisStrategy = _serviceProvider.GetKeyedService($"AFN0_F1_Analysis"); - // //var data = await analysisStrategy.ExecuteAsync>(tB3761); - // var executor = _serviceProvider.GetRequiredService(); - // await executor.ExecuteAsync(serverName, receivedMessage.Data, (result) => - // { - // var ssss = (UnitDataAnalysis>)result; - // _logger.LogInformation($"解析AFN02H数据:{ssss.Serialize()}"); - // }); - // return SubscribeAck.Success(); - // } - // return SubscribeAck.Fail(); + //var data = await analysisStrategy.ExecuteAsync>(tB3761); + var executor = _serviceProvider.GetRequiredService(); + await executor.ExecuteAsync(serverName, receivedMessage.Data, (result) => + { + var ssss = (UnitDataAnalysis>)result; + _logger.LogInformation($"解析AFN02H数据:{ssss.Serialize()}"); + }); + return SubscribeAck.Success(); + } + return SubscribeAck.Fail(); - //} + } - ///// - ///// 解析AFN03H - ///// - ///// - ///// - //[KafkaSubscribe(ProtocolConst.SubscriberAFN03HReceivedEventNameTemp)] - //public async Task ReceivedAFN03Event(MessageProtocolAnalysis receivedMessage) - //{ - // var protocolPlugin = await _protocolService.GetProtocolServiceAsync(receivedMessage.DeviceNo); - // if (protocolPlugin == null) - // { - // _logger.LogError("协议不存在!"); - // } - // else - // { - // if (receivedMessage.Data == null) - // { - // Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); - // return SubscribeAck.Success(); - // } - // if (receivedMessage.Data.DT == null || receivedMessage.Data.AFN_FC == null) - // { - // Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); - // return SubscribeAck.Success(); - // } - // string serverName = $"AFN{receivedMessage.Data.AFN_FC.AFN}_F{receivedMessage.Data.DT.Fn}_Analysis"; - // //var analysisStrategy = _serviceProvider.GetKeyedService($"AFN0_F1_Analysis"); + /// + /// 解析AFN03H + /// + /// + /// + [KafkaSubscribe(ProtocolConst.SubscriberAFN03HReceivedEventNameTemp)] + public async Task ReceivedAFN03Event(MessageProtocolAnalysis receivedMessage) + { + var protocolPlugin = await _protocolService.GetProtocolServiceAsync(receivedMessage.DeviceNo); + if (protocolPlugin == null) + { + _logger.LogError("协议不存在!"); + } + else + { + if (receivedMessage.Data == null) + { + Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); + return SubscribeAck.Success(); + } + if (receivedMessage.Data.DT == null || receivedMessage.Data.AFN_FC == null) + { + Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); + return SubscribeAck.Success(); + } + string serverName = $"AFN{receivedMessage.Data.AFN_FC.AFN}_F{receivedMessage.Data.DT.Fn}_Analysis"; + //var analysisStrategy = _serviceProvider.GetKeyedService($"AFN0_F1_Analysis"); - // //var data = await analysisStrategy.ExecuteAsync>(tB3761); - // var executor = _serviceProvider.GetRequiredService(); - // await executor.ExecuteAsync(serverName, receivedMessage.Data); - // return SubscribeAck.Success(); - // } + //var data = await analysisStrategy.ExecuteAsync>(tB3761); + var executor = _serviceProvider.GetRequiredService(); + await executor.ExecuteAsync(serverName, receivedMessage.Data); + return SubscribeAck.Success(); + } - // return SubscribeAck.Fail(); - //} + return SubscribeAck.Fail(); + } - ///// - ///// 解析AFN04H - ///// - ///// - ///// - //[KafkaSubscribe(ProtocolConst.SubscriberAFN04HReceivedEventNameTemp)] - //public async Task ReceivedAFN04Event(MessageProtocolAnalysis receivedMessage) - //{ - // var protocolPlugin = await _protocolService.GetProtocolServiceAsync(receivedMessage.DeviceNo); - // if (protocolPlugin == null) - // { - // _logger.LogError("协议不存在!"); - // } - // else - // { - // if (receivedMessage.Data == null) - // { - // Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); - // return SubscribeAck.Success(); - // } - // if (receivedMessage.Data.DT == null || receivedMessage.Data.AFN_FC == null) - // { - // Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); - // return SubscribeAck.Success(); - // } - // string serverName = $"AFN{receivedMessage.Data.AFN_FC.AFN}_F{receivedMessage.Data.DT.Fn}_Analysis"; - // //var analysisStrategy = _serviceProvider.GetKeyedService($"AFN0_F1_Analysis"); + /// + /// 解析AFN04H + /// + /// + /// + [KafkaSubscribe(ProtocolConst.SubscriberAFN04HReceivedEventNameTemp)] + public async Task ReceivedAFN04Event(MessageProtocolAnalysis receivedMessage) + { + var protocolPlugin = await _protocolService.GetProtocolServiceAsync(receivedMessage.DeviceNo); + if (protocolPlugin == null) + { + _logger.LogError("协议不存在!"); + } + else + { + if (receivedMessage.Data == null) + { + Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); + return SubscribeAck.Success(); + } + if (receivedMessage.Data.DT == null || receivedMessage.Data.AFN_FC == null) + { + Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); + return SubscribeAck.Success(); + } + string serverName = $"AFN{receivedMessage.Data.AFN_FC.AFN}_F{receivedMessage.Data.DT.Fn}_Analysis"; + //var analysisStrategy = _serviceProvider.GetKeyedService($"AFN0_F1_Analysis"); - // //var data = await analysisStrategy.ExecuteAsync>(tB3761); - // var executor = _serviceProvider.GetRequiredService(); - // await executor.ExecuteAsync(serverName, receivedMessage.Data); - // return SubscribeAck.Success(); - // } + //var data = await analysisStrategy.ExecuteAsync>(tB3761); + var executor = _serviceProvider.GetRequiredService(); + await executor.ExecuteAsync(serverName, receivedMessage.Data); + return SubscribeAck.Success(); + } - // return SubscribeAck.Fail(); - //} + return SubscribeAck.Fail(); + } - ///// - ///// 解析AFN05H - ///// - ///// - ///// - //[KafkaSubscribe(ProtocolConst.SubscriberAFN05HReceivedEventNameTemp)] - //public async Task ReceivedAFN05Event(MessageProtocolAnalysis receivedMessage) - //{ - // var protocolPlugin = await _protocolService.GetProtocolServiceAsync(receivedMessage.DeviceNo); - // if (protocolPlugin == null) - // { - // _logger.LogError("协议不存在!"); - // } - // else - // { - // if (receivedMessage.Data == null) - // { - // Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); - // return SubscribeAck.Success(); - // } - // if (receivedMessage.Data.DT == null || receivedMessage.Data.AFN_FC == null) - // { - // Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); - // return SubscribeAck.Success(); - // } - // string serverName = $"AFN{receivedMessage.Data.AFN_FC.AFN}_F{receivedMessage.Data.DT.Fn}_Analysis"; - // //var analysisStrategy = _serviceProvider.GetKeyedService($"AFN0_F1_Analysis"); + /// + /// 解析AFN05H + /// + /// + /// + [KafkaSubscribe(ProtocolConst.SubscriberAFN05HReceivedEventNameTemp)] + public async Task ReceivedAFN05Event(MessageProtocolAnalysis receivedMessage) + { + var protocolPlugin = await _protocolService.GetProtocolServiceAsync(receivedMessage.DeviceNo); + if (protocolPlugin == null) + { + _logger.LogError("协议不存在!"); + } + else + { + if (receivedMessage.Data == null) + { + Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); + return SubscribeAck.Success(); + } + if (receivedMessage.Data.DT == null || receivedMessage.Data.AFN_FC == null) + { + Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); + return SubscribeAck.Success(); + } + string serverName = $"AFN{receivedMessage.Data.AFN_FC.AFN}_F{receivedMessage.Data.DT.Fn}_Analysis"; + //var analysisStrategy = _serviceProvider.GetKeyedService($"AFN0_F1_Analysis"); - // //var data = await analysisStrategy.ExecuteAsync>(tB3761); - // var executor = _serviceProvider.GetRequiredService(); - // await executor.ExecuteAsync(serverName, receivedMessage.Data); - // return SubscribeAck.Success(); - // } + //var data = await analysisStrategy.ExecuteAsync>(tB3761); + var executor = _serviceProvider.GetRequiredService(); + await executor.ExecuteAsync(serverName, receivedMessage.Data); + return SubscribeAck.Success(); + } - // return SubscribeAck.Fail(); - //} + return SubscribeAck.Fail(); + } - ///// - ///// 解析AFN09H - ///// - ///// - ///// - //[KafkaSubscribe(ProtocolConst.SubscriberAFN09HReceivedEventNameTemp)] - //public async Task ReceivedAFN09Event(MessageProtocolAnalysis receivedMessage) - //{ - // var protocolPlugin = await _protocolService.GetProtocolServiceAsync(receivedMessage.DeviceNo); - // if (protocolPlugin == null) - // { - // _logger.LogError("协议不存在!"); - // } - // else - // { - // if (receivedMessage.Data == null) - // { - // Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); - // return SubscribeAck.Success(); - // } - // if (receivedMessage.Data.DT == null || receivedMessage.Data.AFN_FC == null) - // { - // Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); - // return SubscribeAck.Success(); - // } - // string serverName = $"AFN{receivedMessage.Data.AFN_FC.AFN}_F{receivedMessage.Data.DT.Fn}_Analysis"; - // //var analysisStrategy = _serviceProvider.GetKeyedService($"AFN0_F1_Analysis"); + /// + /// 解析AFN09H + /// + /// + /// + [KafkaSubscribe(ProtocolConst.SubscriberAFN09HReceivedEventNameTemp)] + public async Task ReceivedAFN09Event(MessageProtocolAnalysis receivedMessage) + { + var protocolPlugin = await _protocolService.GetProtocolServiceAsync(receivedMessage.DeviceNo); + if (protocolPlugin == null) + { + _logger.LogError("协议不存在!"); + } + else + { + if (receivedMessage.Data == null) + { + Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); + return SubscribeAck.Success(); + } + if (receivedMessage.Data.DT == null || receivedMessage.Data.AFN_FC == null) + { + Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); + return SubscribeAck.Success(); + } + string serverName = $"AFN{receivedMessage.Data.AFN_FC.AFN}_F{receivedMessage.Data.DT.Fn}_Analysis"; + //var analysisStrategy = _serviceProvider.GetKeyedService($"AFN0_F1_Analysis"); - // //var data = await analysisStrategy.ExecuteAsync>(tB3761); - // var executor = _serviceProvider.GetRequiredService(); - // await executor.ExecuteAsync(serverName, receivedMessage.Data); - // return SubscribeAck.Success(); - // } + //var data = await analysisStrategy.ExecuteAsync>(tB3761); + var executor = _serviceProvider.GetRequiredService(); + await executor.ExecuteAsync(serverName, receivedMessage.Data); + return SubscribeAck.Success(); + } - // return SubscribeAck.Fail(); - //} + return SubscribeAck.Fail(); + } - ///// - ///// 解析AFN0AH - ///// - ///// - ///// - //[KafkaSubscribe(ProtocolConst.SubscriberAFN0AHReceivedEventNameTemp)] - //public async Task ReceivedAFN0AEvent(MessageProtocolAnalysis receivedMessage) - //{ - // var protocolPlugin = await _protocolService.GetProtocolServiceAsync(receivedMessage.DeviceNo); - // if (protocolPlugin == null) - // { - // _logger.LogError("协议不存在!"); - // } - // else - // { - // if (receivedMessage.Data == null) - // { - // Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); - // return SubscribeAck.Success(); - // } - // if (receivedMessage.Data.DT == null || receivedMessage.Data.AFN_FC == null) - // { - // Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); - // return SubscribeAck.Success(); - // } - // string serverName = $"AFN{receivedMessage.Data.AFN_FC.AFN}_F{receivedMessage.Data.DT.Fn}_Analysis"; - // //var analysisStrategy = _serviceProvider.GetKeyedService($"AFN0_F1_Analysis"); + /// + /// 解析AFN0AH + /// + /// + /// + [KafkaSubscribe(ProtocolConst.SubscriberAFN0AHReceivedEventNameTemp)] + public async Task ReceivedAFN0AEvent(MessageProtocolAnalysis receivedMessage) + { + var protocolPlugin = await _protocolService.GetProtocolServiceAsync(receivedMessage.DeviceNo); + if (protocolPlugin == null) + { + _logger.LogError("协议不存在!"); + } + else + { + if (receivedMessage.Data == null) + { + Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); + return SubscribeAck.Success(); + } + if (receivedMessage.Data.DT == null || receivedMessage.Data.AFN_FC == null) + { + Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); + return SubscribeAck.Success(); + } + string serverName = $"AFN{receivedMessage.Data.AFN_FC.AFN}_F{receivedMessage.Data.DT.Fn}_Analysis"; + //var analysisStrategy = _serviceProvider.GetKeyedService($"AFN0_F1_Analysis"); - // //var data = await analysisStrategy.ExecuteAsync>(tB3761); - // var executor = _serviceProvider.GetRequiredService(); - // await executor.ExecuteAsync(serverName, receivedMessage.Data); - // return SubscribeAck.Success(); - // } + //var data = await analysisStrategy.ExecuteAsync>(tB3761); + var executor = _serviceProvider.GetRequiredService(); + await executor.ExecuteAsync(serverName, receivedMessage.Data); + return SubscribeAck.Success(); + } - // return SubscribeAck.Fail(); - //} + return SubscribeAck.Fail(); + } - ///// - ///// 解析AFN0BH - ///// - ///// - ///// - //[KafkaSubscribe(ProtocolConst.SubscriberAFN0BHReceivedEventNameTemp)] - //public async Task ReceivedAFN0BEvent(MessageProtocolAnalysis receivedMessage) - //{ - // var protocolPlugin = await _protocolService.GetProtocolServiceAsync(receivedMessage.DeviceNo); - // if (protocolPlugin == null) - // { - // _logger.LogError("协议不存在!"); - // } - // else - // { - // if (receivedMessage.Data == null) - // { - // Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); - // return SubscribeAck.Success(); - // } - // if (receivedMessage.Data.DT == null || receivedMessage.Data.AFN_FC == null) - // { - // Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); - // return SubscribeAck.Success(); - // } - // string serverName = $"AFN{receivedMessage.Data.AFN_FC.AFN}_F{receivedMessage.Data.DT.Fn}_Analysis"; - // //var analysisStrategy = _serviceProvider.GetKeyedService($"AFN0_F1_Analysis"); + /// + /// 解析AFN0BH + /// + /// + /// + [KafkaSubscribe(ProtocolConst.SubscriberAFN0BHReceivedEventNameTemp)] + public async Task ReceivedAFN0BEvent(MessageProtocolAnalysis receivedMessage) + { + var protocolPlugin = await _protocolService.GetProtocolServiceAsync(receivedMessage.DeviceNo); + if (protocolPlugin == null) + { + _logger.LogError("协议不存在!"); + } + else + { + if (receivedMessage.Data == null) + { + Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); + return SubscribeAck.Success(); + } + if (receivedMessage.Data.DT == null || receivedMessage.Data.AFN_FC == null) + { + Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); + return SubscribeAck.Success(); + } + string serverName = $"AFN{receivedMessage.Data.AFN_FC.AFN}_F{receivedMessage.Data.DT.Fn}_Analysis"; + //var analysisStrategy = _serviceProvider.GetKeyedService($"AFN0_F1_Analysis"); - // //var data = await analysisStrategy.ExecuteAsync>(tB3761); - // var executor = _serviceProvider.GetRequiredService(); - // await executor.ExecuteAsync(serverName, receivedMessage.Data); - // return SubscribeAck.Success(); - // } + //var data = await analysisStrategy.ExecuteAsync>(tB3761); + var executor = _serviceProvider.GetRequiredService(); + await executor.ExecuteAsync(serverName, receivedMessage.Data); + return SubscribeAck.Success(); + } - // return SubscribeAck.Fail(); - //} + return SubscribeAck.Fail(); + } - ///// - ///// 解析AFN0CH - ///// - ///// - ///// - //[KafkaSubscribe(ProtocolConst.SubscriberAFN0CHReceivedEventNameTemp)] - //public async Task ReceivedAFN0CEvent(MessageProtocolAnalysis receivedMessage) - //{ - // var protocolPlugin = await _protocolService.GetProtocolServiceAsync(receivedMessage.DeviceNo); - // if (protocolPlugin == null) - // { - // _logger.LogError("协议不存在!"); - // } - // else - // { - // if (receivedMessage.Data == null) - // { - // Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); - // return SubscribeAck.Success(); - // } - // if (receivedMessage.Data.DT == null || receivedMessage.Data.AFN_FC == null) - // { - // Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); - // return SubscribeAck.Success(); - // } - // string serverName = $"AFN{receivedMessage.Data.AFN_FC.AFN}_F{receivedMessage.Data.DT.Fn}_Analysis"; - // //var analysisStrategy = _serviceProvider.GetKeyedService($"AFN0_F1_Analysis"); + /// + /// 解析AFN0CH + /// + /// + /// + [KafkaSubscribe(ProtocolConst.SubscriberAFN0CHReceivedEventNameTemp)] + public async Task ReceivedAFN0CEvent(MessageProtocolAnalysis receivedMessage) + { + var protocolPlugin = await _protocolService.GetProtocolServiceAsync(receivedMessage.DeviceNo); + if (protocolPlugin == null) + { + _logger.LogError("协议不存在!"); + } + else + { + if (receivedMessage.Data == null) + { + Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); + return SubscribeAck.Success(); + } + if (receivedMessage.Data.DT == null || receivedMessage.Data.AFN_FC == null) + { + Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); + return SubscribeAck.Success(); + } + string serverName = $"AFN{receivedMessage.Data.AFN_FC.AFN}_F{receivedMessage.Data.DT.Fn}_Analysis"; + //var analysisStrategy = _serviceProvider.GetKeyedService($"AFN0_F1_Analysis"); - // //var data = await analysisStrategy.ExecuteAsync>(tB3761); - // var executor = _serviceProvider.GetRequiredService(); - // await executor.ExecuteAsync(serverName, receivedMessage.Data); - // return SubscribeAck.Success(); - // } + //var data = await analysisStrategy.ExecuteAsync>(tB3761); + var executor = _serviceProvider.GetRequiredService(); + await executor.ExecuteAsync(serverName, receivedMessage.Data); + return SubscribeAck.Success(); + } - // return SubscribeAck.Fail(); - //} + return SubscribeAck.Fail(); + } - ///// - ///// 解析AFN0DH - ///// - ///// - ///// - //[KafkaSubscribe(ProtocolConst.SubscriberAFN0DHReceivedEventNameTemp)] - //public async Task ReceivedAFN0DEvent(MessageProtocolAnalysis receivedMessage) - //{ - // var protocolPlugin = await _protocolService.GetProtocolServiceAsync(receivedMessage.DeviceNo); - // if (protocolPlugin == null) - // { - // _logger.LogError("协议不存在!"); - // } - // else - // { - // if (receivedMessage.Data == null) - // { - // Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); - // return SubscribeAck.Success(); - // } - // if (receivedMessage.Data.DT == null || receivedMessage.Data.AFN_FC == null) - // { - // Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); - // return SubscribeAck.Success(); - // } - // string serverName = $"AFN{receivedMessage.Data.AFN_FC.AFN}_F{receivedMessage.Data.DT.Fn}_Analysis"; - // //var analysisStrategy = _serviceProvider.GetKeyedService($"AFN0_F1_Analysis"); + /// + /// 解析AFN0DH + /// + /// + /// + [KafkaSubscribe(ProtocolConst.SubscriberAFN0DHReceivedEventNameTemp)] + public async Task ReceivedAFN0DEvent(MessageProtocolAnalysis receivedMessage) + { + var protocolPlugin = await _protocolService.GetProtocolServiceAsync(receivedMessage.DeviceNo); + if (protocolPlugin == null) + { + _logger.LogError("协议不存在!"); + } + else + { + if (receivedMessage.Data == null) + { + Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); + return SubscribeAck.Success(); + } + if (receivedMessage.Data.DT == null || receivedMessage.Data.AFN_FC == null) + { + Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); + return SubscribeAck.Success(); + } + string serverName = $"AFN{receivedMessage.Data.AFN_FC.AFN}_F{receivedMessage.Data.DT.Fn}_Analysis"; + //var analysisStrategy = _serviceProvider.GetKeyedService($"AFN0_F1_Analysis"); - // //var data = await analysisStrategy.ExecuteAsync>(tB3761); - // var executor = _serviceProvider.GetRequiredService(); - // await executor.ExecuteAsync(serverName, receivedMessage.Data); - // return SubscribeAck.Success(); - // } + //var data = await analysisStrategy.ExecuteAsync>(tB3761); + var executor = _serviceProvider.GetRequiredService(); + await executor.ExecuteAsync(serverName, receivedMessage.Data); + return SubscribeAck.Success(); + } - // return SubscribeAck.Fail(); - //} + return SubscribeAck.Fail(); + } - ///// - ///// 解析AFN0EH - ///// - ///// - ///// - //[KafkaSubscribe(ProtocolConst.SubscriberAFN0EHReceivedEventNameTemp)] - //public async Task ReceivedAFN0EEvent(MessageProtocolAnalysis receivedMessage) - //{ - // var protocolPlugin = await _protocolService.GetProtocolServiceAsync(receivedMessage.DeviceNo); - // if (protocolPlugin == null) - // { - // _logger.LogError("协议不存在!"); - // } - // else - // { - // if (receivedMessage.Data == null) - // { - // Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); - // return SubscribeAck.Success(); - // } - // if (receivedMessage.Data.DT == null || receivedMessage.Data.AFN_FC == null) - // { - // Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); - // return SubscribeAck.Success(); - // } - // string serverName = $"AFN{receivedMessage.Data.AFN_FC.AFN}_F{receivedMessage.Data.DT.Fn}_Analysis"; - // //var analysisStrategy = _serviceProvider.GetKeyedService($"AFN0_F1_Analysis"); + /// + /// 解析AFN0EH + /// + /// + /// + [KafkaSubscribe(ProtocolConst.SubscriberAFN0EHReceivedEventNameTemp)] + public async Task ReceivedAFN0EEvent(MessageProtocolAnalysis receivedMessage) + { + var protocolPlugin = await _protocolService.GetProtocolServiceAsync(receivedMessage.DeviceNo); + if (protocolPlugin == null) + { + _logger.LogError("协议不存在!"); + } + else + { + if (receivedMessage.Data == null) + { + Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); + return SubscribeAck.Success(); + } + if (receivedMessage.Data.DT == null || receivedMessage.Data.AFN_FC == null) + { + Logger.LogError($"数据解析失败:{receivedMessage.Serialize()}"); + return SubscribeAck.Success(); + } + string serverName = $"AFN{receivedMessage.Data.AFN_FC.AFN}_F{receivedMessage.Data.DT.Fn}_Analysis"; + //var analysisStrategy = _serviceProvider.GetKeyedService($"AFN0_F1_Analysis"); - // //var data = await analysisStrategy.ExecuteAsync>(tB3761); - // var executor = _serviceProvider.GetRequiredService(); - // await executor.ExecuteAsync(serverName, receivedMessage.Data); - // return SubscribeAck.Success(); - // } + //var data = await analysisStrategy.ExecuteAsync>(tB3761); + var executor = _serviceProvider.GetRequiredService(); + await executor.ExecuteAsync(serverName, receivedMessage.Data); + return SubscribeAck.Success(); + } - // return SubscribeAck.Fail(); - //} + return SubscribeAck.Fail(); + } /// diff --git a/web/JiShe.CollectBus.Host/appsettings.json b/web/JiShe.CollectBus.Host/appsettings.json index 64893f2..2ee76e5 100644 --- a/web/JiShe.CollectBus.Host/appsettings.json +++ b/web/JiShe.CollectBus.Host/appsettings.json @@ -141,7 +141,7 @@ } }, "ServerApplicationOptions": { - "ServerTagName": "JiSheCollectBus8", + "ServerTagName": "JiSheCollectBus99", "SystemType": "Energy", "FirstCollectionTime": "2025-04-28 15:07:00", "AutomaticVerificationTime": "16:07:00",