public override void GetTargetData(IFreeformEntity_MsgTgt tgt, ref List <byte> buffer) { FFTgt_H2G_Ticket_Redemption_Response tgt2 = tgt as FFTgt_H2G_Ticket_Redemption_Response; buffer.SetBCDValue(tgt2.Barcode, 9); buffer.SetBCDValue(tgt2.Amount, 4); buffer.SetValue(tgt2.Type.GetGmuIdInt8()); }
internal override IFreeformEntity ParseBufferInternal(ref IFreeformEntity entity, IFreeformEntity rootEntity, int id, byte[] buffer) { FFTgt_H2G_Ticket_Redemption_Response tgt = new FFTgt_H2G_Ticket_Redemption_Response(); tgt.Barcode = buffer.GetBCDValueString(0, 0, 9); tgt.Amount = buffer.GetBytesToBCDDouble(9, 4); tgt.Type = buffer[13].GetAppId<FF_GmuId_TicketTypes, FF_AppId_TicketTypes>(); return tgt; }
internal override IFreeformEntity ParseBufferInternal(ref IFreeformEntity entity, IFreeformEntity rootEntity, int id, byte[] buffer) { FFTgt_H2G_Ticket_Redemption_Response tgt = new FFTgt_H2G_Ticket_Redemption_Response(); tgt.Barcode = buffer.GetBCDValueString(0, 0, 9); tgt.Amount = buffer.GetBytesToBCDDouble(9, 4); tgt.Type = buffer[13].GetAppId <FF_GmuId_TicketTypes, FF_AppId_TicketTypes>(); return(tgt); }
public void Entity_TicketRedeem_Start_H2G() { FFMsg_H2G msg = FreeformEntityFactory.CreateEntity<FFMsg_H2G>(FF_FlowDirection.H2G, new FFCreateEntityRequest_H2G() { PollCode = FF_AppId_H2G_PollCodes.FreeformResponse, SessionID = FF_AppId_SessionIds.Tickets, TransactionID = 1, }); FFTgt_B2B_TicketInfo tgt = new FFTgt_B2B_TicketInfo(); msg.AddTarget(tgt); FFTgt_H2G_Ticket_Redemption_Response tgt2 = new FFTgt_H2G_Ticket_Redemption_Response(); tgt.AddTarget(tgt2); tgt2.Barcode = "100000000078789098"; tgt2.Amount = 9976; tgt2.Type = FF_AppId_TicketTypes.Cashable; byte[] buffer = FreeformEntityFactory.CreateBuffer(FF_FlowDirection.H2G, msg); string sBuffer = buffer.GetConvertBytesToHexString(string.Empty); Assert.AreEqual(sBuffer, "[05][FB][8A][01][00][01][00][01][00][11][0A][0F][03][10][00][00][00][00][78][78][90][98][00][00][99][76][00][0F]"); }