//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");
        }
示例#2
0
        // hakee paikan _Valinnat taulukosta
        private Valinta _Valinta(Paikka p)
        {
            int rivi   = p.Sali.Rivejä - p.Rivi;
            int paikka = p.PaikkaRivissä - 1;

            // peilikuva: Sali.PaikkojaRivissä - p.PaikkaRivissä;
            return(_Valinnat[rivi][paikka]);
        }
示例#3
0
        // lisää valituksi paikka p
        //
        public void Valitse(Paikka p)
        {
            Valinta v = _Valinta(p);

            v.Valittu = true;
            if (!ValitutPaikat.Contains(v.Paikka)) // huom, ref-yhtäsuuruus
            {
                ValitutPaikat.Add(v.Paikka);
            }
        }
        //Käyttäjä voi poistaa haluamansa varauksen
        //
        private void Button_Poista(object sender, RoutedEventArgs e)
        {
            var selectedItem = (KeyValuePair <Näytös, List <Paikka> >)Varaukset.SelectedItem;
            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("varaus_poistettu");
        }
示例#5
0
 // poista valinta paikalta p
 //
 public void PoistaValinta(Paikka p)
 {
     _Valinta(p).Valittu = false;
 }
示例#6
0
 public Valinta(Elokuvasali sali, int paikkaNro, bool valittu)
 {
     Paikka       = new Paikka(sali, paikkaNro);
     Valittu      = valittu;
     Valittavissa = true;
 }
示例#7
0
            }                                      // CheckBox.IsEnabled

            public Valinta(Paikka p)
            {
                Paikka = p;
            }
示例#8
0
 // paikan valinta: enabled/disabled
 //
 public void Valittavissa(Paikka p, bool valittavissa)
 {
     _Valinta(p).Valittavissa = true;
 }
示例#9
0
 /// <summary>
 /// Metodi joka poistaa paikkavarauksen tietystä näytöksestä
 /// </summary>
 /// <param name="paikka"></param>
 /// <param name="naytos"></param>
 public void PoistaPaikkaVaraus(Paikka paikka, Näytös naytos)
 {
     Ajasql($"DELETE FROM varaukset WHERE elokuvasali='{paikka.Sali.Nimi}' AND naytosaika='{naytos.Aika.ToShortTimeString()}' AND istumapaikka='{paikka.PaikkaNro}' AND elokuva='{naytos.Elokuva.Nimi}' AND elokuvasali='{naytos.Sali.Nimi}' ");
 }
示例#10
0
 /// <summary>
 /// Metodi joka varaa paikan käyttäjälle tietystä näytöksestä
 /// </summary>
 /// <param name="kayttaja"></param>
 /// <param name="naytos"></param>
 /// <param name="paikka"></param>
 public void VaraaPaikka(Kayttaja kayttaja, Näytös naytos, Paikka paikka)
 {
     Ajasql($"INSERT INTO varaukset VALUES (null, '{naytos.Aika.ToShortTimeString()}', '{kayttaja.Tunnus}', {paikka.PaikkaNro}, '{naytos.Sali.Nimi}', '{naytos.Elokuva.Nimi}') ");
 }