using DotNetty.Transport.Channels; using HybirdFrameworkCore.Autofac.Attribute; using log4net; using Service.Charger.Client; using Service.Charger.Msg.Charger.Req; using Service.Charger.Msg.Host.Resp; namespace Service.Charger.Handler { /// /// 3.3.11 充放电机上送充电停止帧 /// /// 1,保存日志到log /// 2,监控平台应答停止完成帧 /// /// [Order(8)] [Scope("InstancePerDependency")] public class StopChargingHandler : SimpleChannelInboundHandler, IBaseHandler { private static readonly ILog Log = LogManager.GetLogger(typeof(StopChargingHandler)); protected override void ChannelRead0(IChannelHandlerContext ctx, StopCharging msg) { if (ClientMgr.TryGetClient(ctx.Channel, out var sn, out var client)) {Log.Info($"receive {msg} from {sn}"); client.IsCanSendStopCmd = false; ChargingStopFsdRes stopFsdRes = new ChargingStopFsdRes(0); ctx.Channel.WriteAndFlushAsync(stopFsdRes); } } } }