public static SlotCabinetEvent BuildFor(SlotCabinetRegistration registration, Action <SlotCabinetEvent> customize = null) { var eventSequenceId = Guid.NewGuid(); var slotCabinetEvent = new SlotCabinetEvent { EventSequenceId = eventSequenceId, SlotCabinetRegistrationId = registration.SlotCabinetRegistrationId, ProcessSequenceId = Guid.NewGuid(), EventDateTime = SliceFixture.GetSystemDateTime(), EventTypeId = (int)SlotEventType.Unknown }; customize?.Invoke(slotCabinetEvent); registration.SlotCabinetEvents.Add(slotCabinetEvent); return(slotCabinetEvent); }
public static SlotCabinetEventTicketPrinted BuildFor(SlotCabinetEvent slotCabinetEvent, int ticketNumber, Action <SlotCabinetEventTicketPrinted> customizeTicket = null) { var slotCabinetEventTicketPrinted = new SlotCabinetEventTicketPrinted { Amount = (uint)Utils.GetRandomTicketAmount(), SystemId = (byte)ticketNumber, ValidationNumber = "100", TicketNumber = (ushort)ticketNumber, TicketType = (byte)ticketNumber, PoolId = (ushort)ticketNumber, PrintedDateTime = SliceFixture.GetSystemDateTime(), ExpirationDateTime = SliceFixture.GetSystemDateTime().AddDays(2), EventSequenceId = slotCabinetEvent.EventSequenceId, }; customizeTicket?.Invoke(slotCabinetEventTicketPrinted); //update ticket hash slotCabinetEventTicketPrinted.TicketHash = null;//slotCabinetEventTicketPrinted.GenerateTicketHashCode(slotCabinetEvent.SlotCabinetRegistrationId); return(slotCabinetEventTicketPrinted); }