Beispiel #1
0
 /// <summary>
 /// Macht den Verkauf und oder die Reservierung einer Kinokarte rückgängig.
 /// </summary>
 /// <param name="kinokarte">The Kinokarte to get.</param>
 /// <remarks></remarks>
 public void KinokarteZurücksetzen(Kinokarte kinokarte)
 {
     if (!_kinokarten.Contains(kinokarte))
     {
         throw new ArgumentException("Die Kinokarte " + kinokarte + " gehört nicht zu dieser Vorstellung!");
     }
     kinokarte.Verkauft = false;
     kinokarte.ReservierungAufheben();
     NotifyObservers();
 }
Beispiel #2
0
        /// <summary>
        /// Entfernt das übergebene Kinokarte aus dieser Reservierung.
        /// </summary>
        /// <param name="kinokarte">Das Kinokarte.</param>
        /// <remarks></remarks>
        public void TicketEntfernen(Kinokarte kinokarte)
        {
            kinokarte.ReservierungAufheben();
            _kinokarten.Remove(kinokarte);

            if (_kinokarten.Count == 0)
            {
                _reservierungen.RemoveElement(this);
            }
        }
Beispiel #3
0
        public Reservierung(Kinokarte kinokarte, IKunde kunde, bool rabatt, IKinokarteBlockierungZugangsSchlüssel key)
        {
            _vorstellung = kinokarte.Vorstellung;
            _kinokarten  = new List <Kinokarte>();
            TicketHinzufügen(kinokarte, key);
            _reservierungsnummer = _kinokarten.Count;
            _kunde  = kunde;
            _rabatt = rabatt;

            _reservierungen = new EntityManager <Reservierung>();
            _reservierungen.AddElement(this);
        }
Beispiel #4
0
        public Reservierung(Kinokarte kinokarte, IKunde kunde, bool rabatt, IKinokarteBlockierungZugangsSchlüssel key)
        {
            _vorstellung = kinokarte.Vorstellung;
            _kinokarten = new List<Kinokarte>();
            TicketHinzufügen(kinokarte, key);
            _reservierungsnummer = _kinokarten.Count;
            _kunde = kunde;
            _rabatt = rabatt;

            _reservierungen = new EntityManager<Reservierung>();
            _reservierungen.AddElement(this);
        }
Beispiel #5
0
        /// <summary>
        /// Kinokarte der Reservierung hinzufügen
        /// </summary>
        /// <param name="kinokarte">Das Kinokarte welches der Reservierung hinzugefügt werden soll.</param>
        /// <remarks></remarks>
        public void TicketHinzufügen(Kinokarte kinokarte, IKinokarteBlockierungZugangsSchlüssel key)
        {
            if (_vorstellung != null && kinokarte.Vorstellung != _vorstellung)
            {
                throw new Exception("Kinokarten in a reservation must all belong to the same vorstellung!");
            }

            if (kinokarte.Reserviert || kinokarte.Verkauft)
            {
                throw new Exception("Kinokarte already bought or reserved!");
            }

            kinokarte.BlockierungAufheben(key);

            kinokarte.Rabatt = _rabatt;
            kinokarte.Reservieren();
            _kinokarten.Add(kinokarte);
        }
Beispiel #6
0
 /// <summary>
 /// Verkauft die angegebene Kinokarte.
 /// </summary>
 /// <param name="kinokarte"></param>
 /// <remarks></remarks>
 public void VerkaufeKinokarte(Kinokarte kinokarte)
 {
     kinokarte.Verkauft = true;
     NotifyObservers();
 }
Beispiel #7
0
 /// <summary>
 /// Reserviert die angegebene Kinokarte.
 /// </summary>
 /// <param name="kinokarte"></param>
 /// <remarks></remarks>
 public void ReserviereKinokarte(Kinokarte kinokarte)
 {
     kinokarte.Reservieren();
     NotifyObservers();
 }
Beispiel #8
0
 /// <summary>
 /// Macht den Verkauf und oder die Reservierung einer Kinokarte rückgängig.
 /// </summary>
 /// <param name="kinokarte">The Kinokarte to get.</param>
 /// <remarks></remarks>
 public void KinokarteZurücksetzen(Kinokarte kinokarte)
 {
     if (!_kinokarten.Contains(kinokarte))
     {
         throw new ArgumentException("Die Kinokarte " + kinokarte + " gehört nicht zu dieser Vorstellung!");
     }
     kinokarte.Verkauft = false;
     kinokarte.ReservierungAufheben();
     NotifyObservers();
 }
Beispiel #9
0
        /// <summary>
        /// Kinokarte der Reservierung hinzufügen
        /// </summary>
        /// <param name="kinokarte">Das Kinokarte welches der Reservierung hinzugefügt werden soll.</param>
        /// <remarks></remarks>
        public void TicketHinzufügen(Kinokarte kinokarte, IKinokarteBlockierungZugangsSchlüssel key)
        {
            if (_vorstellung != null && kinokarte.Vorstellung != _vorstellung)
            {
                throw new Exception("Kinokarten in a reservation must all belong to the same vorstellung!");
            }

            if (kinokarte.Reserviert || kinokarte.Verkauft)
            {
                throw new Exception("Kinokarte already bought or reserved!");
            }

            kinokarte.BlockierungAufheben(key);

            kinokarte.Rabatt = _rabatt;
            kinokarte.Reservieren();
            _kinokarten.Add(kinokarte);
        }
Beispiel #10
0
        /// <summary>
        /// Entfernt das übergebene Kinokarte aus dieser Reservierung.
        /// </summary>
        /// <param name="kinokarte">Das Kinokarte.</param>
        /// <remarks></remarks>
        public void TicketEntfernen(Kinokarte kinokarte)
        {
            kinokarte.ReservierungAufheben();
            _kinokarten.Remove(kinokarte);

            if (_kinokarten.Count == 0)
            {
                _reservierungen.RemoveElement(this);
            }
        }
Beispiel #11
0
 /// <summary>
 /// Verkauft die angegebene Kinokarte.
 /// </summary>
 /// <param name="kinokarte"></param>
 /// <remarks></remarks>
 public void VerkaufeKinokarte(Kinokarte kinokarte)
 {
     kinokarte.Verkauft = true;
     NotifyObservers();
 }
Beispiel #12
0
 /// <summary>
 /// Reserviert die angegebene Kinokarte.
 /// </summary>
 /// <param name="kinokarte"></param>
 /// <remarks></remarks>
 public void ReserviereKinokarte(Kinokarte kinokarte)
 {
     kinokarte.Reservieren();
     NotifyObservers();
 }
Beispiel #13
0
 public Buchung(Kinokarte kinokarte, IKunde kunde, bool discount, IKinokarteBlockierungZugangsSchlüssel key)
     : base(kinokarte, kunde, discount, key)
 {
 }
Beispiel #14
0
 public Buchung(Kinokarte kinokarte, IKunde kunde, bool discount, IKinokarteBlockierungZugangsSchlüssel key)
     : base(kinokarte, kunde, discount, key)
 {
 }