Przejdź do treści

Klasa Guest

Klasa Guest reprezentuje pojedynczego gościa w systemie rezerwacji hotelowej.

Służy do przechowywania podstawowych danych osobowych i kontaktowych, takich jak imię, nazwisko, e-mail czy numer telefonu.


Dokumentacja techniczna

Reprezentuje gościa hotelu.

Atrybuty

guest_id (str): Unikatowy identyfikator gościa hotelu. first_name (str): Imię gościa. last_name (str): Nazwisko gościa. email (str): Adres e-mail gościa. phone_number (str): Numer telefonu gościa.

Inicjalizuje obiekt Guest z unikalnym ID.

Source code in models/guest.py
def __init__(self, first_name: str, last_name: str, email: str, phone_number: str):
    """Inicjalizuje obiekt Guest z unikalnym ID."""
    if not first_name or not isinstance(first_name, str):
        raise ValueError("Imię nie może być puste.")
    if not last_name or not isinstance(last_name, str):
         raise ValueError("Nazwisko nie może być puste.")
    if not email or "@" not in email or "." not in email.split("@")[1]:
         raise ValueError("Nieprawidłowy format adresu e-mail.")
    if not phone_number or not isinstance(phone_number, str):
         raise ValueError("Numer telefonu nie może być pusty.")


    self.guest_id: str = str(uuid.uuid4())
    self.first_name: str = first_name
    self.last_name: str = last_name
    self.email: str = email
    self.phone_number: str = phone_number

get_contact_info()

Zwraca informacje kontaktowe gościa.

Zwraca

Dict[str, str]: Słownik z adresem e-mail i numerem telefonu.

Source code in models/guest.py
def get_contact_info(self) -> Dict[str, str]:
    """Zwraca informacje kontaktowe gościa.

    Zwraca:
        Dict[str, str]: Słownik z adresem e-mail i numerem telefonu.
    """
    return {"email": self.email, "phone_number": self.phone_number}

get_full_name()

Zwraca pełne imię gościa.

Zwraca

str: Imię i nazwisko.

Source code in models/guest.py
def get_full_name(self) -> str:
    """Zwraca pełne imię gościa.

    Zwraca:
        str: Imię i nazwisko.
    """
    return f"{self.first_name} {self.last_name}"

Przykład użycia

1
2
3
4
5
from models.guest import Guest

gosc = Guest("Anna", "Nowak", "anna.nowak@email.com", "123456789")
print(gosc.get_full_name())
print(gosc.get_contact_info())