示例#1
0
        /// <summary>
        /// Funkcja dodająca do listy dwa obiekty Tras: Lotnisko1-Lotnisko2 oraz Lotnisko2-Lotnisko1
        /// </summary>
        /// <param name="Lotnisko1"></param>
        /// <param name=""></param>
        public void DodajTrase(Lotnisko Lotnisko1, Lotnisko Lotnisko2, int odleglosc)// można przetestować
        {
            Trasa tmp1 = new Trasa(Lotnisko1, Lotnisko2, odleglosc);
            Trasa tmp2 = new Trasa(tmp1);

            ListaTras.Add(tmp1);
            ListaTras.Add(tmp2);
        }
示例#2
0
 public PlanLotu(DateTime PierwszyLot, TimeSpan _CoIleLata, Trasa Kierunek, TypSamolotu _RodzajSamolotu, TimeSpan NajakiPrzedzialCzasuTworzyc)
 {
     NaJakiPrzedzialczasu = NajakiPrzedzialCzasuTworzyc;
     Polaczenie           = Kierunek;
     CZasBazowy           = PierwszyLot;
     CoIleLata            = _CoIleLata;
     RodzajSamolotu       = _RodzajSamolotu;
     PierwszyLot          = PierwszyLot.Subtract(CoIleLata);// te odjęcie czasu wiąże się z sposobem dodawania nowych lotów
 }
示例#3
0
 /// <summary>
 /// Specialny konstruktor Lotu, zakłada powrót tego samego samolotu więc tworzony lot ma wszystko takie same prócz: IDLotu , daty wylotu, kolejności Lotnisk w trasie, po tym wywołaniu stary lot powinien zostac usunięty
 /// </summary>
 public Lot(Lot IstniejacyLOt, string _IDLotu, TimeSpan IloscCzasuDoStartuLiczonaOdMomentuLondowania)
 {
     this.LNIDRezerwacjiBiletow = new List <string>();
     this.ListaRezerwacji       = new List <RezerwcjaBilet>();
     IstniejacyLOt.GetSamolot().ZmianaDostepu(); // taki cheat żeby przez chwile samolt był dostępny ten cheat się komplikuje wiestety , lepiej nie ruszać
     this.SetPojazd(IstniejacyLOt.GetTypSamolotu(), IstniejacyLOt.GetSamolot().GetIDWlasne());
     IstniejacyLOt.GetSamolot().ZmianaDostepu(); // taki cheat
     this.DataGodzinaWylotu = IstniejacyLOt.DataLądowaniaDateTime().Add(IloscCzasuDoStartuLiczonaOdMomentuLondowania);
     this.CzasLotu          = IstniejacyLOt.GetCzasLotu();
     this.Droga             = new Trasa(IstniejacyLOt.GetDroga());
 }
示例#4
0
 /// <summary>
 /// konstruktor kopiujący, jeżeli chcemy zrobić taki sam lot przesunięty w czasie o Jakiś przedział czasu
 /// </summary>
 public Lot(Lot IstniejącyLot, TimeSpan OjakiCZasPrzesuniety, String _IDLotu)
 {
     LNIDRezerwacjiBiletow = new List <string>();
     ListaRezerwacji       = new List <RezerwcjaBilet>();
     SetID(_IDLotu);
     Droga             = IstniejącyLot.GetDroga();
     DataGodzinaWylotu = IstniejącyLot.GetDataWylDT();
     DataGodzinaWylotu = DataGodzinaWylotu.Add(OjakiCZasPrzesuniety);
     Pojazd            = null;
     CzasLotu          = new TimeSpan(0, 0, 0);
 }
