コード例 #1
0
        public void Zwroc()
        {
            string tytul = WprowadzTytul();

            Console.WriteLine("Podaj swoje imię i nazwisko");
            string userName        = Console.ReadLine();
            var    ksiazkaNaLiscie = ListaKsiazek.Where(k => k.Nazwa.ToLower() == tytul.ToLower()).FirstOrDefault();

            if (ksiazkaNaLiscie is null)
            {
                Console.WriteLine("Nie ma takiej książki");
            }
            else if ((ksiazkaNaLiscie.Status.Wypozyczony == true) && (ksiazkaNaLiscie.Status.UserName.ToLower() == userName.ToLower()))
            {
                Ksiazka zwroconaKsiazka = new Ksiazka(ksiazkaNaLiscie.Id, ksiazkaNaLiscie.Nazwa, ksiazkaNaLiscie.Kategoria,
                                                      new Status {
                    Dostepny = true, Wypozyczony = false, Zarezerwowany = false, UserName = "******"
                });
                Console.WriteLine("Zwrocono.");
                Update(zwroconaKsiazka);
                Read();
            }
            else if ((ksiazkaNaLiscie.Status.Wypozyczony == true) && (!(ksiazkaNaLiscie.Status.UserName.ToLower() == userName.ToLower())))
            {
                Console.WriteLine($"Ksiazka jest wypożyczona przez {ksiazkaNaLiscie.Status.UserName}");
            }
            else if (ksiazkaNaLiscie.Status.Zarezerwowany == true)
            {
                Console.WriteLine($"Książka jest zarezerwowana przez {ksiazkaNaLiscie.Status.UserName}");
            }
            else
            {
                Console.WriteLine("Ta książka nie jest wypożyczona");
            }
        }
コード例 #2
0
 private void OpenApplication()
 {
     if (!Program.XmlFile.Exists)
     {
         MessageBox.Show("Plik " + Program.XmlFile.FullName.ToString() + " nie istnieje. \nDanych nie załadowano", "Wczytywanie danych");
     }
     else
     {
         Dokument     = Program.LoadData();
         ListaKsiazek = new UI.ListaKsiazek(Dokument);
     }
 }
コード例 #3
0
        private bool SprawdzId(int id)
        {
            bool czyPrawidloweId;
            var  ksiazkaId = ListaKsiazek.Where(k => k.Id == id).FirstOrDefault();

            if (ksiazkaId is null)
            {
                czyPrawidloweId = false;
            }
            else
            {
                czyPrawidloweId = true;
            }
            return(czyPrawidloweId);
        }
