Example #1
0
        public void Reserver(int nbPassagers, TauxOccupation seuilCapacite)
        {
            if (!PeutReserver(nbPassagers, seuilCapacite))
            {
                throw new VoiturePleineException(Numero);
            }

            PlacesOccupees += nbPassagers;
        }
Example #2
0
        public Reservation Reserver(IReadOnlyCollection <Passager> passagers, TauxOccupation seuilCapacite)
        {
            if (!PeutReserver(passagers.Count, seuilCapacite))
            {
                throw new TrainPleinException();
            }

            var voitureAvecDeLaPlace =
                Voitures.First(v => v.PeutReserver(passagers.Count, seuilCapacite));

            voitureAvecDeLaPlace.Reserver(passagers.Count, seuilCapacite);

            return(new Reservation(IdVoyage, passagers, voitureAvecDeLaPlace.Numero));
        }
Example #3
0
 public bool PeutReserver(int nbPassagers, TauxOccupation seuilCapacite) =>
 Voitures.Any(v => v.PeutReserver(nbPassagers, seuilCapacite));
Example #4
0
 public bool PeutReserver(int nbPassagers, TauxOccupation seuilCapacite) =>
 PlacesOccupees + nbPassagers < Capacite * (decimal)seuilCapacite;