示例#1
0
 /// <summary>
 /// Metoda wyślietlająca klientów w zakładce klienci
 /// </summary>
 public void KlienciGrid()
 {
     using (HotelEntities db = new HotelEntities())
     {
         DataGridK.ItemsSource = db.klienci.ToList(); //data grig w zakaladce klienci
     }
 }
示例#2
0
 /// <summary>
 /// Metoda kończąca pobyt
 /// </summary>
 public void ZakonczPobyt()
 {
     rezerwacja = (rezerwacje)DataGridW.SelectedItem;
     if (rezerwacja != null)
     {
         if (MessageBox.Show("Zakonczyć pobyt?", "Potwierdzenie", MessageBoxButton.YesNo) == MessageBoxResult.Yes)
         {
             using (HotelEntities db = new HotelEntities())
             {
                 Klient = db.klienci.Where(i => i.id_klienta == rezerwacja.id_klienta).First();
                 pokoj  = db.pokoje.Where(i => i.nr_pokoju == rezerwacja.nr_pokoju).First();
                 if (Klient != null)
                 {
                     var rezKoniec = (from item in db.rezerwacje where item.id_rezerwacji == rezerwacja.id_rezerwacji select item).First();
                     if (rezKoniec != null)
                     {
                         db.rezerwacje.Remove(rezKoniec);
                     }
                     db.klienci.Remove(Klient);
                     pokoj.status = "wolny";
                     MessageBox.Show("Następuje płątność");
                 }
                 db.SaveChanges();
             }
         }
         else
         {
             // Do not close the window
         }
     }
 }
示例#3
0
 /// <summary>
 /// Metoda wyślietlająca rezerwacje w zakładce rezerwacje
 /// </summary>
 public void RezerwacjeGrid()
 {
     using (HotelEntities db = new HotelEntities())
     {
         DataGridW.ItemsSource = db.rezerwacje.ToList(); //data grig w zakaladce wynajecia
     }
 }
示例#4
0
 /// <summary>
 /// Metoda wyślietlająca pokooje w zakładce pokoje
 /// </summary>
 public void PokojeGrid()
 {
     using (HotelEntities db = new HotelEntities())
     {
         DataGridP.ItemsSource = db.pokoje.ToList(); //datagrid w zakładce pokoje
     }
 }
示例#5
0
        /// <summary>
        /// Zdarzenie obsługujące logowanie pracownika do systemu
        /// </summary>

        private void Bt_Zaloguj_Click(object sender, RoutedEventArgs e)
        {
            using (HotelEntities db = new HotelEntities())
            {
                pracownicy pracownik = new pracownicy();

                pracownik = db.pracownicy.FirstOrDefault(p => p.login == TxB_Login.Text);
                if (pracownik is null)
                {
                    LbLoginBlad.Content    = "Błędny login";
                    LbLoginBlad.Visibility = Visibility.Visible;
                }
                else
                {
                    LbLoginBlad.Visibility = Visibility.Hidden;
                    if (pracownik.haslo == PassB_Haslo.Password)
                    {
                        LbHaloBlad.Visibility = Visibility.Hidden;
                        //MessageBox.Show("Zalogowano poprawnie");

                        MainWindow mainWindow = new MainWindow();
                        mainWindow.Show();
                        Close();
                    }
                    else
                    {
                        LbHaloBlad.Content    = "Błędne hasło";
                        LbHaloBlad.Visibility = Visibility.Visible;
                    }
                }



                //if (db.database.sqlquery<string>("select login from pracownicy where login='******'").firstordefault() == txb_login.text)
                //{
                //    lbloginblad.visibility = visibility.collapsed;
                //    if (db.database.sqlquery<string>("select haslo from pracownicy where login='******'").firstordefault() == passb_haslo.password)
                //    {
                //        lbhaloblad.visibility = visibility.collapsed;
                //        messagebox.show("zalogowano");
                //        mainwindow mainwindow = new mainwindow();
                //        mainwindow.show();
                //        close();
                //    }
                //    else
                //    {
                //        lbhaloblad.content = "błędne hasło";
                //        lbhaloblad.visibility = visibility.visible;


                //    }
                //}
                //else
                //{
                //    lbloginblad.content = "podany login jest błędny lub nie istnieje";
                //    lbloginblad.visibility = visibility.visible;
                //}
            }
        }
