// Dodawanie urządzenia wraz z listą urządzeń
        public ActionDetails(Akcja akcja)
        {
            InitializeComponent();
            currAction = akcja;
            actionTypePicker.ItemsSource = App.typ_akcji.typ_akcji.Select(s => s.nazwa).ToList();
            categoryPicker.ItemsSource   = App.kategorie.kategorie.Select(s => s.nazwa).ToList();
            listDevices.ItemsSource      = urzadzenie.urzadzenie;

            addDeviceButton.Clicked    += AddDeviceButton_Clicked;
            numberOfDevices.Completed  += NumberOfDevices_Completed;
            listDevices.ItemTapped     += ListDevices_ItemTapped;
            acceptActionButton.Clicked += AcceptActionButton_Clicked;

            if (akcja.konserwacja)
            {
                actionTypePicker.SelectedIndex = 6;
                actionTypePicker.IsVisible     = false;
                actionTypePicker.IsEnabled     = false;
                acceptActionButton.IsVisible   = false;
                conservationLabel.Text        += akcja.dataStart.AddMonths(akcja.okres).ToShortDateString();
            }
            else
            {
                conservationLabel.IsVisible = false;
                if (akcja.zakonczone)
                {
                    acceptActionButton.IsEnabled = false;
                    acceptActionButton.Text      = "Zakończona!";
                }
            }

            GetDevices();
        }
Exemple #2
0
        private void WykonajWypuszczaniePasazerow()
        {
            var            czasRozpoczeciaAkcji = CzasRozpoczeciaAkcji(czasPrzejazdu);
            List <Pasazer> pasazerowie;
            TimeSpan       czasAkcji;

            if (obecnyPrzystanek == autobus.liniaAutobusu.ZwrocOstatniPrzystanek())
            {
                trasaZakonczona = true;
                obecnyPrzystanek.UsunAutobus(autobus);
                autobus.WypuscWszystkichPasazerow(obecnyPrzystanek);

                pasazerowie = autobus.ObecniPasazerowie;
                czasAkcji   = new TimeSpan(0, 0, autobus.WysadzPasazerow(obecnyPrzystanek, pasazerowie));
                Logger.ZalogujWypuszczniePasazerow(czasRozpoczeciaPrzejazdu + czasPrzejazdu, autobus, obecnyPrzystanek,
                                                   pasazerowie.Count, czasRozpoczeciaPrzejazdu + czasAkcji);
                Logger.ZalogujZakonczenieTrasy(czasRozpoczeciaAkcji, autobus, obecnyPrzystanek, autobus.liniaAutobusu,
                                               czasRozpoczeciaPrzejazdu + czasPrzejazdu);
                return;
            }

            pasazerowie = autobus.StworzListeWysiadajacychPasazerow(obecnyPrzystanek);
            czasAkcji   = new TimeSpan(0, 0, autobus.WysadzPasazerow(obecnyPrzystanek, pasazerowie));

            czasPrzejazdu += czasAkcji;

            Logger.ZalogujWypuszczniePasazerow(czasRozpoczeciaAkcji, autobus, obecnyPrzystanek, pasazerowie.Count,
                                               czasRozpoczeciaPrzejazdu + czasPrzejazdu);
            autobus.czasNastepnejAkcji = czasRozpoczeciaPrzejazdu + czasPrzejazdu;

            UstawCzasyAkcjiPojazdowOczekujacych(CzasNastepnejAkcji);
            nastepnaAkcja = Akcja.PobieraniePasazerow;
        }
