/// <summary> /// Metodi joka luo uuden Elokuva - olion elokuvan lisäystä varten. /// Metodi tarkistaa myös että käyttäjä on antanut kaikki elokuvan tiedot sekä sen /// jos elokuva on jo olemassa järjestelmässä. Käyttäjä myös ohjataan Näytösten lisäys - sivulle /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btn_Lisaa_Elokuvan_Perustiedot_Click(object sender, RoutedEventArgs e) { if (txt_Elokuvan_Nimi.Text.Equals("") || txt_Vuosi.Text.Equals("") || txt_Kesto.Text.Equals("") || txt_Kuvaus.Text.Equals("")) { tulostaIlmoitus("Vaadittavia tietoja puuttuu! Tarkista tiedot", lbl_lisays_ilmoitus, true); } else { Elokuva elokuva = tietokanta.GetElokuva(txt_Elokuvan_Nimi.Text); if (!elokuva.Nimi.Equals("")) { tulostaIlmoitus("Elokuva on jo olemassa. Valitse toinen nimi elokuvalle", lbl_lisays_ilmoitus, true); } else { elokuvanNimi = txt_Elokuvan_Nimi.Text; elokuvanVuosi = Int32.Parse(txt_Vuosi.Text); elokuvanKesto = Int32.Parse(txt_Kesto.Text); elokuvanKuvaus = txt_Kuvaus.Text; lisattavaElokuva = new Elokuva(elokuvanNimi, elokuvanVuosi, elokuvanKesto, elokuvanKuvaus, "Kylla"); Perustiedot_Grid.Visibility = Visibility.Collapsed; Naytokset_Lisays_Grid.Visibility = Visibility.Visible; } } }
//käyttäjä voi muokata valitsemaansa varausta. // private void Button_Muokkaa(object sender, RoutedEventArgs e) { //selectedItem edustaa varausta, jota käyttäjä haluaa muokata. Luomalla siitä uusi //Dictionary, voidaan elokuvan nimen perusteella luoda uusi varaustapahtuma // var selectedItem = (KeyValuePair <Näytös, List <Paikka> >)Varaukset.SelectedItem; Elokuva valittuElokuva = _tietokanta.GetElokuva(selectedItem.Key.Elokuva.Nimi); List <Näytös> näytökset = _tietokanta.GetElokuvanNaytokset(valittuElokuva); TulevatNäytökset.ItemsSource = näytökset; //loopataan valitun näytöksen paikat läpi, luodaan niistä Paikka- luokan instanssi //ja poistetaan valittu varaus tietokannasta. // var paikat = selectedItem.Value.Count; for (int i = 0; i < paikat; i++) { Paikka poistettava = selectedItem.Value[i] as Paikka; Console.WriteLine(poistettava.PaikkaNro); _tietokanta.PoistaPaikkaVaraus(poistettava, selectedItem.Key); } Siirry("varaa_näytös"); }