From f62fbbb4d19878ec0fa0333f02468f933b2aa7fb Mon Sep 17 00:00:00 2001 From: lxw Date: Tue, 5 Nov 2024 19:19:52 +0800 Subject: [PATCH] =?UTF-8?q?=E5=85=85=E7=94=B5=E6=A1=A9=E7=94=B5=E6=B1=A0so?= =?UTF-8?q?c=E8=90=BD=E5=BA=93=EF=BC=8C=E6=9E=AA=E8=AE=A2=E5=8D=95?= =?UTF-8?q?=E4=B8=8A=E6=8A=A5=E4=BA=91=E5=B9=B3=E5=8F=B0=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Service/Charger/Client/ChargerClient.cs | 14 ++++++++++++-- .../OutCharger/PileUploadTelemetryHandler.cs | 8 ++++++++ 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/Service/Charger/Client/ChargerClient.cs b/Service/Charger/Client/ChargerClient.cs index c1e3ed6..613dc6f 100644 --- a/Service/Charger/Client/ChargerClient.cs +++ b/Service/Charger/Client/ChargerClient.cs @@ -255,9 +255,14 @@ public class ChargerClient : TcpClient RedisHelper? redisHelper = AppInfo.Container.Resolve(); string strkey = Sn + Gun1; string strvalue = JsonConvert.SerializeObject(value); - + int count = 0; while (!redisHelper.SetKeyValueStr(strkey, strvalue)) { + count++; + if (count >= 4) + { + break; + } Thread.Sleep(500); } } @@ -291,9 +296,14 @@ public class ChargerClient : TcpClient RedisHelper? redisHelper = AppInfo.Container.Resolve(); string strkey = Sn + Gun2; string strvalue = JsonConvert.SerializeObject(value); - + int count = 0; while (!redisHelper.SetKeyValueStr(strkey, strvalue)) { + count++; + if (count >= 4) + { + break; + } Thread.Sleep(500); } } diff --git a/Service/Charger/Handler/OutCharger/PileUploadTelemetryHandler.cs b/Service/Charger/Handler/OutCharger/PileUploadTelemetryHandler.cs index 970fe63..b178635 100644 --- a/Service/Charger/Handler/OutCharger/PileUploadTelemetryHandler.cs +++ b/Service/Charger/Handler/OutCharger/PileUploadTelemetryHandler.cs @@ -1,6 +1,7 @@ using DotNetty.Transport.Channels; using HybirdFrameworkCore.Autofac.Attribute; using log4net; +using Repository.Station; using Service.Charger.Client; using Service.Charger.Msg.Charger.OutCharger.Req; @@ -14,7 +15,12 @@ namespace Service.Charger.Handler.OutCharger; public class PileUploadTelemetryHandler : SimpleChannelInboundHandler, IBaseHandler { private static readonly ILog Log = LogManager.GetLogger(typeof(PileUploadTelemetryHandler)); + private BinGunInfoRepository binGunInfoRepository { get; set; } + public PileUploadTelemetryHandler(BinGunInfoRepository _binGunInfoRepository) + { + binGunInfoRepository = _binGunInfoRepository; + } protected override void ChannelRead0(IChannelHandlerContext ctx, PileUploadTelemetry msg) { if (ClientMgr.TryGetClient(ctx.Channel, out var sn, out var client)) @@ -25,6 +31,8 @@ public class PileUploadTelemetryHandler : SimpleChannelInboundHandler i.Soc == msg.CurrentSoc, + i => i.ChargerNo == sn && i.GunNo == msg.Pn); } } } \ No newline at end of file