예제 #1
0
        public static ObservableCollection <Korisnik> SearchAndOrSort(GlavniWindow.DoSearch doSearch, string parametar, SortBy sortBy)
        {
            try
            {
                var korisnici = new ObservableCollection <Korisnik>();
                using (var con = new SqlConnection(ConfigurationManager.ConnectionStrings["POP"].ConnectionString))
                {
                    SqlCommand     cmd = con.CreateCommand();
                    SqlDataAdapter da  = new SqlDataAdapter();
                    DataSet        ds  = new DataSet();

                    switch (doSearch)
                    {
                    case GlavniWindow.DoSearch.Other:
                        cmd.CommandText = "SELECT * FROM Korisnik WHERE Obrisan=0 AND (Ime LIKE @parametar OR Prezime LIKE @parametar OR KorisnickoIme LIKE @parametar)";
                        cmd.Parameters.AddWithValue("parametar", "%" + parametar + "%");
                        break;

                    case GlavniWindow.DoSearch.No:
                        cmd.CommandText = "SELECT * FROM Korisnik WHERE Obrisan=0";
                        break;
                    }

                    switch (sortBy)
                    {
                    case SortBy.Ime_Opadajuce:
                        cmd.CommandText += " ORDER BY Ime DESC";
                        break;

                    case SortBy.Ime_Rastuce:
                        cmd.CommandText += " ORDER BY Ime ASC";
                        break;

                    case SortBy.Prezime_Opadajuce:
                        cmd.CommandText += " ORDER BY Prezime DESC";
                        break;

                    case SortBy.Prezime_Rastuce:
                        cmd.CommandText += " ORDER BY Prezime ASC";
                        break;

                    case SortBy.KorisnickoIme_Opadajuce:
                        cmd.CommandText += " ORDER BY KorisnickoIme DESC";
                        break;

                    case SortBy.KorisnickoIme_Rastuce:
                        cmd.CommandText += " ORDER BY KorisnickoIme ASC";
                        break;

                    case SortBy.TipKorisnika_Opadajuce:
                        cmd.CommandText += " ORDER BY TipKorisnika DESC";
                        break;

                    case SortBy.TipKorisnika_Rastuce:
                        cmd.CommandText += " ORDER BY TipKorisnika ASC";
                        break;
                    }
                    da.SelectCommand = cmd;
                    da.Fill(ds, "Korisnik"); //izvrsavanje upita

                    foreach (DataRow row in ds.Tables["Korisnik"].Rows)
                    {
                        var nk = new Korisnik();
                        nk.Id            = (int)row["Id"];
                        nk.Ime           = row["Ime"].ToString();
                        nk.Prezime       = row["Prezime"].ToString();
                        nk.KorisnickoIme = row["KorisnickoIme"].ToString();
                        nk.Lozinka       = row["Lozinka"].ToString();
                        if ((int)row["TipKorisnika"] == 1)
                        {
                            nk.TipKorisnika = TipKorisnika.Administrator;
                        }
                        else
                        {
                            nk.TipKorisnika = TipKorisnika.Prodavac;
                        }
                        nk.Obrisan = bool.Parse(row["Obrisan"].ToString());

                        korisnici.Add(nk);
                    }
                }
                return(korisnici);
            }
            catch (TypeInitializationException ex)
            {
                MessageBoxResult poruka = MessageBox.Show("Doslo je do greske pri inicijalizaciji korisnika. " + ex.Message, "Upozorenje", MessageBoxButton.OK);
                return(null);
            }
            catch (SqlException ex)
            {
                MessageBoxResult poruka = MessageBox.Show("Isteklo je vreme za povezivanje sa bazom. " + ex.Message, "Upozorenje", MessageBoxButton.OK);
                return(null);
            }
            catch
            {
                MessageBoxResult poruka = MessageBox.Show("Doslo je do greske pri citanju iz baze. ", "Upozorenje", MessageBoxButton.OK);
                return(null);
            }
        }
