public static ObservableCollection <Akcija> UcitajSveAkcije() { var akcije = new ObservableCollection <Akcija>(); //using (var con = new SqlConnection(ConfigurationManager.ConnectionStrings["POP_SF6"].ConnectionString)) using (SqlConnection con = new SqlConnection(Projekat.CONNECTION_STRING)) { SqlCommand cmd = con.CreateCommand(); cmd.CommandText = "SELECT * FROM AKCIJA WHERE OBRISAN = 0"; DataSet ds = new DataSet(); SqlDataAdapter da = new SqlDataAdapter(); da.SelectCommand = cmd; da.Fill(ds, "Akcija"); //izvrsava se query nad bazom foreach (DataRow row in ds.Tables["Akcija"].Rows) { var akcija = new Akcija(); akcija.Id = int.Parse(row["ID"].ToString()); akcija.Naziv = row["NAZIV"].ToString(); akcija.DatumPocetka = DateTime.Parse(row["DATUM_OD"].ToString()); akcija.DatumZavrsetka = DateTime.Parse(row["DATUM_DO"].ToString()); akcija.Popust = int.Parse(row["POPUST"].ToString()); akcija.Obrisan = bool.Parse(row["OBRISAN"].ToString()); akcije.Add(akcija); } } return(akcije); }
public static void Izmeni(Akcija akcija) { using (SqlConnection con = new SqlConnection(Projekat.CONNECTION_STRING)) { con.Open(); SqlCommand cmd = con.CreateCommand(); cmd.CommandText = "UPDATE AKCIJA SET NAZIV=@NAZIV, DATUM_OD=@DATUM_OD, DATUM_DO=@DATUM_DO, " + "POPUST=@POPUST, OBRISAN=@OBRISAN WHERE ID=@ID"; cmd.Parameters.AddWithValue("ID", akcija.Id); cmd.Parameters.AddWithValue("NAZIV", akcija.Naziv); cmd.Parameters.AddWithValue("DATUM_OD", akcija.DatumPocetka); cmd.Parameters.AddWithValue("DATUM_DO", akcija.DatumZavrsetka); cmd.Parameters.AddWithValue("POPUST", akcija.Popust); cmd.Parameters.AddWithValue("OBRISAN", akcija.Obrisan); cmd.ExecuteNonQuery(); //azuriram stanje modela foreach (var ak in Projekat.Instance.Akcija) { if (ak.Id == akcija.Id) { ak.Naziv = akcija.Naziv; ak.DatumPocetka = akcija.DatumPocetka; ak.DatumZavrsetka = akcija.DatumZavrsetka; ak.Popust = akcija.Popust; ak.Obrisan = akcija.Obrisan; break; } } } }
public static ObservableCollection <Akcija> Search(string text) { try { var akcija = new ObservableCollection <Akcija>(); 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 Akcija WHERE Obrisan = 0 AND (PocetakAkcije LIKE @tekst OR ZavrsetakAkcije LIKE @tekst OR Popust LIKE @tekst) "; da.SelectCommand = cmd; cmd.Parameters.AddWithValue("@tekst", '%' + text + '%'); da.Fill(ds, "Akcija"); foreach (DataRow row in ds.Tables["Akcija"].Rows) { var a = new Akcija(); a.Id = Convert.ToInt32(row["Id"]); a.PocetakAkcije = DateTime.Parse(row["PocetakAkcije"].ToString()); a.ZavrsetakAkcije = DateTime.Parse(row["ZavrsetakAkcije"].ToString()); a.Popust = double.Parse(row["Popust"].ToString()); a.Obrisan = bool.Parse(row["Obrisan"].ToString()); DataSet ds2 = new DataSet(); SqlCommand cmd2 = con.CreateCommand(); cmd2.CommandText = "SELECT NId FROM NaAkciji WHERE AkId=@Id;"; cmd2.Parameters.AddWithValue("@Id", a.Id); da.SelectCommand = cmd2; da.Fill(ds2, "NaAkciji"); ObservableCollection <Namjestaj> namjestaj = new ObservableCollection <Namjestaj>(); foreach (DataRow dr in ds2.Tables["NaAkciji"].Rows) { int id = int.Parse(dr["NId"].ToString()); namjestaj.Add(Namjestaj.GetByid(id)); } a.NamjestajNaAkciji = namjestaj; akcija.Add(a); } } return(akcija); } catch (Exception) { MessageBox.Show("Greskaa prilikom pretrage akcije!", "Info", MessageBoxButton.OK, MessageBoxImage.Information); return(null); } }
public static void Update(Akcija a) { try { using (var con = new SqlConnection(ConfigurationManager.ConnectionStrings["POP"].ConnectionString)) { con.Open(); SqlCommand cmd = con.CreateCommand(); cmd.CommandText = "UPDATE Akcija SET PocetakAkcije = @PocetakAkcije, ZavrsetakAkcije = @ZavrsetakAkcije, Popust = @Popust, Obrisan = @Obrisan WHERE Id = @Id;"; cmd.CommandText += "SELECT SCOPE_IDENTITY();"; cmd.Parameters.AddWithValue("Id", a.Id); cmd.Parameters.AddWithValue("PocetakAkcije", a.PocetakAkcije); cmd.Parameters.AddWithValue("ZavrsetakAkcije", a.ZavrsetakAkcije); cmd.Parameters.AddWithValue("Popust", a.Popust); cmd.Parameters.AddWithValue("Obrisan", a.Obrisan); cmd.ExecuteNonQuery(); foreach (var item in a.namjestajNaAkciji) { cmd.CommandText = "UPDATE NaAkciji SET NId = @NId, AId = @AId, Obrisan = @Obrisan;"; cmd.CommandText += "SELECT SCOPE_IDENTITY();"; cmd.Parameters.AddWithValue("@NId", item.Id); cmd.Parameters.AddWithValue("@AId", a.Id); cmd.Parameters.AddWithValue("@Obrisan", '0'); } } foreach (var akcija in Projekat.Instance.Akcija) { if (a.Id == akcija.Id) { akcija.PocetakAkcije = a.PocetakAkcije; akcija.ZavrsetakAkcije = a.ZavrsetakAkcije; akcija.Popust = a.Popust; akcija.Obrisan = a.Obrisan; akcija.NamjestajNaAkciji = a.NamjestajNaAkciji; } } } catch (Exception) { MessageBox.Show("Greska prilikom izmjene akcije!", "Info", MessageBoxButton.OK, MessageBoxImage.Information); } }
public static Akcija Create(Akcija a) { try { using (var con = new SqlConnection(ConfigurationManager.ConnectionStrings["POP"].ConnectionString)) { con.Open(); SqlCommand cmd = con.CreateCommand(); cmd.CommandText = "INSERT INTO Akcija (PocetakAkcije, ZavrsetakAkcije, Popust, Obrisan) VALUES (@PocetakAkcije, @ZavrsetakAkcije, @Popust, @Obrisan);"; cmd.CommandText += "SELECT SCOPE_IDENTITY();"; cmd.Parameters.AddWithValue("PocetakAkcije", a.PocetakAkcije); cmd.Parameters.AddWithValue("ZavrsetakAkcije", a.ZavrsetakAkcije); cmd.Parameters.AddWithValue("Popust", a.Popust); cmd.Parameters.AddWithValue("Obrisan", a.Obrisan); a.Id = int.Parse(cmd.ExecuteScalar().ToString()); for (int i = 0; i < a.NamjestajNaAkciji.Count; i++) { SqlCommand cmd2 = con.CreateCommand(); cmd2.CommandText = "INSERT INTO NaAkciji(Nid,AkId,Obrisan) VALUES(@nIdD,@AId,@Obrisan2)"; cmd2.Parameters.Add(new SqlParameter("@nIdD", a.NamjestajNaAkciji[i].Id)); cmd2.Parameters.Add(new SqlParameter("@AId", a.Id)); cmd2.Parameters.Add(new SqlParameter("@Obrisan2", a.Obrisan)); cmd2.ExecuteNonQuery(); } } Projekat.Instance.Akcija.Add(a); return(a); } catch (Exception) { MessageBox.Show("Greska kod kreiranja akcije!", "Info", MessageBoxButton.OK, MessageBoxImage.Information); return(null); } }
public static Akcija Dodaj(Akcija akcija) { using (SqlConnection con = new SqlConnection(Projekat.CONNECTION_STRING)) { con.Open(); SqlCommand cmd = con.CreateCommand(); cmd.CommandText = $"INSERT INTO AKCIJA (NAZIV, DATUM_OD, DATUM_DO, POPUST, OBRISAN) " + $"VALUES (@NAZIV, @DATUM_OD, @DATUM_DO, @POPUST, 0);"; cmd.CommandText += "SELECT SCOPE_IDENTITY();"; cmd.Parameters.AddWithValue("NAZIV", akcija.Naziv); cmd.Parameters.AddWithValue("DATUM_OD", akcija.DatumPocetka); cmd.Parameters.AddWithValue("DATUM_DO", akcija.DatumZavrsetka); cmd.Parameters.AddWithValue("POPUST", akcija.Popust); int newId = int.Parse(cmd.ExecuteScalar().ToString()); //ExecuteScalar izvrsava query akcija.Id = newId; } Projekat.Instance.Akcija.Add(akcija); //azuriram i stanje modela return(akcija); }
public static void Obrisi(Akcija akcija) { akcija.Obrisan = true; Izmeni(akcija); }
public static void Delete(Akcija a) { a.Obrisan = true; Update(a); }