using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Rdh.SocketServer.Client.Models { public class LocationRequestProtocol : EleMedKitProtocol { public LocationRequestProtocol() { base.Command = EleMedKitCommand.RequestLocation; MinLines = base.MinLines + 1; } /// /// 获取或设置基站编号 /// public string? StationCode { get; set; } /// /// 获取或设置药箱到基站的距离(厘米) /// public float? Distance { get; set; } public override string GetContent() { return base.GetContent() + AddLineContent(StationCode + AddBlockContent(Distance.ToString())) + AddLineContent(CountFlag); } public override bool ParseContent(string[] lines) { if (!base.ParseContent(lines) || lines.Length < MinLines) { return false; } string[] stationInfo = EleMedKitProtocolHelper.GetContentBlocks(lines[2]); if (stationInfo == null || stationInfo.Length < 2) { return false; } StationCode = stationInfo[0]; float tempDistance; float.TryParse(stationInfo[1], out tempDistance); Distance = tempDistance; return true; } } }