예제 #2
0
        public static ObservableCollection <ProdajaNamestaja> SearchAndOrSort(GlavniWindow.DoSearch doSearch, string parametarS, DateTime parametarDT, SortBy sortBy)
        {
            try
            {
                var listaProdaja = new ObservableCollection <ProdajaNamestaja>();
                using (var con = new SqlConnection(ConfigurationManager.ConnectionStrings["POP"].ConnectionString))
                {
                    SqlCommand     cmd = con.CreateCommand();
                    SqlDataAdapter da  = new SqlDataAdapter();
                    DataSet        ds  = new DataSet();

                    switch (doSearch)
                    {
                    case GlavniWindow.DoSearch.Date:
                        cmd.CommandText = "SELECT * FROM ProdajaNamestaja WHERE Obrisan=0 AND DatumProdaje = @parametarDT";
                        cmd.Parameters.AddWithValue("parametarDT", parametarDT);
                        break;

                    case GlavniWindow.DoSearch.Other:
                        cmd.CommandText = "SELECT * FROM ProdajaNamestaja WHERE (Id IN(SELECT ProdajaId FROM JedinicaProdaje WHERE Obrisan=0 AND NamestajId IN (SELECT Id FROM Namestaj WHERE Naziv LIKE @parametarS))OR Kupac LIKE @parametarS OR BrRacuna LIKE @parametarS) AND Obrisan=0";
                        cmd.Parameters.AddWithValue("parametarS", "%" + parametarS + "%");
                        break;

                    case GlavniWindow.DoSearch.No:
                        cmd.CommandText = "SELECT * FROM ProdajaNamestaja WHERE Obrisan=0";
                        break;
                    }
                    switch (sortBy)
                    {
                    case SortBy.Kupac_Opadajuce:
                        cmd.CommandText += " ORDER BY Kupac DESC";
                        break;

                    case SortBy.Kupac_Rastuce:
                        cmd.CommandText += " ORDER BY Kupac ASC";
                        break;

                    case SortBy.BrRacuna_Opadajuce:
                        cmd.CommandText += " ORDER BY BrRacuna DESC";
                        break;

                    case SortBy.BrRacuna_Rastuce:
                        cmd.CommandText += " ORDER BY BrRacuna ASC";
                        break;

                    case SortBy.DatumProdaje_Opadajuce:
                        cmd.CommandText += " ORDER BY DatumProdaje DESC";
                        break;

                    case SortBy.DatumProdaje_Rastuce:
                        cmd.CommandText += " ORDER BY DatumProdaje ASC";
                        break;

                    case SortBy.UkupnaCena_Opadajuce:
                        cmd.CommandText += " ORDER BY UkupnaCena DESC";
                        break;

                    case SortBy.UkupnaCena_Rastuce:
                        cmd.CommandText += " ORDER BY UkupnaCena ASC";
                        break;
                    }

                    da.SelectCommand = cmd;
                    da.Fill(ds, "ProdajaNamestaja"); //izvrsavanje upita

                    foreach (DataRow row in ds.Tables["ProdajaNamestaja"].Rows)
                    {
                        var np = new ProdajaNamestaja();
                        np.Id           = (int)row["Id"];
                        np.Kupac        = row["Kupac"].ToString();
                        np.BrRacuna     = row["BrRacuna"].ToString();
                        np.DatumProdaje = DateTime.Parse(row["DatumProdaje"].ToString());
                        np.UkupnaCena   = double.Parse(row["UkupnaCena"].ToString());
                        np.Obrisan      = bool.Parse(row["Obrisan"].ToString());

                        listaProdaja.Add(np);
                    }
                }
                return(listaProdaja);
            }
            catch (TypeInitializationException ex)
            {
                MessageBoxResult poruka = MessageBox.Show("Doslo je do greske pri inicijalizaciji prodaje. " + ex.Message, "Upozorenje", MessageBoxButton.OK);
                return(null);
            }
            catch (SqlException ex)
            {
                MessageBoxResult poruka = MessageBox.Show("Isteklo je vreme za povezivanje sa bazom. " + ex.Message, "Upozorenje", MessageBoxButton.OK);
                return(null);
            }
            catch
            {
                MessageBoxResult poruka = MessageBox.Show("Doslo je do greske pri citanju iz baze. ", "Upozorenje", MessageBoxButton.OK);
                return(null);
            }
        }