示例#5
0
        public Boolean CzyMaWracac;// zmienna określająca czy ma wrocić, koncepcja lotu polega na tym że leci do miejsca docelowego , a później wraca, tworzy to dwa połączenia , można w sumie wywalić i trzeba określać loty w dwie strony oddzielnie

        /*  ~Lot(){
         *    this.GetSamolot().ZmianaDostepu();// kiedu Lot jest usuwany samolot jest zwalniany
         * }
         */

        /// <summary>
        /// Podstawowy konstruktor do lotu
        /// </summary>
        public Lot(string ID, Trasa _Droga, int RokWylot, int MiesWyl, int DzienWyl, int GodzWyl, int MinWyl, Boolean _CZyMawracac)
        {
            LNIDRezerwacjiBiletow = new List <string>();
            ListaRezerwacji       = new List <RezerwcjaBilet>();
            SetID(ID);
            Droga             = _Droga;
            DataGodzinaWylotu = new DateTime(RokWylot, MiesWyl, DzienWyl, GodzWyl, MinWyl, 0); //ostatnia liczna to sekundy- nieistotna wartość w programie
            Pojazd            = null;                                                          // to też pomaga stwierdzić czy istnieje samolot który jest zapisany do trasy
            CzasLotu          = new TimeSpan(0, 0, 0);                                         //dzięki temu wiemy że na początku nie ma konkretnego samolotu który obsługuje ta trase
            CzyMaWracac       = _CZyMawracac;
        }
示例#6
0
 /// <summary>
 /// Metoda statyczna , Po to żeby sprawdzać czy wybrany samolot i trasa będą dobre- metode stayczną da się wywoływać jak nie istnieje obiekt
 /// </summary>
 /// <param name="TypPojazdu"></param>
 /// <param name="Droga"></param>
 public static Boolean CzyDoleci(TypSamolotu TypPojazdu, Trasa Droga)
 {
     if (TypPojazdu.GetZasieg() >= Droga.GetOdleglosc())
     {
         return(true);
     }
     else
     {
         return(false);
     }
 }
示例#7
0
        static void Main(string[] args)
        {
            Firma TestFunkcji = new Firma();

            Osoba osoba1 = new Osoba("PAwd", "dasd", TestFunkcji.PrzydzielanieID <Klient>(TestFunkcji.ListaKlientow, TestFunkcji.LNIDKlientow));

            TestFunkcji.ListaKlientow.Add(osoba1);


            Osoba osoba2 = new Osoba("PAaswd", "daasdsd", TestFunkcji.PrzydzielanieID <Klient>(TestFunkcji.ListaKlientow, TestFunkcji.LNIDKlientow));

            TestFunkcji.ListaKlientow.Add(osoba2);

            Lotnisko lotnisko1 = new Lotnisko("Nowyjork");
            Lotnisko Lotnisko2 = new Lotnisko("Berlon");

            TestFunkcji.ListaLotnisk.Add(lotnisko1);
            TestFunkcji.ListaLotnisk.Add(Lotnisko2);
            Trasa trasa = new Trasa(lotnisko1, Lotnisko2, 230);

            // trasy - działa
            TestFunkcji.ListaTras.Add(trasa);
            Lot nowylot1 = new Lot(TestFunkcji.PrzydzielanieID <Lot>(TestFunkcji.ListaLotow, TestFunkcji.LNIDLotow), trasa, 2000, 9, 21, 8, 3, false);

            TestFunkcji.ListaLotow.Add(nowylot1);
            Lot nowylot2 = new Lot(TestFunkcji.PrzydzielanieID <Lot>(TestFunkcji.ListaLotow, TestFunkcji.LNIDLotow), trasa, 2030, 9, 21, 8, 3, false);

            TestFunkcji.ListaLotow.Add(nowylot2);
            // loty - działa

            TypSamolotu nowytyp = new TypSamolotu("Test", 23, 23, 23, 12);

            nowytyp.DodajSamolot(TestFunkcji.PrzydzielanieID <Samolot>(nowytyp.GetListaSamolotow(), nowytyp.GetLNIDSamolotow()));
            nowytyp.DodajSamolot(TestFunkcji.PrzydzielanieID <Samolot>(nowytyp.GetListaSamolotow(), nowytyp.GetLNIDSamolotow()));// tą jedna linijką tworzy sie nowy samolot, dodaje do listy, i ma indywidualne id



            TestFunkcji.ZapisDoPliku();
            TestFunkcji.OdczytZPliku();
            foreach (Trasa X in TestFunkcji.ListaTras)
            {
                Console.WriteLine(X.GetIDTrasy() + " ");
            }


            Console.ReadLine();
        }
示例#8
0
 /// <summary>
 /// konstruktor kopiujący, który odwraca kierunek poróży
 /// </summary>
 /// <param name="Droga"></param>
 public Trasa(Trasa Droga)
 {
     this.Lotnisko1 = Droga.Lotnisko2;
     this.Lotnisko2 = Droga.Lotnisko1;
     Odleglosc      = Droga.Odleglosc;
 }