public static ObservableCollection <Namestaj> NamestajNijeNaAkciji() { var namestaj = new ObservableCollection <Namestaj>(); using (var conn = new SqlConnection(ConfigurationManager.ConnectionStrings["POP"].ConnectionString)) { SqlCommand cmd = conn.CreateCommand(); SqlDataAdapter da = new SqlDataAdapter(); cmd.CommandText = "SELECT * FROM Namestaj WHERE Obrisan = 0 AND Id NOT IN (SELECT NamestajId FROM NaAkciji WHERE Obrisan = 0)"; da.SelectCommand = cmd; DataSet ds = new DataSet(); da.Fill(ds, "Namestaj"); // izvrsavanje upita foreach (DataRow row in ds.Tables["Namestaj"].Rows) { var n = new Namestaj(); n.Id = int.Parse(row["Id"].ToString()); n.TipNamestajaId = int.Parse(row["TipNamestajaId"].ToString()); n.AkcijaId = int.Parse(row["AkcijskaProdajaId"].ToString()); n.Naziv = row["Naziv"].ToString(); n.Sifra = row["Sifra"].ToString(); n.JedinicnaCena = double.Parse(row["Cena"].ToString()); n.KolicinaUMagacinu = int.Parse(row["Kolicina"].ToString()); n.CenaNaAkciji = double.Parse(row["CenaNaAkciji"].ToString()); n.Obrisan = bool.Parse(row["Obrisan"].ToString()); namestaj.Add(n); } } return(namestaj); }
public static AkcijskaProdaja Create(AkcijskaProdaja ap) { try { using (var conn = new SqlConnection(ConfigurationManager.ConnectionStrings["POP"].ConnectionString)) { conn.Open(); SqlCommand cmd = conn.CreateCommand(); cmd.CommandText = "INSERT INTO AkcijskaProdaja (Naziv,Popust,DatumPocetka,DatumZavrsetka,Obrisan) VALUES (@Naziv,@Popust,@DatumPocetka,@DatumZavrsetka,@Obrisan);"; cmd.CommandText += "SELECT SCOPE_IDENTITY();"; cmd.Parameters.AddWithValue("Naziv", ap.Naziv); cmd.Parameters.AddWithValue("Popust", ap.Popust); cmd.Parameters.AddWithValue("DatumPocetka", ap.DatumPocetka); cmd.Parameters.AddWithValue("DatumZavrsetka", ap.DatumZavrsetka); cmd.Parameters.AddWithValue("Obrisan", ap.Obrisan); ap.Id = int.Parse(cmd.ExecuteScalar().ToString()); //executeScalar izvrsava upit for (int i = 0; i < ap.NamestajAkcija.Count; i++) { SqlCommand command = conn.CreateCommand(); command.CommandText = "INSERT INTO NaAkciji (NamestajId,AkcijskaProdajaId,Obrisan) VALUES (@NamestajId,@AkcijskaProdajaId,@Obrisan);"; command.Parameters.AddWithValue("NamestajId", ap.NamestajAkcija[i].NamestajId); command.Parameters.AddWithValue("AkcijskaProdajaId", ap.Id); command.Parameters.AddWithValue("Obrisan", ap.Obrisan); command.ExecuteNonQuery(); foreach (var n in Projekat.Instance.Namestaj) { if (n.Id == ap.NamestajAkcija[i].NamestajId) { n.CenaNaAkciji = n.JedinicnaCena - n.JedinicnaCena * (ap.Popust / 100); n.AkcijaId = ap.Id; Namestaj.Update(n); } } } } Projekat.Instance.AkcijskaProdaja.Add(ap); return(ap); } catch (Exception) { MessageBox.Show("Upis u bazu nije uspeo.\n Molim da pokusate ponovo!", "Greska", MessageBoxButton.OK, MessageBoxImage.Warning); return(null); } }
//azuriranje baze public static void Update(Namestaj n) { try { using (var conn = new SqlConnection(ConfigurationManager.ConnectionStrings["POP"].ConnectionString)) { conn.Open(); SqlCommand cmd = conn.CreateCommand(); cmd.CommandText = "UPDATE Namestaj SET TipNamestajaId = @TipNamestajaId,AkcijskaProdajaId = @AkcijskaProdajaId, CenaNaAkciji = @CenaNaAkciji,Naziv = @Naziv,Sifra = @Sifra,Cena = @Cena,Kolicina = @Kolicina, Obrisan= @Obrisan WHERE Id = @Id"; //cmd.CommandText += "SELECT SCOPE_IDENTITY();"; cmd.Parameters.AddWithValue("Id", n.Id); cmd.Parameters.AddWithValue("TipNamestajaId", n.TipNamestajaId); cmd.Parameters.AddWithValue("AkcijskaProdajaId", n.AkcijaId); cmd.Parameters.AddWithValue("Naziv", n.Naziv); cmd.Parameters.AddWithValue("Sifra", n.Sifra); cmd.Parameters.AddWithValue("Cena", n.JedinicnaCena); cmd.Parameters.AddWithValue("Kolicina", n.KolicinaUMagacinu); cmd.Parameters.AddWithValue("CenaNaAkciji", n.CenaNaAkciji); cmd.Parameters.AddWithValue("Obrisan", n.Obrisan); cmd.ExecuteNonQuery(); } //azuriranje modela foreach (var namestaj in Projekat.Instance.Namestaj) { if (n.Id == namestaj.Id) { namestaj.Naziv = n.Naziv; namestaj.TipNamestajaId = n.TipNamestajaId; namestaj.TipNamestaja = n.TipNamestaja; namestaj.AkcijaId = n.AkcijaId; namestaj.Sifra = n.Sifra; namestaj.JedinicnaCena = n.JedinicnaCena; namestaj.KolicinaUMagacinu = n.KolicinaUMagacinu; namestaj.CenaNaAkciji = n.CenaNaAkciji; namestaj.Obrisan = n.Obrisan; } } } catch (Exception) { MessageBox.Show("Upis u bazu nije uspeo.\n Molim da pokusate ponovo!", "Greska", MessageBoxButton.OK, MessageBoxImage.Warning); } }
public static ObservableCollection <Namestaj> PretragaNamestaja(string unos, TipPretrage tipPretrage) { var namestaj = new ObservableCollection <Namestaj>(); using (var conn = new SqlConnection(ConfigurationManager.ConnectionStrings["POP"].ConnectionString)) { SqlCommand cmd = conn.CreateCommand(); SqlDataAdapter da = new SqlDataAdapter(); switch (tipPretrage) { case TipPretrage.NAZIV: cmd.CommandText = "SELECT * FROM Namestaj n INNER JOIN TipNamestaja tn ON n.TipNamestajaId = tn.Id WHERE n.Naziv LIKE @unos AND n.Obrisan = 0;"; break; case TipPretrage.SIFRA: cmd.CommandText = "SELECT * FROM Namestaj n INNER JOIN TipNamestaja tn ON n.TipNamestajaId = tn.Id WHERE n.Sifra LIKE @unos AND n.Obrisan = 0;"; break; case TipPretrage.TIPNAMESTAJA: cmd.CommandText = "SELECT * FROM Namestaj n INNER JOIN TipNamestaja tn ON n.TipNamestajaId = tn.Id WHERE tn.Naziv LIKE @unos AND n.Obrisan = 0;"; break; } cmd.Parameters.AddWithValue("unos", "%" + unos.Trim() + "%"); da.SelectCommand = cmd; DataSet ds = new DataSet(); da.Fill(ds, "Namestaj"); foreach (DataRow row in ds.Tables["Namestaj"].Rows) { var n = new Namestaj(); n.Id = int.Parse(row["Id"].ToString()); n.TipNamestajaId = int.Parse(row["TipNamestajaId"].ToString()); n.AkcijaId = int.Parse(row["AkcijskaProdajaId"].ToString()); n.Naziv = row["Naziv"].ToString(); n.Sifra = row["Sifra"].ToString(); n.JedinicnaCena = double.Parse(row["Cena"].ToString()); n.KolicinaUMagacinu = int.Parse(row["Kolicina"].ToString()); n.CenaNaAkciji = double.Parse(row["CenaNaAkciji"].ToString()); n.Obrisan = bool.Parse(row["Obrisan"].ToString()); namestaj.Add(n); } } return(namestaj); }
public static Namestaj Create(Namestaj n) { Random random = new Random(); try { using (var conn = new SqlConnection(ConfigurationManager.ConnectionStrings["POP"].ConnectionString)) { conn.Open(); SqlCommand cmd = conn.CreateCommand(); cmd.CommandText = "INSERT INTO Namestaj (TipNamestajaId,AkcijskaProdajaId,Naziv,Sifra,Cena,CenaNaAkciji,Kolicina,Obrisan) VALUES (@TipNamestajaId,@AkcijskaProdajaId,@Naziv,@Sifra,@Cena,@CenaNaAkciji,@Kolicina,@Obrisan);"; cmd.CommandText += "SELECT SCOPE_IDENTITY();"; cmd.Parameters.AddWithValue("TipNamestajaId", n.TipNamestajaId); cmd.Parameters.AddWithValue("AkcijskaProdajaId", n.AkcijaId); cmd.Parameters.AddWithValue("Naziv", n.Naziv); n.Sifra = n.Naziv.Substring(0, 2).ToUpper() + random.Next(1, 99) + n.TipNamestaja.Naziv.Substring(0, 2).ToUpper(); cmd.Parameters.AddWithValue("Sifra", n.Sifra); cmd.Parameters.AddWithValue("Cena", n.JedinicnaCena); cmd.Parameters.AddWithValue("Kolicina", n.KolicinaUMagacinu); cmd.Parameters.AddWithValue("CenaNaAkciji", n.CenaNaAkciji); cmd.Parameters.AddWithValue("Obrisan", n.Obrisan); n.Id = int.Parse(cmd.ExecuteScalar().ToString()); //executeScalar izvrsava upit } Projekat.Instance.Namestaj.Add(n); return(n); } catch (Exception) { MessageBox.Show("Upis u bazu nije uspeo.\n Molim da pokusate ponovo!", "Greska", MessageBoxButton.OK, MessageBoxImage.Warning); return(null); } }
public static void Delete(Namestaj n) { n.Obrisan = true; Update(n); }