public static ProdajaNamjestaja Create(ProdajaNamjestaja p) { try { using (var con = new SqlConnection(ConfigurationManager.ConnectionStrings["POP"].ConnectionString)) { con.Open(); SqlCommand cmd = con.CreateCommand(); cmd.CommandText = "INSERT INTO Prodaja (DatumProdaje, BrojRacuna, Kupac, UkupanIznos, Obrisan) VALUES(@DatumProdaje, @BrojRacuna, @Kupac, @UkupanIznos, @Obrisan); "; cmd.CommandText += "SELECT SCOPE_IDENTITY();"; cmd.Parameters.AddWithValue("DatumProdaje", p.DatumProdaje); cmd.Parameters.AddWithValue("BrojRacuna", p.BrojRacuna); cmd.Parameters.AddWithValue("Kupac", p.Kupac); cmd.Parameters.AddWithValue("UkupanIznos", p.UkupanIznos); cmd.Parameters.AddWithValue("Obrisan", p.Obrisan); p.Id = int.Parse(cmd.ExecuteScalar().ToString()); for (int i = 0; i < p.NamjestajPro.Count; i++) { SqlCommand cmd2 = con.CreateCommand(); cmd2.CommandText = "INSERT INTO Stavka(PId, Kolicina, NId, Obrisan) VALUES(@PId, @Kolicina, @NId, @Obrisan2)"; cmd2.Parameters.AddWithValue("@PId", p.Id); cmd2.Parameters.AddWithValue("@Kolicina", p.NamjestajPro[i].Kolicina); cmd2.Parameters.AddWithValue("@NId", p.NamjestajPro[i].Namjestaj.Id); cmd2.Parameters.AddWithValue("@Obrisan2", p.Obrisan); cmd2.ExecuteNonQuery(); } foreach (var item in p.NamjestajPro) { item.Namjestaj.Kolicina = item.Namjestaj.Kolicina - item.Kolicina; Namjestaj.Update(item.Namjestaj); } for (int i = 0; i < p.DodatnaU.Count; i++) { SqlCommand cmd3 = con.CreateCommand(); cmd3.CommandText = "INSERT INTO ProdateUsluge(PId, UslugaId, Obrisan) VALUES(@PId, @UslugaId, @Obrisan3)"; cmd3.Parameters.AddWithValue("@PId", p.Id); cmd3.Parameters.AddWithValue("@UslugaId", p.DodatnaU[i].Id); cmd3.Parameters.AddWithValue("@Obrisan3", p.Obrisan); cmd3.ExecuteNonQuery(); } } Projekat.Instance.ProdajaNamjestaja.Add(p); return(p); } catch (Exception) { MessageBox.Show("Greska prilikom kreiranja prodaje namjestaja!", "Info", MessageBoxButton.OK, MessageBoxImage.Information); return(null); } }
public static void Update(ProdajaNamjestaja p) { try { using (var con = new SqlConnection(ConfigurationManager.ConnectionStrings["POP"].ConnectionString)) { con.Open(); SqlCommand cmd = con.CreateCommand(); cmd.CommandText = "UPDATE Prodaja SET DatumProdaje=@DatumProdaje, BrojRacuna=@BrojRacuna, Kupac=@Kupac, UkupanIznos=@UkupanIznos, Obrisan=@Obrisan WHERE Id=@Id;"; cmd.CommandText += "SELECT SCOPE_IDENTITY();"; cmd.Parameters.AddWithValue("Id", p.Id); cmd.Parameters.AddWithValue("DatumProdaje", p.DatumProdaje); cmd.Parameters.AddWithValue("BrojRacuna", p.BrojRacuna); cmd.Parameters.AddWithValue("Kupac", p.Kupac); cmd.Parameters.AddWithValue("UkupanIznos", p.UkupanIznos); cmd.Parameters.AddWithValue("Obrisan", p.Obrisan); cmd.ExecuteNonQuery(); } foreach (var item in Projekat.Instance.ProdajaNamjestaja) { if (item.Id == p.Id) { item.DatumProdaje = p.DatumProdaje; item.BrojRacuna = p.BrojRacuna; item.Kupac = p.Kupac; item.UkupanIznos = p.UkupanIznos; item.Obrisan = p.Obrisan; } } } catch (Exception) { MessageBox.Show("Greska prilikom izmjene prodaje namjestaja!", "Info", MessageBoxButton.OK, MessageBoxImage.Information); } }
public static ObservableCollection <ProdajaNamjestaja> GetAll() { try { var prodaja = new ObservableCollection <ProdajaNamjestaja>(); using (var con = new SqlConnection(ConfigurationManager.ConnectionStrings["POP"].ConnectionString)) { SqlCommand cmd = con.CreateCommand(); SqlDataAdapter da = new SqlDataAdapter(); DataSet ds = new DataSet(); cmd.CommandText = "SELECT * FROM Prodaja WHERE Obrisan = 0;"; da.SelectCommand = cmd; da.Fill(ds, "Prodaja"); foreach (DataRow row in ds.Tables["Prodaja"].Rows) { var p = new ProdajaNamjestaja(); p.Id = int.Parse(row["Id"].ToString()); p.DatumProdaje = DateTime.Parse(row["DatumProdaje"].ToString()); p.BrojRacuna = row["BrojRacuna"].ToString(); p.Kupac = row["Kupac"].ToString(); p.UkupanIznos = double.Parse(row["UkupanIznos"].ToString()); p.Obrisan = bool.Parse(row["Obrisan"].ToString()); DataSet ds3 = new DataSet(); SqlCommand cmd3 = con.CreateCommand(); cmd3.CommandText = "SELECT UslugaId FROM ProdateUsluge WHERE PId=@Id;"; cmd3.Parameters.AddWithValue("@Id", p.Id); da.SelectCommand = cmd3; da.Fill(ds3, "ProdateUsluge"); ObservableCollection <DodatnaUsluga> usluga = new ObservableCollection <DodatnaUsluga>(); foreach (DataRow dr1 in ds3.Tables["ProdateUsluge"].Rows) { int id = int.Parse(dr1["UslugaId"].ToString()); usluga.Add(DodatnaUsluga.GetById(id)); } p.DodatnaU = usluga; prodaja.Add(p); DataSet ds2 = new DataSet(); SqlCommand cmd2 = con.CreateCommand(); cmd2.CommandText = "SELECT NId FROM Stavka WHERE PId=@Id;"; cmd2.Parameters.AddWithValue("@Id", p.Id); da.SelectCommand = cmd2; da.Fill(ds2, "Stavka"); foreach (DataRow dr in ds2.Tables["Stavka"].Rows) { Stavke s = new Stavke() { Id = int.Parse(dr["StId"].ToString()), Kolicina = int.Parse(dr["Kolicina"].ToString()), NamjestajID = int.Parse(dr["NId"].ToString()), Obrisan = bool.Parse(dr["Obrisan"].ToString()) }; p.NamjestajPro.Add(s); } prodaja.Add(p); } } return(prodaja); } catch (Exception) { MessageBox.Show("Greska prilikom ucitavanja prodaje namjestaja!", "Info", MessageBoxButton.OK, MessageBoxImage.Information); return(null); } }