You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.
using HybirdFrameworkCore.Autofac.Attribute ;
using HybirdFrameworkDriver.TcpServer ;
using Service.Car.Codec ;
using Service.Car.Handler ;
using Service.Car.Msg.Car.Req ;
using Service.Car.Msg.Car.Resp ;
namespace Service.Car.Server ;
[Scope("SingleInstance")]
public class CarServer : TcpServer < IBaseHandler , Decoder , Encoder >
{
/// <summary>
/// 客户端连接状态
/// </summary>
public bool Connected { get ; set ; }
public string? CarNo { get ; set ; }
public HeartBeatMsg ? HeartBeatMsg { get ; set ; }
/// <summary>
/// 1 待机 2 换电
/// </summary>
public byte StationStatus { get ; set ; } = 1 ;
/// <summary>
/// 度电数据车载设备连接上换电站的 Wifi 网络时,主动上送度电数据报文(命令代码: 0x01) , 发送周期 60s, 服务器回复相应的报文(命令代码: 0x02)
/// </summary>
public ElecMsg ? ElecMsg { get ; set ; }
public LockMsgResp ? LockMsgResp { get ; set ; }
public UnLockMsgResp ? UnLockMsgResp { get ; set ; }
public SetParamMsgResp ? SetParamMsgResp { get ; set ; }
public SettleConfirmMsgResp ? SettleConfirmMsgResp { get ; set ; }
public CarServer ( ) : base ( )
{
this . ChannelInActiveAction = Clean ;
this . LogLevel = DotNetty . Handlers . Logging . LogLevel . INFO ;
}
/// <summary>
/// 清理数据
/// </summary>
public void Clean ( )
{
Connected = false ;
CarNo = null ;
HeartBeatMsg = null ;
ElecMsg = null ;
LockMsgResp = null ;
UnLockMsgResp = null ;
SetParamMsgResp = null ;
SettleConfirmMsgResp = null ;
}
}