/// <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(); }
/// <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); } }
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); }
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); }
/// <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); }
/// <summary> /// Verkauft die angegebene Kinokarte. /// </summary> /// <param name="kinokarte"></param> /// <remarks></remarks> public void VerkaufeKinokarte(Kinokarte kinokarte) { kinokarte.Verkauft = true; NotifyObservers(); }
/// <summary> /// Reserviert die angegebene Kinokarte. /// </summary> /// <param name="kinokarte"></param> /// <remarks></remarks> public void ReserviereKinokarte(Kinokarte kinokarte) { kinokarte.Reservieren(); NotifyObservers(); }
public Buchung(Kinokarte kinokarte, IKunde kunde, bool discount, IKinokarteBlockierungZugangsSchlüssel key) : base(kinokarte, kunde, discount, key) { }