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