Exemple #3
0
        private void WykonajPobieraniaPasazerow()
        {
            obecnyPrzystanek.UsunPrasazerowBezTrasy();
            obecnyPrzystanek.DodajAutobus(autobus);
            var pasazerowie = autobus.StworzListeWsiadajacychPasazerow(obecnyPrzystanek, autobus.liniaAutobusu,
                                                                       czasRozpoczeciaPrzejazdu + czasPrzejazdu);
            var czasAkcji = new TimeSpan(0, 0,
                                         autobus.PobierzPasazerow(obecnyPrzystanek, autobus.liniaAutobusu, pasazerowie));
            var spodziewanyCzasPrzyjazdu =
                linia.SpodziewanyCzasPrzejazduDoPrzystanku(
                    obecnyPrzystanek); // Spodziewany czas przez jaki autobus jest w trasie
            var czasRozpoczeciaAkcji = CzasRozpoczeciaAkcji(czasPrzejazdu);

            if (czasPrzejazdu + czasAkcji < spodziewanyCzasPrzyjazdu)
            {
                // Aby autobus nie mógł odjechać z przystanku przed spodziewanym czasem.
                czasPrzejazdu = spodziewanyCzasPrzyjazdu;
            }
            else
            {
                czasPrzejazdu += czasAkcji;
            }

            obecnyPrzystanek.RozkladJazdy.UstawJakoOdwiedzony(linia,
                                                              czasRozpoczeciaPrzejazdu + spodziewanyCzasPrzyjazdu);
            autobus.czasNastepnejAkcji = czasRozpoczeciaPrzejazdu + czasPrzejazdu;

            Logger.ZalogujPobieraniePasazerow(czasRozpoczeciaAkcji, autobus, obecnyPrzystanek, pasazerowie.Count,
                                              czasRozpoczeciaPrzejazdu + czasPrzejazdu);

            UstawCzasyAkcjiPojazdowOczekujacych(CzasNastepnejAkcji);
            nastepnaAkcja = Akcja.Przejazd;
        }
Exemple #4
0
 public ElementGUI()
 {
     SceneName = "";
     click     = new Akcja(Otworz_Scene);
     name      = "Button";
     position  = new Rect(0, 0, 0, 0);
     styl      = new GUIStyle();
 }
Exemple #5
0
 public ElementGUI()
 {
     SceneName = "";
     click = new Akcja(Otworz_Scene);
     name = "Button";
     position = new Rect(0, 0, 0, 0);
     styl = new GUIStyle();
 }
Exemple #6
0
 private Przejazd()
 {
     autobus         = null;
     nastepnaAkcja   = Akcja.PobieraniePasazerow;
     czasPrzejazdu   = TimeSpan.Zero;
     trasaZakonczona = false;
     uid             = UidGenerator.WygenerujUid();
 }
Exemple #7
0
        async void AddAction(Akcja akcja)
        {
            buttonAdd.IsEnabled = false;
            var json          = JsonConvert.SerializeObject(akcja);
            var stringContent = new StringContent(json, Encoding.UTF8, "application/json");

            var client       = new HttpClient();
            var postResposne = await client.PostAsync(App.api + "akcja", stringContent);

            buttonAdd.IsEnabled = true;
        }
Exemple #8
0
        private void WykonajPrzejazd()
        {
            obecnyPrzystanek.UsunAutobus(autobus);
            obecnyPrzystanek.DodajAutobusDoZatoki();
            var trasa = obecnyPrzystanek.ZnajdzTraseDoNastepnegoPrzystanku(
                autobus.liniaAutobusu.ZwrocNastepnyPrzystanek(obecnyPrzystanek));

            var czasAkcji            = new TimeSpan(0, 0, autobus.PrzejedzTrase(trasa));
            var czasRozpoczeciaAkcji = CzasRozpoczeciaAkcji(czasPrzejazdu);

            czasPrzejazdu += czasAkcji;

            Logger.ZalogujPrzejechanieTrasy(uid, czasRozpoczeciaAkcji, autobus, trasa,
                                            czasRozpoczeciaPrzejazdu + czasPrzejazdu);
            autobus.czasNastepnejAkcji = czasRozpoczeciaPrzejazdu + czasPrzejazdu;

            nastepnaAkcja    = Akcja.WypuszczniePasazerow;
            obecnyPrzystanek = trasa.PrzystanekPrawy;
        }
Exemple #9
0
        private void ButtonAdd_Clicked(object sender, EventArgs e)
        {
            Akcja akcja = new Akcja();

            if (CheckFields())
            {
                akcja.nazwa       = actionName.Text;
                akcja.obiekt      = currObject.id;
                akcja.dataStart   = DateTime.Now;
                akcja.zakonczone  = false;
                akcja.konserwacja = checkBoxKonserwacja.Checked;
                if (akcja.konserwacja)
                {
                    akcja.okres = monthsPicker.SelectedIndex + 1;
                }
                AddAction(akcja);
                GetActions();
            }
        }