using Edge.Core.IndustryStandardInterface.Pump.Fdc;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace HengshanPaymentTerminal.MessageEntity.Incoming
{
///
/// 心跳包数据对象
///
public class HeartBeatMessage : CommonMessage
{
///
/// 油枪数
///
public int GunCount { get; set; }
///
/// 各油枪状态
///
public List NozzleStatus { get; set; }
public override CommonMessage ToObject(byte[] datas)
{
this.getBaseData(datas);
this.GunCount = datas[7];
List nozzleStates = new List();
for (int index = 8;index < datas.Length - 2;index += 3)
{
HeartBeatNozzleState nozzle = new HeartBeatNozzleState()
{
NozzleNum = datas[index],
WorkState = datas[index + 1],
AccreditState = datas[index + 2]
};
nozzleStates.Add(nozzle);
}
this.NozzleStatus = nozzleStates;
return this;
}
public override byte[] ToCommonByteArray()
{
byte[] content = new byte[] { 0x55, this.Handle, 0x00, ((byte)RESULT.OVER) };
return content2data(content);
}
}
public class HeartBeatNozzleState
{
///
/// 油枪号
///
public int NozzleNum { get; set; }
///
/// 上下班状态 0:下班;1:上班
///
public int WorkState { get; set; }
///
/// 授权模式状态 0表示前庭;1表示后台
///
public int AccreditState { get; set; }
}
}