Exemplo n.º 1
0
        public int Reserver(int clientId, int hotelId, int chambreId, DateTime dateArrivee, DateTime dateDepart)
        {
            int     id      = CompteurReservations;
            Client  client  = _Clients[clientId];
            Chambre chambre = Hotels[hotelId].Chambres[chambreId];

            if (!chambre.estDisponible(dateArrivee, dateDepart))
            {
                throw new ChambreNonDisponibleException(hotelId, chambreId, dateArrivee, dateDepart);
            }

            Reservation reservation = new Reservation(id, dateArrivee, dateDepart, chambre, client);

            _Reservations.Add(id, reservation);
            chambre.Reservations.Add(reservation);

            return(id);
        }
Exemplo n.º 2
0
        private bool ChambreCorrespond(Chambre chambre, DateTime dateArrivee, DateTime dateDepart, double prixmin, double prixmax, int nbpersonne)
        {
            if (!chambre.estDisponible(dateArrivee, dateDepart))
            {
                return(false);
            }

            if (prixmin != -1 && chambre.Prix < prixmin)
            {
                return(false);
            }

            if (prixmax != -1 && chambre.Prix > prixmax)
            {
                return(false);
            }

            if (nbpersonne != -1 && chambre.Nblit < nbpersonne)
            {
                return(false);
            }

            return(true);
        }