public AccommodationBookingInfo(int bookingId, AccommodationBookingDetails bookingDetails, int counterpartyId,
                                 BookingPaymentStatuses paymentStatus, MoneyAmount totalPrice, Suppliers?supplier, BookingAgentInformation agentInformation)
 {
     BookingId        = bookingId;
     BookingDetails   = bookingDetails;
     CounterpartyId   = counterpartyId;
     PaymentStatus    = paymentStatus;
     TotalPrice       = totalPrice;
     Supplier         = supplier;
     AgentInformation = agentInformation;
 }
 public AccommodationBookingInfo(int bookingId, AccommodationBookingDetails bookingDetails, int agencyId,
                                 BookingPaymentStatuses paymentStatus, MoneyAmount totalPrice, MoneyAmount cancellationPenalty, Suppliers?supplier,
                                 BookingAgentInformation agentInformation, PaymentTypes paymentMethod, List <string> tags,
                                 bool?isDirectContract)
 {
     BookingId           = bookingId;
     BookingDetails      = bookingDetails;
     AgencyId            = agencyId;
     PaymentStatus       = paymentStatus;
     TotalPrice          = totalPrice;
     CancellationPenalty = cancellationPenalty;
     Supplier            = supplier;
     AgentInformation    = agentInformation;
     PaymentMethod       = paymentMethod;
     Tags             = tags;
     IsDirectContract = isDirectContract;
 }
 public bool Equals(AccommodationBookingDetails other)
 => (ReferenceCode, Status, CheckInDate, CheckOutDate, AccommodationId, AccommodationName, DeadlineDate, RoomDetails, NumberOfPassengers) ==
 (other.ReferenceCode, other.Status, other.CheckInDate, other.CheckOutDate, other.AccommodationId, other.AccommodationName,