public void MergeFrom(ReservationSummaryLite other)
 {
     if (other == null)
     {
         return;
     }
     if (other.entityId_ != null)
     {
         if (entityId_ == null)
         {
             entityId_ = new global::HOLMS.Types.Booking.Indicators.ReservationIndicator();
         }
         EntityId.MergeFrom(other.EntityId);
     }
     if (other.State != 0)
     {
         State = other.State;
     }
     if (other.BookingNumber != 0L)
     {
         BookingNumber = other.BookingNumber;
     }
     if (other.BookingPrefix.Length != 0)
     {
         BookingPrefix = other.BookingPrefix;
     }
     if (other.CurrentOccupiedRoomNumber.Length != 0)
     {
         CurrentOccupiedRoomNumber = other.CurrentOccupiedRoomNumber;
     }
     if (other.TerminalOccupiedRoomNumber.Length != 0)
     {
         TerminalOccupiedRoomNumber = other.TerminalOccupiedRoomNumber;
     }
     if (other.FirstNightAssignedRoomNumber.Length != 0)
     {
         FirstNightAssignedRoomNumber = other.FirstNightAssignedRoomNumber;
     }
     if (other.VehiclePlateInformation.Length != 0)
     {
         VehiclePlateInformation = other.VehiclePlateInformation;
     }
     if (other.arrivalDate_ != null)
     {
         if (arrivalDate_ == null)
         {
             arrivalDate_ = new global::HOLMS.Types.Primitive.PbLocalDate();
         }
         ArrivalDate.MergeFrom(other.ArrivalDate);
     }
     if (other.departureDate_ != null)
     {
         if (departureDate_ == null)
         {
             departureDate_ = new global::HOLMS.Types.Primitive.PbLocalDate();
         }
         DepartureDate.MergeFrom(other.DepartureDate);
     }
     if (other.RoomTypeName.Length != 0)
     {
         RoomTypeName = other.RoomTypeName;
     }
     if (other.OTANumber.Length != 0)
     {
         OTANumber = other.OTANumber;
     }
     if (other.GuestText.Length != 0)
     {
         GuestText = other.GuestText;
     }
     if (other.MasterFolioText.Length != 0)
     {
         MasterFolioText = other.MasterFolioText;
     }
     if (other.IsGroupAssociated != false)
     {
         IsGroupAssociated = other.IsGroupAssociated;
     }
     if (other.currentDueFromGuest_ != null)
     {
         if (currentDueFromGuest_ == null)
         {
             currentDueFromGuest_ = new global::HOLMS.Types.Primitive.MonetaryAmount();
         }
         CurrentDueFromGuest.MergeFrom(other.CurrentDueFromGuest);
     }
     if (other.GuaranteeStatus != 0)
     {
         GuaranteeStatus = other.GuaranteeStatus;
     }
     if (other.ReservationSource.Length != 0)
     {
         ReservationSource = other.ReservationSource;
     }
 }
        public override int GetHashCode()
        {
            int hash = 1;

            if (entityId_ != null)
            {
                hash ^= EntityId.GetHashCode();
            }
            if (State != 0)
            {
                hash ^= State.GetHashCode();
            }
            if (BookingNumber != 0L)
            {
                hash ^= BookingNumber.GetHashCode();
            }
            if (BookingPrefix.Length != 0)
            {
                hash ^= BookingPrefix.GetHashCode();
            }
            if (CurrentOccupiedRoomNumber.Length != 0)
            {
                hash ^= CurrentOccupiedRoomNumber.GetHashCode();
            }
            if (TerminalOccupiedRoomNumber.Length != 0)
            {
                hash ^= TerminalOccupiedRoomNumber.GetHashCode();
            }
            if (FirstNightAssignedRoomNumber.Length != 0)
            {
                hash ^= FirstNightAssignedRoomNumber.GetHashCode();
            }
            if (VehiclePlateInformation.Length != 0)
            {
                hash ^= VehiclePlateInformation.GetHashCode();
            }
            if (arrivalDate_ != null)
            {
                hash ^= ArrivalDate.GetHashCode();
            }
            if (departureDate_ != null)
            {
                hash ^= DepartureDate.GetHashCode();
            }
            if (RoomTypeName.Length != 0)
            {
                hash ^= RoomTypeName.GetHashCode();
            }
            if (OTANumber.Length != 0)
            {
                hash ^= OTANumber.GetHashCode();
            }
            if (GuestText.Length != 0)
            {
                hash ^= GuestText.GetHashCode();
            }
            if (MasterFolioText.Length != 0)
            {
                hash ^= MasterFolioText.GetHashCode();
            }
            if (IsGroupAssociated != false)
            {
                hash ^= IsGroupAssociated.GetHashCode();
            }
            if (currentDueFromGuest_ != null)
            {
                hash ^= CurrentDueFromGuest.GetHashCode();
            }
            if (GuaranteeStatus != 0)
            {
                hash ^= GuaranteeStatus.GetHashCode();
            }
            if (ReservationSource.Length != 0)
            {
                hash ^= ReservationSource.GetHashCode();
            }
            return(hash);
        }