示例#6
0
        /// <summary>
        /// Metoda obliczająca koszt pobytu
        /// </summary>
        public void Koszt()
        {
            string nr_p_str = null;
            int    nr_p_int = 0;

            try
            {
                Lb_NrPokojuBlad.Visibility = Visibility.Collapsed;
                nr_p_str = TxB_Pokoj.Text;
                nr_p_int = int.Parse(nr_p_str);
            }
            catch (Exception)
            {
                Lb_NrPokojuBlad.Content    = "Podaj numer pokoju";
                Lb_NrPokojuBlad.Visibility = Visibility.Visible;
                //throw;
            }


            using (HotelEntities db = new HotelEntities())
            {
                try
                {
                    Lb_NrPokojuBlad.Visibility = Visibility.Collapsed;
                    pokoj = db.pokoje.FirstOrDefault(p => p.nr_pokoju == nr_p_int);
                }
                catch (Exception)
                {
                    Lb_NrPokojuBlad.Content    = "Nie ma takiego pokoju";
                    Lb_NrPokojuBlad.Visibility = Visibility.Visible;
                    //throw;
                }
            }
            if (pokoj == null)
            {
                Lb_NrPokojuBlad.Content    = "Nie ma takiego pokoju";
                Lb_NrPokojuBlad.Visibility = Visibility.Visible;
            }
            else
            {
                if (pokoj.status == "zajety")
                {
                    Lb_NrPokojuBlad.Content    = "Pokój zajęty";
                    Lb_NrPokojuBlad.Visibility = Visibility.Visible;
                }
                else
                {
                    Lb_NrPokojuBlad.Visibility = Visibility.Collapsed;
                    string lDni_str = lDni.Days.ToString();
                    _koszt         = pokoj.cena * int.Parse(lDni_str);
                    TxB_Koszt.Text = _koszt.ToString();
                }
            }
        }
示例#7
0
        /// <summary>
        /// Metoda aktualiujaca dane pokoju
        /// </summary>
        public void AktualizujPokoj()
        {
            pokoj.nr_pokoju = int.Parse(TxB_NP_Nr.Text);

            using (HotelEntities db = new HotelEntities())
            {
                var doAktualizacji = db.pokoje.SingleOrDefault(i => i.nr_pokoju == pokoj.nr_pokoju);
                if (doAktualizacji != null && doAktualizacji.status == "wolny")
                {
                    doAktualizacji.liczba_osob = TxB_NP_LO.Text;
                    doAktualizacji.cena        = double.Parse(TxB_NP_Cena.Text);
                    db.SaveChanges();
                }
                else
                {
                    MessageBox.Show("Nie można aktualizować");
                }
            }
        }
