public ProdajaNamestajaWindow(ProdajaNamestaja prodajaNamestaja, Operacija operacija) { InitializeComponent(); prodajaNamestaja.StavkeProdaje = StavkaProdaje.GetAllId(prodajaNamestaja.Id); prodajaNamestaja.ProdateUsluge = ProdataUsluga.GetAllId(prodajaNamestaja.Id); viewStavka = CollectionViewSource.GetDefaultView(prodajaNamestaja.StavkeProdaje); viewUsluga = CollectionViewSource.GetDefaultView(prodajaNamestaja.ProdateUsluge); viewStavka.Filter = PrikazFilterStavka; viewUsluga.Filter = PrikazFilterUsluga; this.prodajaNamestaja = prodajaNamestaja; this.operacija = operacija; dgDodatnaUsluga.ItemsSource = viewUsluga; dgIdNamestaja.ItemsSource = viewStavka; dpDatumProdaje.DataContext = prodajaNamestaja; tbKupac.DataContext = prodajaNamestaja; dgIdNamestaja.DataContext = prodajaNamestaja; dgDodatnaUsluga.DataContext = prodajaNamestaja; lblUkupnaCenaSaPDV.DataContext = prodajaNamestaja; lblUkupnaCenaBezPDV.DataContext = prodajaNamestaja; }
public ProdajaUslugaProzor(ProdajaNamestaja prodaja) { InitializeComponent(); cbUsluga.ItemsSource = Projekat.Instance.DodatneUsluge; this.prodaja = prodaja; }
private void ProdajaProzor() { var novaProdaja = new ProdajaNamestaja(); var prodajaProzor = new ProdajaWindow(novaProdaja, ProdajaWindow.Operacija.DODAVANJE); prodajaProzor.ShowDialog(); }
private void ZatvoriProdajeWindow(object sender, RoutedEventArgs e) { var listaStavki = Projekat.Instance.StavkeProdaje; switch (operacija) { case Operacija.Dodavanje: foreach (var i in listaStavki) { if (i.IdProdaje == prodaja.Id) { StavkaProdaje.Delete(i); } } foreach (var u in Projekat.Instance.UslugeProdaje) { if (u.IdProdaje == prodaja.Id) { UslugaProdaje.Delete(u); } } ProdajaNamestaja.Delete(prodaja); this.Close(); break; case Operacija.Izmena: this.Close(); break; default: break; } }
public PrikazRacuna(ProdajaNamestaja prodajaNamestaja) { InitializeComponent(); this.prodajaNamestaja = prodajaNamestaja; tbRacun.Text = Racun(); }
public static bool DodajStavku(ProdajaNamestaja p, ObservableCollection <StavkaProdaje> stavke) { try { using (SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["Konekcija"].ToString())) { conn.Open(); for (int i = 0; i < stavke.Count; i++) { SqlCommand cm = new SqlCommand(@" INSERT INTO Stavka(Kolicina,Cena,NamestajId,ProdajaId) VALUES (@kolicina,@cena,@namestajId,@prodajaId)", conn); cm.Parameters.Add(new SqlParameter("@namestajId", stavke[i].NamestajProdaja.Id)); cm.Parameters.Add(new SqlParameter("@kolicina", stavke[i].Kolicina)); cm.Parameters.Add(new SqlParameter("@cena", stavke[i].Cena)); cm.Parameters.Add(new SqlParameter("@prodajaId", p.Id)); cm.ExecuteNonQuery(); foreach (var namestaj in Projekat.Instance.Namestaj) { if (namestaj.Id == stavke[i].NamestajProdaja.Id) { namestaj.Kolicina = namestaj.Kolicina - stavke[i].Kolicina; NamestajDAO.IzmenaNamestaja(namestaj); } } } return(true); } } catch { MessageBox.Show("Upis u bazu nije uspeo.\nMolimo da pokusate ponovo!", "Greska", MessageBoxButton.OK, MessageBoxImage.Warning); return(false); } }
public AddProdajaWindow(ProdajaNamestaja prodaja) { InitializeComponent(); viewNamestaj = CollectionViewSource.GetDefaultView(Projekat.Instance.Namestaj); viewNamestaj.Filter = FilterNamestaja; viewKorpa = CollectionViewSource.GetDefaultView(Projekat.Instance.ProdajaStavke); dgNamestaj.ItemsSource = viewNamestaj; dgNamestaj.DataContext = this; dgNamestaj.IsSynchronizedWithCurrentItem = true; dgNamestaj.ColumnWidth = new DataGridLength(1, DataGridLengthUnitType.Star); dgKorpa.ItemsSource = viewKorpa; dgKorpa.DataContext = this; dgKorpa.IsSynchronizedWithCurrentItem = true; dgKorpa.ColumnWidth = new DataGridLength(1, DataGridLengthUnitType.Star); tbKupac.DataContext = prodaja; dpDatumPocetka.DataContext = prodaja; tbBrojRacuna.DataContext = prodaja; tbUkupnaCena.DataContext = prodaja; cmbUsluga.DataContext = prodaja; cmbUsluga.ItemsSource = Projekat.Instance.DodatnaUsluga; this.prodaja = prodaja; InicijalizujPodatke(); }
public static bool ObrisiStavku(ProdajaNamestaja p, ObservableCollection <StavkaProdaje> stavke) { try { using (SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["Konekcija"].ToString())) { conn.Open(); for (int i = 0; i < stavke.Count; i++) { SqlCommand cm = new SqlCommand(@" DELETE FROM Stavka WHERE Id=@id AND ProdajaId=@prodajaId", conn); cm.Parameters.Add(new SqlParameter("@id", stavke[i].Id)); cm.Parameters.Add(new SqlParameter("@prodajaId", p.Id)); cm.ExecuteNonQuery(); stavke[i].NamestajProdaja.Kolicina += stavke[i].Kolicina; foreach (var namestaj in Projekat.Instance.Namestaj) { if (namestaj.Id == stavke[i].NamestajProdaja.Id) { namestaj.Kolicina = stavke[i].NamestajProdaja.Kolicina; } } NamestajDAO.IzmenaNamestaja(stavke[i].NamestajProdaja); } return(true); } } catch { MessageBox.Show("Upis u bazu nije uspeo.\nMolimo da pokusate ponovo!", "Greska", MessageBoxButton.OK, MessageBoxImage.Warning); return(false); } }
private void Pretraga(object sender, FilterEventArgs e) { string cmb = cmbPretraga.SelectedItem.ToString(); string tb = tbPretrazi.Text.ToLower(); ProdajaNamestaja prodaja = (ProdajaNamestaja)e.Item; switch (cmb) { case "": break; case "Kupcu": e.Accepted = prodaja.Kupac.ToString().ToLower().Contains(tb); break; case "Broju racuna": e.Accepted = prodaja.BrojRacuna.ToString().ToLower().Contains(tb); break; case "Datumu prodaje": e.Accepted = prodaja.DatumProdaje.ToString().ToLower().Contains(tb); break; default: break; } }
private void PrikaziNamUs(object sender, RoutedEventArgs e) { ProdajaNamestaja pr = dgProdaja.SelectedItem as ProdajaNamestaja; var novi = new PrikaziNamestajUsluge(pr); novi.ShowDialog(); }
public static bool IzmenaProdaje(ProdajaNamestaja p) { try { using (SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["Konekcija"].ToString())) { conn.Open(); SqlCommand cmd = new SqlCommand(@" UPDATE Prodaja SET Kupac=@kupac,Datum_Prodaje=@datum WHERE Id=@id", conn); cmd.Parameters.Add(new SqlParameter("@Kupac", p.Kupac)); cmd.Parameters.Add(new SqlParameter("@datum", p.DatumProdaje)); cmd.Parameters.Add(new SqlParameter("@id", p.Id)); cmd.ExecuteNonQuery(); foreach (var item in Projekat.Instance.Prodaja) { if (item.Id == p.Id) { item.Kupac = p.Kupac; item.DatumProdaje = p.DatumProdaje; item.StavkeProdaje = p.StavkeProdaje; item.DodatneUsluge = p.DodatneUsluge; item.UkupanIznos = p.UkupanIznos; } } return(true); } } catch { MessageBox.Show("Upis u bazu nije uspeo.\nMolimo da pokusate ponovo!", "Greska", MessageBoxButton.OK, MessageBoxImage.Warning); return(false); } }
public static void Delete(ProdajaNamestaja prodaja) { if (prodaja != null) { prodaja.Obrisan = true; Update(prodaja); } }
private void IzmeniProdaju() { ProdajaNamestaja oznacen = dgPrikaz.SelectedItem as ProdajaNamestaja; ProdajaNamestaja kopija = (ProdajaNamestaja)oznacen.Clone(); var prozor = new ProdajeWindow(kopija, NamestajWindow.Operacija.Izmena); prozor.ShowDialog(); }
private void DodajRacun(object sender, RoutedEventArgs e) { var novaProdaja = new ProdajaNamestaja(); var prodajaProzor = new EditProdajaWindow(novaProdaja, EditProdajaWindow.Operacija.DODAVANJE); prodajaProzor.ShowDialog(); view.Refresh(); }
private void Racun_Click(object sender, RoutedEventArgs e) { var noviRacun = new ProdajaNamestaja(); var a = new RacunWindow(noviRacun, RacunWindow.Operacija.DODAVANJE); a.Show(); }
private void Izmena_Click(object sender, RoutedEventArgs e) { ProdajaNamestaja selektovanaProdaja = (ProdajaNamestaja)dgProdajaNamestaja.SelectedItem; var pdi = new ProdajaDodavanjeIzmena(selektovanaProdaja, ProdajaDodavanjeIzmena.Operacija.IZMENA); pdi.ShowDialog(); view.Refresh(); }
public ProdajaProzor(ProdajaNamestaja prodaja, Operacija operacija) { InitializeComponent(); this.prodaja = prodaja; this.operacija = operacija; dgStavke.ItemsSource = prodaja.StavkeProdaje; tbKupac.DataContext = prodaja; dpDatum.DataContext = prodaja; }
private void Izmena(object sender, RoutedEventArgs e) { switch (TrenutnoAktivno) { case "Namestaj": Namestaj namestajIzmena = dgPrikaz.SelectedItem as Namestaj; Namestaj namestajKopija = (Namestaj)namestajIzmena.Clone(); NamestajDodavanjeIzmena ndi = new NamestajDodavanjeIzmena(namestajKopija, NamestajDodavanjeIzmena.Operacija.IZMENA); ndi.ShowDialog(); view.Refresh(); break; case "TipoviNamestaja": TipNamestaja tipIzmena = dgPrikaz.SelectedItem as TipNamestaja; TipNamestaja kopija = (TipNamestaja)tipIzmena.Clone(); TipNamestajaDodavanejIzmena tdi = new TipNamestajaDodavanejIzmena(kopija, TipNamestajaDodavanejIzmena.Operacija.IZMENA); tdi.ShowDialog(); view.Refresh(); break; case "DodatneUsluge": DodatnaUsluga usluga = dgPrikaz.SelectedItem as DodatnaUsluga; DodatnaUsluga kopijaUsluge = (DodatnaUsluga)usluga.Clone(); DodatneUslugeDodavanjeIzmena ddi = new DodatneUslugeDodavanjeIzmena(kopijaUsluge, DodatneUslugeDodavanjeIzmena.Operacija.IZMENA); ddi.ShowDialog(); view.Refresh(); break; case "Korisnici": Korisnik korisnik = dgPrikaz.SelectedItem as Korisnik; Korisnik kopijaKorisnika = (Korisnik)korisnik.Clone(); DodavanjeIzmenaKorisnik dik = new DodavanjeIzmenaKorisnik(kopijaKorisnika, DodavanjeIzmenaKorisnik.Operacija.IZMENA); dik.ShowDialog(); view.Refresh(); break; case "Akcije": Akcija akcija = dgPrikaz.SelectedItem as Akcija; Akcija kopijaAkcije = (Akcija)akcija.Clone(); AkcijaDodavanjeIzmena dia = new AkcijaDodavanjeIzmena(kopijaAkcije, AkcijaDodavanjeIzmena.Operacija.IZMENA); dia.ShowDialog(); view.Refresh(); break; case "Prodaja": ProdajaNamestaja prodaja = dgPrikaz.SelectedItem as ProdajaNamestaja; ProdajaNamestaja kopijaProdaje = (ProdajaNamestaja)prodaja.Clone(); ProdajaWindow pw = new ProdajaWindow(kopijaProdaje, ProdajaWindow.Operacija.IZMENA); pw.ShowDialog(); view.Refresh(); break; default: break; } }
public DetaljnijeProdajaWindow(ProdajaNamestaja ProdajaIzabraniRed) { InitializeComponent(); this.ProdajaIzabraniRed = ProdajaIzabraniRed; dgRacun.CanUserSortColumns = false; dgRacun.CanUserAddRows = false; dgRacun.CanUserDeleteRows = false; dgRacun.IsReadOnly = true; PopuniPolja(); }
public RacunWindow(ProdajaNamestaja prodajaNamestaja, Operacija operacija) { InitializeComponent(); this.prodajaNamestaja = prodajaNamestaja; this.operacija = operacija; tbKupac.DataContext = prodajaNamestaja; tbBrojRacuna.DataContext = prodajaNamestaja; }
public ObservableCollection <StavkaNamestaja> stavka; //stavka private Projekat() { tipnamestaja = TipNamestaja.GetAll(); namestaj = Namestaj.GetAll(); dodatnausluga = DodatnaUsluga.GetAll(); korisnik = Korisnik.GetAll(); akcija = Akcija.GetAll(); salon = Salon.GetAll(); prodajanamestaja = ProdajaNamestaja.GetAll(); }
private void InicijalizujPodatke() { DateTime datum = DateTime.Now; tbKupac.Text = ""; prodaja.DatumProdaje = datum; prodaja.Id = Projekat.Instance.ProdajaNamestaja.Count + 1; prodaja.BrojRacuna = "R" + prodaja.Id + "/2018"; tbKolicina.Text = "1"; prodaja.UkupnaCena = ProdajaNamestaja.IzracunajUkupnuCenu(); }
public PrikaziNamestajUsluge(ProdajaNamestaja prodaja) { InitializeComponent(); this.prodaja = prodaja; dgNamestaj.ItemsSource = prodaja.NamestajNaProdaja; dgDodatneUsluge.ItemsSource = prodaja.DodatneUsluge; dgDodatneUsluge.ColumnWidth = new DataGridLength(1, DataGridLengthUnitType.Star); dgNamestaj.ColumnWidth = new DataGridLength(1, DataGridLengthUnitType.Star); }
private void SacuvajEditProdaja(object sender, RoutedEventArgs e) { var listaProdaje = Projekat.Instance.ProdajaNamestaja; this.DialogResult = true; double cenaNamestaja = 0; double cenaUsluga = 0; int kolicinaNam = 0; for (int i = 0; i < prodaja.NamestajNaProdaja.Count; i++) { if (prodaja.NamestajNaProdaja[i].CenaPopust > 0) { cenaNamestaja += prodaja.NamestajNaProdaja[i].CenaPopust; } else { cenaNamestaja += prodaja.NamestajNaProdaja[i].JedinicnaCena; } } for (int i = 0; i < prodaja.DodatneUsluge.Count; i++) { cenaUsluga += prodaja.DodatneUsluge[i].Cena; } for (int i = 0; i < prodaja.NamestajNaProdaja.Count; i++) { kolicinaNam += prodaja.NamestajNaProdaja[i].KolicinaUMagacinu; } switch (operacija) { case Operacija.DODAVANJE: prodaja.Id = listaProdaje.Count + 1; prodaja.BrojRacuna = listaProdaje.Count + 1; if (prodaja.NamestajNaProdaja.Count > 0) { for (int i = 0; i < prodaja.NamestajNaProdaja.Count; i++) { prodaja.NamestajNaProdaja[i].KolicinaUMagacinu = prodaja.NamestajNaProdaja[i].KolicinaUMagacinu - prodaja.NamestajNaProdaja[i].ProdataKolicina; prodaja.UkupanIznos = (cenaNamestaja * prodaja.NamestajNaProdaja[i].ProdataKolicina) + cenaUsluga; Namestaj.Update(prodaja.NamestajNaProdaja[i]); } } prodaja.UkupanIznosPDV = prodaja.UkupanIznos + ((prodaja.UkupanIznos * 20) / 100); ProdajaNamestaja.Create(prodaja); break; } Close(); }
//private bool FilterKorpe(object obj) //{ // return ((ProdajaStavke)obj).Obrisan == false; //} private void btnDodaj_Click(object sender, RoutedEventArgs e) { if (IzabraniNamestaj != null) { if (IzabraniNamestaj.KolicinaUMagacinu > 0) { try { int kolicina = Int32.Parse(tbKolicina.Text); if (kolicina > IzabraniNamestaj.KolicinaUMagacinu) { MessageBox.Show("Uneli ste vecu kolicinu nego sto ima na stanju!", "Greska", MessageBoxButton.OK, MessageBoxImage.Error); return; } ProdajaStavke prodajaStavke = new ProdajaStavke(IzabraniNamestaj.Id, IzabraniNamestaj.Naziv, kolicina, IzabraniNamestaj.Cena, 0, 0, IzabraniNamestaj.Akcija); if (ProdajaStavke.ProveriDaliStavkaPostoji(prodajaStavke) == true) { ProdajaStavke.PovecajKolicinu(prodajaStavke, kolicina); } else { Projekat.Instance.ProdajaStavke.Add(prodajaStavke); } Namestaj.PovecajSmanjiKolicinu(IzabraniNamestaj.Id, false, kolicina); Namestaj.Izmeni(IzabraniNamestaj); //dgKorpa.ItemsSource = prodaja; viewKorpa.Refresh(); viewNamestaj.Refresh(); prodaja.UkupnaCena = ProdajaNamestaja.IzracunajUkupnuCenu(); tbKolicina.Text = "1"; } catch (Exception) { MessageBox.Show("Kolicina nije validna!"); } } else { MessageBox.Show("Nema vise izabranog namestaja na lageru!", "Greska", MessageBoxButton.OK, MessageBoxImage.Warning); } } else { MessageBox.Show("Niste selektovali nijedan namestaj!", "Greska", MessageBoxButton.OK, MessageBoxImage.Warning); } }
public static void Update(ProdajaNamestaja npn) { try { using (var con = new SqlConnection(ConfigurationManager.ConnectionStrings["POP"].ConnectionString)) { con.Open(); SqlCommand cmd = con.CreateCommand(); DataSet ds = new DataSet(); cmd.CommandText = "UPDATE ProdajaNamestaja SET Kupac=@Kupac,BrRacuna=@BrRacuna,DatumProdaje=@DatumProdaje,UkupnaCena=@UkupnaCena,Obrisan=@Obrisan WHERE Id = @Id"; cmd.CommandText += " SELECT SCOPE_IDENTITY();"; cmd.Parameters.AddWithValue("Id", npn.Id); cmd.Parameters.AddWithValue("Kupac", npn.Kupac); cmd.Parameters.AddWithValue("BrRacuna", npn.BrRacuna); cmd.Parameters.AddWithValue("DatumProdaje", npn.DatumProdaje); cmd.Parameters.AddWithValue("UkupnaCena", npn.UkupnaCena); cmd.Parameters.AddWithValue("Obrisan", npn.Obrisan); cmd.ExecuteNonQuery(); } foreach (var prodaja in Projekat.Instance.Prodaja) { if (prodaja.Id == npn.Id) { prodaja.Kupac = npn.Kupac; prodaja.BrRacuna = npn.BrRacuna; prodaja.DatumProdaje = npn.DatumProdaje; prodaja.UkupnaCena = npn.UkupnaCena; prodaja.Obrisan = npn.Obrisan; } } } catch (TypeInitializationException ex) { MessageBoxResult poruka = MessageBox.Show("Doslo je do greske pri inicijalizaciji prodaje. " + ex.Message, "Upozorenje", MessageBoxButton.OK); return; } catch (SqlException ex) { MessageBoxResult poruka = MessageBox.Show("Isteklo je vreme za povezivanje sa bazom. " + ex.Message, "Upozorenje", MessageBoxButton.OK); return; } catch { MessageBoxResult poruka = MessageBox.Show("Doslo je do greske pri citanju iz baze. ", "Upozorenje", MessageBoxButton.OK); return; } }
public static ProdajaNamestaja DodajProdaju(ProdajaNamestaja p) { try { using (SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["Konekcija"].ToString())) { conn.Open(); SqlCommand cmd = new SqlCommand(@"INSERT INTO Prodaja(Kupac,Broj_Racuna,Datum_Prodaje,Ukupan_Iznos,Obrisan) VALUES(@kupac,@brojR,@datumProdaje,@ukupanIznos,@obrisan) ", conn); cmd.CommandText += "SELECT SCOPE_IDENTITY();"; cmd.Parameters.Add(new SqlParameter("@kupac", p.Kupac)); cmd.Parameters.Add(new SqlParameter("@brojR", p.BrojRacuna)); cmd.Parameters.Add(new SqlParameter("@datumProdaje", p.DatumProdaje)); cmd.Parameters.Add(new SqlParameter("@ukupanIznos", p.UkupanIznos)); cmd.Parameters.Add(new SqlParameter("@obrisan", '0')); int newId = int.Parse(cmd.ExecuteScalar().ToString()); p.Id = newId; for (int i = 0; i < p.StavkeProdaje.Count; i++) { SqlCommand cm = new SqlCommand(@"INSERT INTO Stavka(Kolicina,Cena,NamestajId,ProdajaId) VALUES(@kolicina,@cena,@namestajId,@prodajaId) ", conn); cm.Parameters.Add(new SqlParameter("@kolicina", p.StavkeProdaje[i].Kolicina)); cm.Parameters.Add(new SqlParameter("@cena", p.StavkeProdaje[i].Cena)); cm.Parameters.Add(new SqlParameter("@namestajId", p.StavkeProdaje[i].NamestajProdaja.Id)); cm.Parameters.Add(new SqlParameter("@prodajaId", p.Id)); cm.ExecuteNonQuery(); p.StavkeProdaje[i].NamestajProdaja.Kolicina = p.StavkeProdaje[i].NamestajProdaja.Kolicina - p.StavkeProdaje[i].Kolicina; NamestajDAO.IzmenaNamestaja(p.StavkeProdaje[i].NamestajProdaja); foreach (var namestaj in Projekat.Instance.Namestaj) { if (namestaj.Id == p.StavkeProdaje[i].NamestajProdaja.Id) { namestaj.Kolicina = p.StavkeProdaje[i].NamestajProdaja.Kolicina; } } } for (int i = 0; i < p.DodatneUsluge.Count; i++) { SqlCommand cm = new SqlCommand(@"INSERT INTO ProdateUsluge(UslugeId,ProdajaId) VALUES(@usluge,@prodajaId) ", conn); cm.Parameters.Add(new SqlParameter("@usluge", p.DodatneUsluge[i].Id)); cm.Parameters.Add(new SqlParameter("@prodajaId", p.Id)); cm.ExecuteNonQuery(); } } Projekat.Instance.Prodaja.Add(p); return(p); } catch { MessageBox.Show("Upis u bazu nije uspeo.\nMolimo da pokusate ponovo!", "Greska", MessageBoxButton.OK, MessageBoxImage.Warning); return(null); } }
private void btnDodajProdaju_Click(object sender, RoutedEventArgs e) { var praznaProdaja = new ProdajaNamestaja(); //{ // BrojRacuna = "", // DatumProdaje = DateTime.Now, // Kupac = "", // UkupnaCena = 0 //}; AddProdajaWindow addProdajaW = new AddProdajaWindow(praznaProdaja); addProdajaW.ShowDialog(); }
private void DodajProdaju() { novaProdaja = new ProdajaNamestaja() { DatumProdaje = DateTime.Now, Kupac = "", //BrojRacuna = 123 }; ProdajaNamestaja.Create(novaProdaja); var prozor = new ProdajeWindow(novaProdaja, NamestajWindow.Operacija.Dodavanje); prozor.ShowDialog(); //view.Refresh(); }
private void DodajProdaju(object sender, RoutedEventArgs e) { var novaProdaja = new ProdajaNamestaja() { DatumProdaje = DateTime.Today, Kupac = "", StavkeProdaje = new ObservableCollection <StavkaProdaje>(), ProdateUsluge = new ObservableCollection <ProdataUsluga>(), UkupnaCenaSaPDV = 0, UkupnaCenaBezPDV = 0 }; var prodajaNamestajaProzor = new ProdajaNamestajaWindow(novaProdaja, ProdajaNamestajaWindow.Operacija.DODAVANJE); prodajaNamestajaProzor.ShowDialog(); }