public BookingRQ toBookingRQ()
{
BookingRQ bookingRQ = new BookingRQ();
bookingRQ.holder = this.holder;
bookingRQ.clientReference = this.clientReference;
bookingRQ.remark = this.remark;
if ( !String.IsNullOrEmpty(cardType) && !String.IsNullOrEmpty(cardNumber) && !String.IsNullOrEmpty(cardHolderName) && !String.IsNullOrEmpty(expiryDate) && cardCVC != null ||
!String.IsNullOrEmpty(email) && !String.IsNullOrEmpty(phoneNumber))
{
PaymentData paymentData = new PaymentData();
if ( !String.IsNullOrEmpty(cardType) && !String.IsNullOrEmpty(cardNumber) && !String.IsNullOrEmpty(cardHolderName) && !String.IsNullOrEmpty(expiryDate) && !String.IsNullOrEmpty(cardCVC))
paymentData.paymentCard = new PaymentCard() { cardType = cardType, cardNumber = cardNumber, cardHolderName = cardHolderName, expiryDate = expiryDate, cardCVC = cardCVC };
if (!String.IsNullOrEmpty(email) && !String.IsNullOrEmpty(phoneNumber))
paymentData.contactData = new PaymentContactData() { email = email, phoneNumber = phoneNumber };
bookingRQ.paymentData = paymentData;
}
for(int i = 0; i < rooms.Count; i++)
{
BookingRoom room = new BookingRoom();
room.rateKey = rooms[i].rateKey;
room.paxes = new List<Pax>();
for(int p = 0; p < rooms[i].details.Count; p++)
{
Pax pax = new Pax();
pax.type = (rooms[i].details[p].getType() == RoomDetail.GuestType.ADULT) ? SimpleTypes.HotelbedsCustomerType.AD : SimpleTypes.HotelbedsCustomerType.CH;
pax.age = rooms[i].details[p].getAge();
pax.name = rooms[i].details[p].getName();
pax.surname = rooms[i].details[p].getSurname();
pax.roomId = rooms[i].details[p].getRoomId();
room.paxes.Add(pax);
}
bookingRQ.rooms.Add(room);
}
bookingRQ.Validate();
return bookingRQ;
}