private void brObrisi2_Click(object sender, RoutedEventArgs e) { var sn = (StavkaProdajeDU)dataGridUsluge.SelectedItem; if (MessageBox.Show($"Da li ste sigurni da zelite da izbrisete izabranu uslugu: {sn.Naziv}?", "Poruka o brisanju ", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes) { var lista = new ObservableCollection <StavkaProdajeDU>(); foreach (var n in Projekat.Instance.spdu) { if (n == sn) { lista.Add(n); } } foreach (var n in lista) { StavkaProdajeDU.Delete(n); viewDU = CollectionViewSource.GetDefaultView(d()); viewDU.Filter = duFilter; dataGridUsluge.ItemsSource = viewDU; dataGridUsluge.IsSynchronizedWithCurrentItem = true; dataGridUsluge.ColumnWidth = new DataGridLength(1, DataGridLengthUnitType.Star); } } }
private void btDodaj_Click(object sender, RoutedEventArgs e) { switch (operacija) { case Operacija.Namestaj: var selektovaniNamestaj = (Namestaj)dgPrikaz.SelectedItem; int k; try { k = int.Parse(tbKolicina.Text); } catch { MessageBox.Show($"Polja mora biti broj!"); break; } var lista = new ObservableCollection <StavkaProdajeNamestaj>(); int brojac = 0; foreach (var n in Projekat.Instance.spn) { lista.Add(n); } foreach (var n in lista) { if (racun.Id == n.RacunId && selektovaniNamestaj.Id == n.NamestajId) { brojac += 1; n.Kolicina += k; StavkaProdajeNamestaj.Update(n); Namestaj.PromeniKolicinu(selektovaniNamestaj.Id, k, false); view = CollectionViewSource.GetDefaultView(Projekat.Instance.namestaj); view.Filter = namestajFilter; dgPrikaz.ItemsSource = view; dgPrikaz.IsSynchronizedWithCurrentItem = true; dgPrikaz.ColumnWidth = new DataGridLength(1, DataGridLengthUnitType.Star); break; } } if (brojac == 0) { if (selektovaniNamestaj.Kolicina >= k && k > 0) { StavkaProdajeNamestaj spn = new StavkaProdajeNamestaj(); spn.Kolicina = k; spn.NamestajId = selektovaniNamestaj.Id; spn.RacunId = racun.Id; StavkaProdajeNamestaj.Create(spn); Namestaj.PromeniKolicinu(selektovaniNamestaj.Id, k, false); view = CollectionViewSource.GetDefaultView(Projekat.Instance.namestaj); view.Filter = namestajFilter; dgPrikaz.ItemsSource = view; dgPrikaz.IsSynchronizedWithCurrentItem = true; dgPrikaz.ColumnWidth = new DataGridLength(1, DataGridLengthUnitType.Star); } else { MessageBox.Show($"U magacinu nema dovoljna kolicina namestaja!"); } } break; case Operacija.DodatnaUsluga: var selektovan = (DodatnaUsluga)dgPrikaz.SelectedItem; StavkaProdajeDU spdu = new StavkaProdajeDU(); spdu.RacunId = racun.Id; spdu.DUId = selektovan.Id; StavkaProdajeDU.Create(spdu); view = CollectionViewSource.GetDefaultView(Projekat.Instance.DU); view.Filter = dodatnaFilter; dgPrikaz.ItemsSource = view; dgPrikaz.IsSynchronizedWithCurrentItem = true; dgPrikaz.ColumnWidth = new DataGridLength(1, DataGridLengthUnitType.Star); tbKolicina.Visibility = System.Windows.Visibility.Hidden; label1.Visibility = System.Windows.Visibility.Hidden; break; } this.Close(); }