示例#8
0
        /// <summary>
        /// Zdarzenie obsługujące tworzenie konta pracownika
        /// </summary>

        private void Bt_Utworz_Click(object sender, RoutedEventArgs e)
        {
            //kod

            string _KPr = "gd84pz2";

            if (String.IsNullOrWhiteSpace(PassB_Kod.Password))
            {
                LbKodBlad.Content    = "Podaj kod pracodawcy";
                LbKodBlad.Visibility = Visibility.Visible;
                SprKPr = false;
            }
            else if (PassB_Kod.Password != _KPr)
            {
                LbKodBlad.Content    = "Błędny kod";
                LbKodBlad.Visibility = Visibility.Visible;
                SprKPr = false;
            }
            else
            {
                LbKodBlad.Visibility = Visibility.Collapsed;
                SprKPr = true;
            }



            //haslo



            if (String.IsNullOrWhiteSpace(PassB_Haslo.Password))
            {
                LbHasloBlad.Content    = "Podaj hasło";
                LbHasloBlad.Visibility = Visibility.Visible;
                SprHaslo = false;
            }
            else if (PassB_Haslo.Password.Length < 8)
            {
                LbHasloBlad.Content    = "Hasło musi mieć min 8 znaków";
                LbHasloBlad.Visibility = Visibility.Visible;
                SprHaslo = false;
            }
            else
            {
                TmpHaslo = PassB_Haslo.Password;
                LbHasloBlad.Visibility = Visibility.Collapsed;
                SprHaslo = true;
            }



            if (PassB_PowHaslo.Password != TmpHaslo)
            {
                LbHasloPowBlad.Content    = "Hasło różni się od wpisanego wyżej";
                LbHasloPowBlad.Visibility = Visibility.Visible;
                SprHasloPow = false;
            }
            else
            {
                LbHasloPowBlad.Visibility = Visibility.Collapsed;
                ObPracownik.haslo         = PassB_PowHaslo.Password;
                SprHasloPow = true;
            }


            if (SprImie == true && SprNazw == true && SprKPr == true && SprHaslo == true && SprHasloPow == true)
            {
                using (HotelEntities db = new HotelEntities())
                {
                    db.pracownicy.Add(ObPracownik);
                    db.SaveChanges();
                    MessageBox.Show("Poprawnie utworzono konto");
                }
                Wyczysc();
            }
            else
            {
                MessageBox.Show("Popraw dane");
            }
        }
示例#9
0
        /// <summary>
        /// Metoda dodająca nowy pokój
        /// </summary>
        public void NowyPokoj()
        {
            bool LOsobOK = false;
            bool CenaOK  = false;

            if (string.IsNullOrEmpty(TxB_NP_LO.Text))
            {
                Lb_NP_error2.Content    = "Podaj wartość";
                Lb_NP_error2.Visibility = Visibility.Visible;
                LOsobOK = false;
            }
            else
            {
                try
                {
                    Lb_NP_error2.Visibility = Visibility.Collapsed;
                    pokoj.liczba_osob       = TxB_NP_LO.Text;
                    LOsobOK = true;
                }
                catch (Exception ex)
                {
                    Lb_NP_error2.Content    = ex.Message;
                    Lb_NP_error2.Visibility = Visibility.Visible;
                    LOsobOK = false;
                    //throw;
                }
            }


            if (string.IsNullOrEmpty(TxB_NP_Cena.Text))
            {
                Lb_NP_error3.Content    = "Podaj wartość";
                Lb_NP_error3.Visibility = Visibility.Visible;
                CenaOK = false;
            }
            else
            {
                try
                {
                    Lb_NP_error3.Visibility = Visibility.Collapsed;
                    pokoj.cena = double.Parse(TxB_NP_Cena.Text);
                    CenaOK     = true;
                }
                catch (Exception ex)
                {
                    Lb_NP_error3.Content    = ex.Message;
                    Lb_NP_error3.Visibility = Visibility.Visible;
                    CenaOK = false;
                    //throw;
                }
            }

            pokoj.status = "wolny";

            if (LOsobOK && CenaOK == true)
            {
                try
                {
                    using (HotelEntities db = new HotelEntities())
                    {
                        db.pokoje.Add(pokoj);
                        db.SaveChanges();
                    }
                }
                catch (Exception)
                {
                    //MessageBox.Show(ex.Message);
                    throw;
                }
            }
        }