예제 #3
0
        public static ObservableCollection <Akcija> SearchAndOrSort(GlavniWindow.DoSearch doSearch, string parametarS, DateTime parametarDT, SortBy sortBy)
        {
            try
            {
                var listaAkcija = new ObservableCollection <Akcija>();
                using (var con = new SqlConnection(ConfigurationManager.ConnectionStrings["POP"].ConnectionString))
                {
                    SqlCommand     cmd = con.CreateCommand();
                    SqlDataAdapter da  = new SqlDataAdapter();
                    DataSet        ds  = new DataSet();

                    switch (doSearch)
                    {
                    case GlavniWindow.DoSearch.Other:
                        cmd.CommandText = "SELECT * FROM AKCIJA WHERE (IdAkcije IN (SELECT IdAkcije FROM NaAkciji WHERE Obrisan=0 AND IdNamestaja IN (SELECT Id FROM NAMESTAJ WHERE Naziv LIKE @parametarS)) OR Naziv LIKE @parametarS) AND Obrisan=0";
                        cmd.Parameters.AddWithValue("parametarS", "%" + parametarS.Trim() + "%");
                        break;

                    case GlavniWindow.DoSearch.Date:
                        cmd.CommandText = "SELECT * FROM Akcija WHERE Obrisan=0 AND (@parametarDT BETWEEN DatumPocetak AND DatumKraj)";
                        cmd.Parameters.AddWithValue("parametarDT", parametarDT);
                        break;

                    case GlavniWindow.DoSearch.No:
                        cmd.CommandText = "SELECT * FROM Akcija WHERE Obrisan=0";
                        break;
                    }
                    switch (sortBy)
                    {
                    case SortBy.Naziv_Opadajuce:
                        cmd.CommandText += " ORDER BY Naziv DESC";
                        break;

                    case SortBy.Naziv_Rastuce:
                        cmd.CommandText += " ORDER BY Naziv ASC";
                        break;

                    case SortBy.PocetakAkcije_Opadajuce:
                        cmd.CommandText += " ORDER BY DatumPocetak DESC";
                        break;

                    case SortBy.PocetakAkcije_Rastuce:
                        cmd.CommandText += " ORDER BY DatumPocetak ASC";
                        break;

                    case SortBy.KrajAkcije_Opadajuce:
                        cmd.CommandText += " ORDER BY DatumKraj DESC";
                        break;

                    case SortBy.KrajAkcije_Rastuce:
                        cmd.CommandText += " ORDER BY DatumKraj ASC";
                        break;
                    }
                    da.SelectCommand = cmd;
                    da.Fill(ds, "Akcija"); //izvrsavanje upita

                    foreach (DataRow row in ds.Tables["Akcija"].Rows)
                    {
                        var a = new Akcija();
                        a.Id            = (int)row["IdAkcije"];
                        a.Naziv         = row["Naziv"].ToString();
                        a.PocetakAkcije = DateTime.Parse(row["DatumPocetak"].ToString());
                        a.KrajAkcije    = DateTime.Parse(row["DatumKraj"].ToString());
                        a.Obrisan       = bool.Parse(row["Obrisan"].ToString());

                        listaAkcija.Add(a);
                    }
                }
                return(listaAkcija);
            }
            catch (TypeInitializationException ex)
            {
                MessageBoxResult poruka = MessageBox.Show("Doslo je do greske pri inicijalizaciji akcija. " + ex.Message, "Upozorenje", MessageBoxButton.OK);
                return(null);
            }
            catch (SqlException ex)
            {
                MessageBoxResult poruka = MessageBox.Show("Isteklo je vreme za povezivanje sa bazom. " + ex.Message, "Upozorenje", MessageBoxButton.OK);
                return(null);
            }
            catch
            {
                MessageBoxResult poruka = MessageBox.Show("Doslo je do greske pri citanju iz baze. ", "Upozorenje", MessageBoxButton.OK);
                return(null);
            }
        }
예제 #4
0
        public static ObservableCollection <Namestaj> SearchAndOrSort(GlavniWindow.DoSearch doSearch, string parametar, SortBy sortBy)
        {
            try
            {
                var listaNamestaja = new ObservableCollection <Namestaj>();
                using (var con = new SqlConnection(ConfigurationManager.ConnectionStrings["POP"].ConnectionString))
                {
                    SqlCommand     cmd = con.CreateCommand();
                    SqlDataAdapter da  = new SqlDataAdapter();
                    DataSet        ds  = new DataSet();

                    switch (doSearch)
                    {
                    case GlavniWindow.DoSearch.Other:
                        cmd.CommandText = "SELECT * FROM Namestaj n INNER JOIN TipNamestaja tn ON n.TipNamestajaId = tn.Id WHERE n.Obrisan=0 AND (n.Naziv LIKE @parametar OR Sifra LIKE @parametar or tn.Naziv LIKE @parametar)";
                        cmd.Parameters.AddWithValue("parametar", "%" + parametar.Trim() + "%");
                        break;

                    case GlavniWindow.DoSearch.No:
                        cmd.CommandText = "SELECT * FROM Namestaj n INNER JOIN TipNamestaja tn on n.TipNamestajaId=tn.Id  WHERE n.Obrisan=0";
                        break;
                    }
                    switch (sortBy)
                    {
                    case SortBy.Naziv_Opadajuce:
                        cmd.CommandText += " ORDER BY n.Naziv DESC";
                        break;

                    case SortBy.Naziv_Rastuce:
                        cmd.CommandText += " ORDER BY n.Naziv ASC";
                        break;

                    case SortBy.Sifra_Opadajuce:
                        cmd.CommandText += " ORDER BY n.Sifra DESC";
                        break;

                    case SortBy.Sifra_Rastuce:
                        cmd.CommandText += " ORDER BY n.Sifra ASC";
                        break;

                    case SortBy.Cena_Opadajuce:
                        cmd.CommandText += " ORDER BY n.Cena DESC";
                        break;

                    case SortBy.Cena_Rastuce:
                        cmd.CommandText += " ORDER BY n.Cena ASC";
                        break;

                    case SortBy.TipNamestaja_Opadajuce:
                        cmd.CommandText += " ORDER BY tn.Naziv DESC";
                        break;

                    case SortBy.TipNamestaja_Rastuce:
                        cmd.CommandText += " ORDER BY tn.Naziv ASC";
                        break;

                    case SortBy.BrKomada_Opadajuce:
                        cmd.CommandText += " ORDER BY n.Kolicina DESC";
                        break;

                    case SortBy.BrKomada_Rastuce:
                        cmd.CommandText += " ORDER BY n.Kolicina ASC";
                        break;
                    }
                    switch (doSearch)
                    {
                    case GlavniWindow.DoSearch.Other:

                        break;
                    }
                    da.SelectCommand = cmd;
                    da.Fill(ds, "Namestaj"); //izvrsavanje upita

                    foreach (DataRow row in ds.Tables["Namestaj"].Rows)
                    {
                        var n = new Namestaj();
                        n.Id             = (int)row["Id"];
                        n.TipNamestajaId = (int?)row["TipNamestajaId"];
                        n.Naziv          = row["Naziv"].ToString();
                        n.Sifra          = row["Sifra"].ToString();
                        n.Cena           = double.Parse(row["Cena"].ToString());
                        n.BrKomada       = (int)row["Kolicina"];

                        n.Obrisan = bool.Parse(row["Obrisan"].ToString());

                        listaNamestaja.Add(n);
                    }
                }
                return(listaNamestaja);
            }
            catch (TypeInitializationException ex)
            {
                MessageBoxResult poruka = MessageBox.Show("Doslo je do greske pri inicijalizaciji namestaja. " + ex.Message, "Upozorenje", MessageBoxButton.OK);
                return(null);
            }
            catch (SqlException ex)
            {
                MessageBoxResult poruka = MessageBox.Show("Isteklo je vreme za povezivanje sa bazom. " + ex.Message, "Upozorenje", MessageBoxButton.OK);
                return(null);
            }
            catch
            {
                MessageBoxResult poruka = MessageBox.Show("Doslo je do greske pri citanju iz baze. ", "Upozorenje", MessageBoxButton.OK);
                return(null);
            }
        }
