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;
}
}
}