Пример #1
0
 /// <summary>
 /// Funkcja do usuwania biletów, zwraca fałsz jeżeli nie ma danego biletu na liście
 /// zwraca prawde jeżeli usuwany bilet był na liście i usuną dany bilet
 /// </summary>
 /// <param name="UsuwanyBilet"></param>
 /// <returns></returns>
 public Boolean UsunBiletRezerwacje(RezerwcjaBilet UsuwanyBilet)
 {
     if (ListaBiletowRezerwacji.Count() != 0)
     {
         foreach (RezerwcjaBilet Obiekt in ListaBiletowRezerwacji)
         {
             if (Obiekt == UsuwanyBilet)
             {
                 ListaBiletowRezerwacji.Remove(UsuwanyBilet);
                 return(true);
             }
         }
     }
     return(false);
 }
Пример #2
0
 /// <summary>
 /// Funkcja zwracająca fałsz jak chcemy dodać bilet który już jest na liśćie
 /// nie wiem czy się przyda ale tak na wszelki wypadek już jest XD
 /// </summary>
 /// <returns></returns>
 public Boolean DodajBiletRezerwacje(RezerwcjaBilet DodawanyBilet)
 {
     if (ListaBiletowRezerwacji.Count() != 0)
     {
         foreach (RezerwcjaBilet Obiekt in ListaBiletowRezerwacji)// to prawdopodobnie nie jest potrzebne , jak będziemy robili to w WPFie to nie będzie sytuacji gdzie dodajemy ten sam bilet
         {
             if (Obiekt == DodawanyBilet)
             {
                 return(false);
             }
         }
     }
     ListaBiletowRezerwacji.Add(DodawanyBilet);
     return(true);
 }
Пример #3
0
        /// <summary>
        /// Funkcja potrzebna w sytuacji, kiedy Id jest brane z listy usuniętych obiektów , ta funkcja sprawdza czy Taka sytuacja miała miejsce
        /// Zwraca true jeżeli id pierwszego biletu jest większa, zwraca false w przeciwnym wypadku
        /// </summary>
        /// <returns></returns>
        public Boolean PorownajIDBiletow(RezerwcjaBilet Bilet1, RezerwcjaBilet Bilet2)
        {
            if (Bilet1.GetNRMiejsca() > Bilet2.GetNRMiejsca())
            {
                return(true);
            }

            if (Bilet1.GetNRMiejsca() < Bilet2.GetNRMiejsca())
            {
                return(false);
            }

            throw new Wyjatek("Bardzo poważny problem , dwa bilety mają ten sam numer miejsca co nie powinno mić miejsca!"); // poważny błąd, raczej nie trzeba go obsługiwac , napisany po to żeby
                                                                                                                             // zawiadomic że wystąpił błąd logiczny i trzeba popatrzeć w kodzik- możliwe że jakieś
                                                                                                                             //id z kosza zostało dane na koniec listy i tworzą się kopie id które juz jest na liści
        }
Пример #4
0
        /// <summary>
        /// Funkcja dodająca rezerwacje na dany lot dla danej osoby, CyToKupno określa czy klient rezerwuje czy kupuje od razu bilet
        /// </summary>
        /// <param name="Obiekt"></param>
        /// <param name="CzyVIP"></param>
        /// <returns></returns>
        public void RezerwujKupBilet(Klient Obiekt, Boolean CzyVIP, Boolean CzyToKupno, DateTime AktualnaData)
        {
            if (this.GetSamolot() != null)
            {
                if ((this.GetIloscMiejscWolnychZwyklych() != 0 && CzyVIP == false) || (this.GetIloscMiejscWolnychVip() != 0 && CzyVIP == true))          // funkcja sprawdza czy można zarezerwować miejsce
                {
                    RezerwcjaBilet NowyBilecikRezerwacja = new RezerwcjaBilet(PrzydzielanieIDRezerwacja(), 0, CzyVIP, Obiekt, AktualnaData, CzyToKupno); // te zero trzeba zamienic na funkcje liczącą cene biletu , na przykład na podstawie odległości
                    Obiekt.DodajBiletRezerwacje(NowyBilecikRezerwacja);

                    if (PorownajIDBiletow(NowyBilecikRezerwacja, ListaRezerwacji[ListaRezerwacji.Count() - 1]))// to sytuacja kiedy nowy obiekt ma większe id - jest dodawany na koncu
                    {
                        ListaRezerwacji.Add(NowyBilecikRezerwacja);
                    }
                    else
                    {
                        ListaRezerwacji.Insert(0, NowyBilecikRezerwacja);
                    }
                }
                throw new Wyjatek("Nie ma miejsca w samolocie");           // wyjątek który wystrczy obsłużyć errorem na ekranie
            }
            throw new Wyjatek("Nie ma przydzielonego samolotu dla trasy"); // wyjątek, którego nie trzeba raczej obsługiwać, to dla wiadomości że coś w logice nie działa
        }
Пример #5
0
 /// <summary>
 ///  Funkcja usuwająca rezerwacje i bilety- usuwa z listy w kliencie i z listy w Locie
 ///  Nie ma żadanego boola czy zwracania wyjątków , więc z góry zakładamy że biletdousunięcia istnieje tak samo jak Klient
 /// </summary>
 /// <param name="Objekt"></param>
 /// <param name="Biletdousuniecia"></param>
 public void AnulujRezerwacje(Klient Objekt, RezerwcjaBilet Biletdousuniecia)
 {
     LNIDRezerwacjiBiletow.Add(Biletdousuniecia.GetNrRezerwacji());// numer biletu jest wsadzany do kosza, z którego później będzie brane
     ListaRezerwacji.Remove(Biletdousuniecia);
     Objekt.UsunBiletRezerwacje(Biletdousuniecia);
 }