예제 #5
0
        public static ObservableCollection <TipNamestaja> SearchAndOrSort(GlavniWindow.DoSearch doSearch, string parametar, SortBy sortBy)
        {
            try
            {
                var tipoviNamestaja = new ObservableCollection <TipNamestaja>();
                using (var con = new SqlConnection(ConfigurationManager.ConnectionStrings["POP"].ConnectionString))
                {
                    SqlCommand     cmd = con.CreateCommand();
                    SqlDataAdapter da  = new SqlDataAdapter();
                    DataSet        ds  = new DataSet();

                    switch (doSearch)
                    {
                    case GlavniWindow.DoSearch.Other:
                        cmd.CommandText = "SELECT * FROM TipNamestaja WHERE Obrisan=0 AND Naziv like @parametar";
                        cmd.Parameters.AddWithValue("parametar", "%" + parametar + "%");
                        break;

                    case GlavniWindow.DoSearch.No:
                        cmd.CommandText = "SELECT * FROM TipNamestaja WHERE Obrisan=0";
                        break;
                    }

                    switch (sortBy)
                    {
                    case SortBy.Naziv_Opadajuce:
                        cmd.CommandText += " ORDER BY Naziv DESC";
                        break;

                    case SortBy.Naziv_Rastuce:
                        cmd.CommandText += " ORDER BY Naziv ASC";
                        break;
                    }
                    da.SelectCommand = cmd;
                    da.Fill(ds, "TipNamestaja"); //izvrsavanje upita

                    foreach (DataRow row in ds.Tables["TipNamestaja"].Rows)
                    {
                        var tn = new TipNamestaja();
                        tn.Id      = (int)row["Id"];
                        tn.Naziv   = row["Naziv"].ToString();
                        tn.Obrisan = bool.Parse(row["Obrisan"].ToString());

                        tipoviNamestaja.Add(tn);
                    }
                }
                return(tipoviNamestaja);
            }
            catch (TypeInitializationException ex)
            {
                MessageBoxResult poruka = MessageBox.Show("Doslo je do greske pri inicijalizaciji tipova namestaja. " + ex.Message, "Upozorenje", MessageBoxButton.OK);
                return(null);
            }
            catch (SqlException ex)
            {
                MessageBoxResult poruka = MessageBox.Show("Isteklo je vreme za povezivanje sa bazom. " + ex.Message, "Upozorenje", MessageBoxButton.OK);
                return(null);
            }
            catch
            {
                MessageBoxResult poruka = MessageBox.Show("Doslo je do greske pri citanju iz baze. ", "Upozorenje", MessageBoxButton.OK);
                return(null);
            }
        }