// Čtenář public void Pridej(Ctenar ctenar) { // Dostupnost zadaneho ID foreach (Ctenar c in Ctenari) { if (c.Id == ctenar.Id) { MessageBox.Show("ID obsazeno"); return; // zamez duplikátním ID } } foreach (Kniha k in Knihy) { if (k.Id == ctenar.Id) { MessageBox.Show("ID obsazeno"); return; // zamez duplikátním ID } } // Pridani ctenare Ctenari.Add(ctenar); CtenarPridan?.Invoke(this, ctenar); }
public void Odeber(string id, byte klasifikace) { switch (klasifikace) { case klasifikace_ctenar: foreach (Ctenar c in Ctenari) { if (c.Id == id) { int index; // Zkontroluj zda čtenář nemá půjčenou knihu foreach (Vypujcka v in Vypujcky) { if (v.Drzitel.Id == c.Id && v.Vraceno == false) { MessageBox.Show("Uživatele nelze odebrat! Stále nevrátil všechny knihy!"); return; } } index = Ctenari.IndexOf(c); Ctenari.RemoveAt(index); CtenarOdebran?.Invoke(this, index); return; } } MessageBox.Show("Tento čtenář neexistuje"); break; case klasifikace_kniha: foreach (Kniha k in Knihy) { if (k.Id == id) { int index; // Zkontroluj zda knihu lze řádně zlikvidovat foreach (Vypujcka v in Vypujcky) { if (v.Knizka.Id == k.Id && v.Vraceno == false) { MessageBox.Show("Nemůžeme odepsat knihu, kterou nemáme u sebe!"); return; } } index = Knihy.IndexOf(k); Knihy.RemoveAt(index); KnihaOdebrana?.Invoke(this, index); return; } } MessageBox.Show("Tato kniha neexistuje"); break; } }