示例#10
0
        /// <summary>
        /// Metoda rejestrujaca pobyt. Dodaje klienta.
        /// </summary>
        public void Rejestracja()
        {
            bool imieOk       = false;
            bool nazwOk       = false;
            bool telOk        = false;
            bool nrDowOk      = false;
            bool metodaPlatOk = false;


            //przypisanie danych klienta
            if (String.IsNullOrWhiteSpace(TxB_ImieKl.Text))
            {
                Lb_ImieBlad.Content    = "Podaj imie";
                Lb_ImieBlad.Visibility = Visibility.Visible;
                imieOk = false;
            }
            else
            {
                Lb_ImieBlad.Visibility = Visibility.Collapsed;
                Klient.imie            = TxB_ImieKl.Text;
                imieOk = true;
            }

            if (String.IsNullOrWhiteSpace(TxB_NazwiskoKl.Text))
            {
                Lb_NazwiskoBlad.Content    = "Podaj nazwisko";
                Lb_NazwiskoBlad.Visibility = Visibility.Visible;
                nazwOk = false;
            }
            else
            {
                Lb_NazwiskoBlad.Visibility = Visibility.Collapsed;
                Klient.nazwisko            = TxB_NazwiskoKl.Text;
                nazwOk = true;
            }

            if (String.IsNullOrWhiteSpace(TxB_TelefonKl.Text))
            {
                Lb_TelBlad.Content    = "Podaj telefon";
                Lb_TelBlad.Visibility = Visibility.Visible;
                telOk = false;
            }
            else
            {
                try
                {
                    Lb_TelBlad.Visibility = Visibility.Collapsed;
                    Klient.telefon        = int.Parse(TxB_TelefonKl.Text);
                    telOk = true;
                }
                catch (Exception ex)
                {
                    Lb_TelBlad.Content    = ex.Message;
                    Lb_TelBlad.Visibility = Visibility.Visible;
                    telOk = false;
                    //throw;
                }
            }


            if (String.IsNullOrWhiteSpace(TxB_NrDowOsKl.Text))
            {
                Lb_NrDowBlad.Content    = "Podaj nr dowodu";
                Lb_NrDowBlad.Visibility = Visibility.Visible;
                nrDowOk = false;
            }
            else
            {
                try
                {
                    Lb_NrDowBlad.Visibility = Visibility.Collapsed;
                    Klient.nr_dowodu        = int.Parse(TxB_NrDowOsKl.Text);
                    nrDowOk = true;
                }
                catch (Exception ex)
                {
                    Lb_NrDowBlad.Content    = ex.Message;
                    Lb_NrDowBlad.Visibility = Visibility.Visible;
                    nrDowOk = false;
                    //throw;
                }
            }



            if (RB_Gotowka.IsChecked == true)
            {
                Lb_PlatnoscBlad.Visibility  = Visibility.Collapsed;
                rezerwacja.rodzaj_platnosci = "gotowka";
                metodaPlatOk = true;
            }
            else if (RB_Karta.IsChecked == true)
            {
                Lb_PlatnoscBlad.Visibility  = Visibility.Collapsed;
                rezerwacja.rodzaj_platnosci = "karta";
                metodaPlatOk = true;
            }
            else
            {
                Lb_PlatnoscBlad.Content    = "Dokonaj wyboru";
                Lb_PlatnoscBlad.Visibility = Visibility.Visible;
                metodaPlatOk = false;
            }



            //przypisanie danych rezerwacji
            rezerwacja.od         = poczatek;
            rezerwacja.@do        = koniec;
            rezerwacja.nr_pokoju  = pokoj.nr_pokoju;
            rezerwacja.id_klienta = Klient.id_klienta;
            //rodzaj platonosci ustawiony w obsludze radio
            rezerwacja.koszt = _koszt;
            pokoj.status     = "zajety";

            if (imieOk && nazwOk && telOk && nrDowOk && metodaPlatOk == true)
            {
                try
                {
                    using (HotelEntities db = new HotelEntities())
                    {
                        db.klienci.Add(Klient);
                        db.rezerwacje.Add(rezerwacja);
                        db.pokoje.AddOrUpdate(pokoj);
                        db.SaveChanges();
                    }
                    Wyczysc();
                }
                catch (Exception)
                {
                    MessageBox.Show("Uzupełnij dane");
                    //throw;
                }
            }
        }