Ejemplo n.º 1
0
        // kun valitaan tilauslistalta jokin rivi
        private void TilauksetLtk_SelectionChanged(object sender, EventArgs e)
        {
            // jos tilausta ei kesken niin ladataan valitun tilauksen tiedot
            if (TilausKesken == false)
            {
                // apumuuttuja
                int tilausnro = 0;

                TyhjennaTilaus();

                //onko yksi rivi valittu
                if (TilauksetLtk.SelectedRows.Count == 1)
                {
                    //MessageBox.Show(TilauksetLtk.SelectedRows[0].Cells[0].Value.ToString(), "DEBUG");

                    if (Int32.TryParse(TilauksetLtk.SelectedRows[0].Cells[0].Value.ToString(), out tilausnro) == false)
                    {
                        // jos lukumuunnoksessa virhe, annetaan virhe ja palataan metodista heti
                        MessageBox.Show("Virhe tilausnumerossa", "Virhe!");
                        return;
                    }

                    if (LataaTilauksenTiedot(tilausnro) == false)
                    {
                        MessageBox.Show("Tilausta ei löydy tilauskannasta", "Virhe!");
                        return;
                    }
                }
            }
            // jos tilaus on kesken niin tyhjennetään valinta
            else
            {
                TilauksetLtk.ClearSelection();
            }
        }
Ejemplo n.º 2
0
        // ***** painikkeet ********


        // uuden tilauksen aloitus painike
        private void UusiTilausButton_Click(object sender, EventArgs e)
        {
            if (TilausKesken == false)
            {
                // tilauslista selection pois
                TilauksetLtk.ClearSelection();

                TilausKesken = true;
                TyhjennaTilaus();
                OhjelmanTila();
            }
        }
Ejemplo n.º 3
0
        // tilauslista laatikon refresh
        private void TilauksetRefresh()
        {
            // tyhjentää laatikon rivit
            TilauksetLtk.Rows.Clear();

            // lisätään tilauskannan kaikki tilaukset listaan
            for (int i = 0; i < tilauskanta.Count; i++)
            {
                TilauksetLtk.Rows.Add(tilauskanta[i].Tilausnro, tilauskanta[i].poyta, tilauskanta[i].Aikaleima,
                                      tilauskanta[i].Loppusumma.ToString("0.00") + " €");
            }

            // sortataan lista uusin ylös
            TilauksetLtk.Sort(TilauksetLtk.Columns[0], ListSortDirection.Descending);
        }
Ejemplo n.º 4
0
        // metodi suoritetaan kun ohjelma avautuu
        private void Saliavustaja_Load(object sender, EventArgs e)
        {
            // instanssi jotta voidaan kutsua Tilaus luokan metodia
            Tilaus tilaushallinta = new Tilaus();

            // ohjelman avauksessa ei ole uutta tilausta auki
            TilausKesken = false;
            TyhjennaTilaus();
            OhjelmanTila();

            // jos tietokantatiedosto löytyy niin yritetään ladata
            if (File.Exists(tietokanta))
            {
                try
                {
                    using (Stream tiedosto = File.Open(tietokanta, FileMode.Open))
                    {
                        BinaryFormatter bin = new BinaryFormatter();

                        tilauskanta = (List <Tilaus>)bin.Deserialize(tiedosto);
                    }
                }
                // jos tiedostovirhe, palautetaan false
                catch (IOException)
                {
                    MessageBox.Show(Path.GetFullPath(tietokanta) +
                                    "\nVirhe tietokannan lataamisessa, lopetetaan!", "Virhe");
                    this.Close();
                }
                // jos datassa on virhe, palautetaan false
                catch (SerializationException)
                {
                    MessageBox.Show(Path.GetFullPath(tietokanta) +
                                    "\nVirhe tietokannan lataamisessa, lopetetaan!", "Virhe");
                    this.Close();
                }
            }

            // tilauslista refresh
            TilauksetRefresh();
            // tilauslista selection pois
            TilauksetLtk.ClearSelection();

            // ikkunan otsikko
            this.Text = ohjelmanNimi;
        }
Ejemplo n.º 5
0
        // tilauksen tallennus tilauskantaan
        private void LisaaTilausButton_Click(object sender, EventArgs e)
        {
            if (TilausKesken == true)
            {
                // instanssi tilaukselle
                Tilaus uusitilaus = new Tilaus();

                if (MuunnaTilausRivit(uusitilaus) == false)
                {
                    MessageBox.Show("Loppusummaa ei voitu laskea\nTarkista rivit!", "Virhe!");

                    // jos virhe, palataan metodista heti
                    return;
                }

                // tarkistetaan että on valittu pöytä
                if (ValitsePoytaValikko.Text == "")
                {
                    MessageBox.Show("Pöytää ei ole valittu!", "Virhe!");

                    // jos virhe, palataan metodista heti
                    return;
                }
                else
                {
                    uusitilaus.poyta = ValitsePoytaValikko.Text;
                }

                // tallennetaan tilaus tilauskantaan
                uusitilaus.TallennaTilaus(tilauskanta, uusitilaus);

                // refresh tilauslista
                TilauksetRefresh();
                // tilauslistan selection pois
                TilauksetLtk.ClearSelection();

                // tyhjennetään tilausrivit
                TilausKesken = false;
                TyhjennaTilaus();
                OhjelmanTila();
            }
        }