コード例 #4
0
        private void AddBook(object sender, RoutedEventArgs e)
        {
            List <Autor> tempAutorList = new List <Autor>();

            char[]        tempCharTable = null;
            string        tempId        = null;
            List <string> tempIdList    = new List <string>();

            if (TytulBox.Text == String.Empty)
            {
                MessageBox.Show("Nie podano tytułu!", "Błąd!");
                return;
            }

            if (IloscStronBox.Text == String.Empty)
            {
                MessageBox.Show("Nie podano ilości stron książki!", "Błąd!");
                return;
            }

            int number;

            if (!int.TryParse(IloscStronBox.Text, out number))
            {
                MessageBox.Show("Ilości stron książki podano w złym formacie!", "Błąd!");
                return;
            }

            if (DataWydaniaBox.Text == String.Empty)
            {
                MessageBox.Show("Nie podano daty wydania książki!", "Błąd!");
                return;
            }

            tempCharTable = DataWydaniaBox.Text.ToCharArray();
            if (int.Parse(String.Concat(tempCharTable[6], tempCharTable[7], tempCharTable[8], tempCharTable[9])) < 1500 || int.Parse(String.Concat(tempCharTable[6], tempCharTable[7], tempCharTable[8], tempCharTable[9])) > 2018)
            {
                MessageBox.Show("Podano zły rok wydania książki!", "Błąd!");
                return;
            }

            if (int.Parse(String.Concat(tempCharTable[3], tempCharTable[4])) < 1 || int.Parse(String.Concat(tempCharTable[3], tempCharTable[4])) > 12)
            {
                MessageBox.Show("Podano zły miesiąc wydania książki!", "Błąd!");
                return;
            }

            if (int.Parse(String.Concat(tempCharTable[0], tempCharTable[1])) < 1 || int.Parse(String.Concat(tempCharTable[0], tempCharTable[1])) > 31)
            {
                MessageBox.Show("Podano zły dzień wydania książki!", "Błąd!");
                return;
            }

            if ((Autor1Box.Text == String.Empty && Autor2Box.Text == String.Empty && Autor3Box.Text == String.Empty) ||
                (Autor1Box.Text.Equals("Brak") && Autor2Box.Text.Equals("Brak") && Autor3Box.Text.Equals("Brak")) ||
                (Autor1Box.Text.Equals("Brak") && Autor2Box.Text.Equals("Brak") && Autor3Box.Text == String.Empty) ||
                (Autor1Box.Text.Equals("Brak") && Autor2Box.Text == String.Empty && Autor3Box.Text == String.Empty) ||
                (Autor1Box.Text == String.Empty && Autor2Box.Text.Equals("Brak") && Autor3Box.Text == String.Empty) ||
                (Autor1Box.Text == String.Empty && Autor2Box.Text == String.Empty && Autor3Box.Text.Equals("Brak")))
            {
                MessageBox.Show("Nie podano autora!", "Błąd!");
                return;
            }

            if (Autor1Box.Text.Equals("Brak") && Autor2Box.Text.Equals("Brak") && Autor3Box.Text.Equals("Brak"))
            {
                MessageBox.Show("Nie podano autora!", "Błąd!");
                return;
            }

            if (Autor1Box.Text.Equals("Brak") && Autor2Box.Text.Equals("Brak") && Autor3Box.Text == String.Empty)
            {
                MessageBox.Show("Nie podano autora!", "Błąd!");
                return;
            }

            if (Autor1Box.Text.Equals(Autor2Box.Text) && Autor1Box.Text != String.Empty)
            {
                MessageBox.Show("Podano kilka razy tego samego autora!", "Błąd!");
                return;
            }

            if (Autor1Box.Text.Equals(Autor3Box.Text) && Autor1Box.Text != String.Empty)
            {
                MessageBox.Show("Podano kilka razy tego samego autora!", "Błąd!");
                return;
            }

            if (Autor2Box.Text.Equals(Autor3Box.Text) && Autor2Box.Text != String.Empty)
            {
                MessageBox.Show("Podano kilka razy tego samego autora!", "Błąd!");
                return;
            }

            if (!Autor1Box.Text.Equals("Brak") && Autor1Box.Text != String.Empty)
            {
                tempAutorList.Add(new Autor()
                {
                    NazwaAutora = (NazwaAutora)Enum.Parse(typeof(NazwaAutora), Autor1Box.Text)
                });
            }

            if (!Autor2Box.Text.Equals("Brak") && Autor2Box.Text != String.Empty)
            {
                tempAutorList.Add(new Autor()
                {
                    NazwaAutora = (NazwaAutora)Enum.Parse(typeof(NazwaAutora), Autor2Box.Text)
                });
            }

            if (!Autor3Box.Text.Equals("Brak") && Autor3Box.Text != String.Empty)
            {
                tempAutorList.Add(new Autor()
                {
                    NazwaAutora = (NazwaAutora)Enum.Parse(typeof(NazwaAutora), Autor3Box.Text)
                });
            }

            if (DziałBox.Text == String.Empty)
            {
                MessageBox.Show("Nie podano działu książki!", "Błąd!");
                return;
            }

            foreach (var danyDzial in Dokument.Biblioteka.DanyDzialList)
            {
                foreach (var danaKsiazka in danyDzial.Ksiazki.KsiazkaList)
                {
                    tempIdList.Add(danaKsiazka.Id);
                }
            }
            tempIdList.Sort();
            tempId = tempIdList.Last();
            if (int.Parse(tempId).ToString().Count() == 3)
            {
                tempId = (int.Parse(tempId) + 1).ToString();
            }
            else if (int.Parse(tempId).ToString().Count() == 2)
            {
                tempId = String.Concat("0", (int.Parse(tempId) + 1).ToString());
            }
            else
            {
                tempId = String.Concat("0", "0", (int.Parse(tempId) + 1).ToString());
            }
            Dzial dzial = Dokument.Biblioteka.Dzialy.DzialList.Find(x => x.NazwaDzialu.ToString().Equals(DziałBox.Text));

            Dokument.Biblioteka.DanyDzialList.Find(x => x.Id == dzial.Id).Ksiazki.KsiazkaList.Add(new Ksiazka()
            {
                Id      = tempId,
                Tytul   = TytulBox.Text,
                Autorzy = new Autorzy()
                {
                    AutorList = tempAutorList
                },
                IloscStron  = int.Parse(IloscStronBox.Text),
                DataWydania = new DataWydania()
                {
                    Dzien   = (tempCharTable != null) ? String.Concat(tempCharTable[0], tempCharTable[1]) : null,
                    Miesiac = (tempCharTable != null) ? String.Concat(tempCharTable[3], tempCharTable[4]): null,
                    Rok     = (tempCharTable != null) ? String.Concat(tempCharTable[6], tempCharTable[7], tempCharTable[8], tempCharTable[9]): null
                }
            });

            if (Program.ValidateXmlSchema(Dokument))
            {
                Program.SaveData(Dokument);
                ListaKsiazek = new UI.ListaKsiazek(Dokument);
                this.ListaKsiazekListBox.DataContext = ListaKsiazek;
                TytulBox.Text = IloscStronBox.Text = DataWydaniaBox.Text = Autor1Box.Text = Autor2Box.Text = Autor3Box.Text = DziałBox.Text = String.Empty;
            }
            else
            {
                MessageBox.Show("Edycja danych niezgodna z XML Schema!", "Błąd!");
                Dokument = Program.LoadData();
            }
        }