Exemplo n.º 1
0
        private void SacuvajProzorEditAkcije(object sender, RoutedEventArgs e)
        {
            var listaAkcija = Projekat.Instance.Akcija;

            this.DialogResult = true;

            double cenaNamestaja = 0;

            for (int i = 0; i < akcija.NamestajNaPopustu.Count; i++)
            {
                cenaNamestaja += akcija.NamestajNaPopustu[i].JedinicnaCena;
            }

            var t = double.Parse(tbPopust.Text);

            switch (operacija)
            {
            case Operacija.DODAVANJE:
                akcija.Id = listaAkcija.Count + 1;
                if (t == 0)
                {
                    MessageBox.Show("Polje za popust mora biti popunjeno, ne moze biti 0!", "Greska", MessageBoxButton.OK, MessageBoxImage.Warning);
                    return;
                }
                for (int i = 0; i < akcija.NamestajNaPopustu.Count; i++)
                {
                    akcija.NamestajNaPopustu[i].CenaPopust = cenaNamestaja - ((cenaNamestaja * akcija.Popust) / 100);
                    foreach (var namestaj in Projekat.Instance.Namestaj)
                    {
                        if (namestaj.Id == akcija.NamestajNaPopustu[i].Id)
                        {
                            namestaj.CenaPopust = namestaj.JedinicnaCena - ((namestaj.JedinicnaCena * akcija.Popust) / 100);
                        }
                    }
                }
                Akcija.Create(akcija);
                break;

            case Operacija.IZMENA:
                if (t == 0)
                {
                    MessageBox.Show("Polje za popust mora biti popunjeno, ne moze biti 0!", "Greska", MessageBoxButton.OK, MessageBoxImage.Warning);
                    return;
                }
                for (int i = 0; i < akcija.NamestajNaPopustu.Count; i++)
                {
                    akcija.NamestajNaPopustu[i].CenaPopust = cenaNamestaja - ((cenaNamestaja * akcija.Popust) / 100);
                    foreach (var namestaj in Projekat.Instance.Namestaj)
                    {
                        if (namestaj.Id == akcija.NamestajNaPopustu[i].Id)
                        {
                            namestaj.CenaPopust = namestaj.JedinicnaCena - ((namestaj.JedinicnaCena * akcija.Popust) / 100);
                        }
                    }
                }
                Akcija.Update(akcija);
                if (dodatiNamestaji.Count > 0)
                {
                    Akcija.AddNaAkciji(akcija, dodatiNamestaji);
                }
                if (obrisani.Count > 0)
                {
                    Akcija.DeleteNaAkcija(akcija, obrisani);
                }
                break;
            }
            Close();
        }