예제 #1
0
        private void PopunjavanjePolja()
        {
            dpPocetniDatum.DataContext = akcija;
            dpKrajnjiDatum.DataContext = akcija;
            tbNaziv.DataContext        = akcija;
            tbNaziv.MaxLength          = 100;
            ListaNamestajaZaDG1        = NamestajDAO.GetAllNamestajNotOnAction();

            if (operacija == Operacija.IZMENA)
            {
                ListaNAZaDG2                    = NaAkcijiDAO.GetAllNAForActionId(akcija.Id);
                dgZaAkciju.IsReadOnly           = true;
                dpPocetniDatum.IsHitTestVisible = false;
            }
            dgNamestaj.CanUserSortColumns = false;
            dgNamestaj.CanUserAddRows     = false;
            dgNamestaj.CanUserDeleteRows  = false;
            dgZaAkciju.CanUserSortColumns = false;
            dgZaAkciju.CanUserAddRows     = false;
            dgZaAkciju.CanUserDeleteRows  = false;
            dgNamestaj.ItemsSource        = ListaNamestajaZaDG1;
            dgZaAkciju.ItemsSource        = ListaNAZaDG2;
            if (operacija == Operacija.DODAVANJE)
            {
                this.Title += " - Dodavanje";
            }
            else
            {
                this.Title += " - Izmena";
            }
        }
예제 #2
0
        private void SacuvajIzmene(object sender, RoutedEventArgs e)
        {
            if (ForceValidation() == true)
            {
                return;
            }
            switch (operacija)
            {
            case Operacija.DODAVANJE:
                string sifraNamestaja = "";
                if (namestaj.Naziv.Length >= 2)
                {
                    sifraNamestaja += namestaj.Naziv.Substring(0, 2);
                }
                sifraNamestaja += new Random().Next(1, 1000);
                sifraNamestaja += namestaj.TipNamestaja.Naziv.Substring(0, 2);
                namestaj.Sifra  = sifraNamestaja.ToUpper();
                NamestajDAO.Create(namestaj);
                break;

            case Operacija.IZMENA:
                NamestajDAO.Update(namestaj);
                break;
            }
            this.Close();
        }
예제 #3
0
        private void Potvrdi_click(object sender, RoutedEventArgs e)
        {
            if (cbTipNamestaja.SelectedItem == null)
            {
                MessageBox.Show("Morate izabrati tip namestaja", "Upozorenje", MessageBoxButton.OK, MessageBoxImage.Information);
            }
            if (ForceValidation() == true)
            {
                return;
            }

            else
            {
                this.DialogResult = true;

                if (operacija == Operacija.DODAVANJE)
                {
                    NamestajDAO.Create(namestaj);
                }
                else if (operacija == Operacija.IZMENA)
                {
                    NamestajDAO.Update(namestaj);
                }
                this.Close();
            }
        }
        private void Potvrdi(object sender, RoutedEventArgs e)
        {
            if (Provera() == true)
            {
                return;
            }
            this.DialogResult = true;
            if (cbTipNamestaja.SelectedItem != null)
            {
                if (tbNazivNamestaja.Text.Length > 1)
                {
                    namestaj.Sifra = tbNazivNamestaja.Text.Substring(0, 2).ToUpper() + tbKolicinaNamestaja.Text + cbTipNamestaja.Text.Substring(0, 2).ToUpper();
                }
                else
                {
                    namestaj.Sifra = tbNazivNamestaja.Text.Substring(0, 1).ToUpper() + tbKolicinaNamestaja.Text + cbTipNamestaja.Text.Substring(0, 2).ToUpper();
                }
            }
            var izabraniTip = (TipNamestaja)cbTipNamestaja.SelectedItem;

            if (operacija == Operacija.DODAVANJE)
            {
                NamestajDAO.DodavanjeNamestaja(namestaj);
            }
            else
            {
                NamestajDAO.IzmenaNamestaja(namestaj);
            }
            this.Close();
        }
예제 #5
0
        private void ProdajaWindow_Closed(object sender, EventArgs e)
        {
            var listaNamestaja = Projekat.Instance.Namestaji;

            Projekat.Instance.Namestaji.Clear();
            NamestajDAO.Load();
            this.Close();
        }
예제 #6
0
        private void Odustani_click(object sender, RoutedEventArgs e)
        {
            var listaNamestaja = Projekat.Instance.Namestaji;

            Projekat.Instance.Namestaji.Clear();
            NamestajDAO.Load();
            this.Close();
        }
예제 #7
0
 private Projekat()
 {
     Namestaj      = NamestajDAO.SavNamestaj();
     TipNamestaja  = TipNamestajaDAO.SviTipovi();
     Akcije        = AkcijaDAO.SveAkcije();
     Korisnici     = KorisnikDAO.SviKorisnici();
     DodatneUsluge = UslugeDAO.SveUsluge();
     Prodaja       = ProdajaDAO.SveProdaje();
     Salon         = SalonDAO.PrikazPodataka();
 }
예제 #8
0
        private void IzbaciIzAkcije(object sender, RoutedEventArgs e)
        {
            var tempNA = (NaAkciji)dgZaAkciju.SelectedItem;

            ListaNAZaDG2.Remove(tempNA);
            var tempN = NamestajDAO.GetById(tempNA.IdNamestaja);

            if (tempN.Obrisan != true)
            {
                ListaNamestajaZaDG1.Add(tempN);
            }
        }
예제 #9
0
        public StavkaWindow(ProdajaNamestaj stavka, int akcijaId, Parametar parametar)
        {
            InitializeComponent();

            this.stavka    = stavka;
            this.parametar = parametar;
            this.akcijaId  = akcijaId;

            if (parametar == Parametar.DODATNAUSLUGA)
            {
                dataGridNamestaj.Visibility                   = Visibility.Collapsed;
                dgDodatnaUsluga.AutoGenerateColumns           = false;
                dgDodatnaUsluga.IsSynchronizedWithCurrentItem = true;
                dgDodatnaUsluga.DataContext                   = this;
                viewd        = CollectionViewSource.GetDefaultView(Projekat.Instance.DodatneUsluge);
                viewd.Filter = DodatnaUslugaFilter;
                dgDodatnaUsluga.ItemsSource = viewd;

                tbKolicina.Visibility = Visibility.Collapsed;
                lbKolicina.Visibility = Visibility.Collapsed;
                tbPopust.Visibility   = Visibility.Collapsed;
            }
            else
            {
                dgDodatnaUsluga.Visibility                     = Visibility.Collapsed;
                dataGridNamestaj.AutoGenerateColumns           = false;
                dataGridNamestaj.IsSynchronizedWithCurrentItem = true;
                dataGridNamestaj.DataContext                   = this;
                if (parametar == Parametar.PRODAJA)
                {
                    viewn        = CollectionViewSource.GetDefaultView(Projekat.Instance.Namestaji);
                    viewn.Filter = NamestajFilter;
                    dataGridNamestaj.ItemsSource = viewn;
                    tbKolicina.DataContext       = stavka;
                    tbPopust.Visibility          = Visibility.Collapsed;
                }
                else if (parametar == Parametar.AKCIJA)
                {
                    if (namestajNotInAkcija.Count == 0)
                    {
                        MessageBox.Show("Nema dostupnih namestaja za akciju", "Upozorenje", MessageBoxButton.OK, MessageBoxImage.Information);
                    }
                    namestajNotInAkcija = NamestajDAO.LoadNamestajNotInAkcija();
                    viewn = CollectionViewSource.GetDefaultView(namestajNotInAkcija);
                    dataGridNamestaj.ItemsSource = viewn;
                    tbKolicina.Visibility        = Visibility.Collapsed;
                    tbPopust.DataContext         = naAkciji;
                    tbPopust.Visibility          = Visibility.Visible;
                    lbKolicina.Content           = "Popust";
                }
            }
        }
예제 #10
0
 private Projekat()
 {
     TipoviNamestaja = TipNamestajaDAO.GetAll();
     Namestaji       = NamestajDAO.GetAll();
     ProdateDU       = ProdataDodatnaUslugaDAO.GetAll();
     Salon           = SalonDAO.GetAll();
     Korisnici       = KorisnikDAO.GetAll();
     NaAkciji        = NaAkcijiDAO.GetAll();
     JediniceProdaje = JedinicaProdajeDAO.GetAll();
     DodatneUsluge   = DodatnaUslugaDAO.GetAll();
     Prodaja         = ProdajaDAO.GetAll();
     Akcija          = AkcijaDAO.GetAll();
 }
예제 #11
0
 public void LoadTestData()
 {
     SalonDAO.Load();
     TipNamestajaDAO.Load();
     AkcijaDAO.Load();
     NaAkcijiDAO.Load();
     DodatnaUslugaDAO.Load();
     KorisnikDAO.Load();
     NamestajDAO.Load();
     ProdajaDAO.Load();
     ProdajaDodatnaUslugaDAO.Load();
     ProdajaNamestajDAO.Load();
 }
예제 #12
0
        private void Pretrazi(object sender, RoutedEventArgs e)
        {
            switch (TrenutnoAktivno)
            {
            case "Namestaj":
                var unetoN = tbPretraga.Text;
                view = CollectionViewSource.GetDefaultView(NamestajDAO.PretraziNamestaj(unetoN));
                dgPrikaz.ItemsSource = view;
                break;

            case "TipoviNamestaja":
                string unetoT = tbPretraga.Text.Trim();
                view = CollectionViewSource.GetDefaultView(TipNamestajaDAO.PretraziTipove(unetoT));
                dgPrikaz.ItemsSource = view;
                break;

            case "DodatneUsluge":
                string unetoU = tbPretraga.Text.Trim();
                view = CollectionViewSource.GetDefaultView(UslugeDAO.PretraziUsluge(unetoU));
                dgPrikaz.ItemsSource = view;
                break;

            case "Korisnici":
                string unetoK = tbPretraga.Text.Trim();
                view = CollectionViewSource.GetDefaultView(KorisnikDAO.PretragaKorisnika(unetoK));
                dgPrikaz.ItemsSource = view;
                break;

            case "Akcije":
                string unetoA = tbPretraga.Text.Trim();
                view = CollectionViewSource.GetDefaultView(AkcijaDAO.PretraziAkcije(unetoA));
                dgPrikaz.ItemsSource = view;
                break;

            case "Prodaja":
                string unetoP = tbPretraga.Text.Trim();
                view = CollectionViewSource.GetDefaultView(ProdajaDAO.PretraziProdaju(unetoP));
                dgPrikaz.ItemsSource = view;
                break;

            default:
                break;
            }
        }
예제 #13
0
        private void Brisanje(object sender, RoutedEventArgs e)
        {
            switch (TrenutnoAktivno)
            {
            case "Namestaj":
                var      list             = Projekat.Instance.Namestaj;
                Namestaj namestajBrisanje = dgPrikaz.SelectedItem as Namestaj;
                if (MessageBox.Show("Da li ste sigurni?", "Potvrda", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes)
                {
                    namestajBrisanje.Obrisan = true;
                    NamestajDAO.BrisanjeNamestaja(namestajBrisanje);
                }
                view.Refresh();
                break;

            case "TipoviNamestaja":
                var          lista = Projekat.Instance.TipNamestaja;
                TipNamestaja tip   = dgPrikaz.SelectedItem as TipNamestaja;
                if (MessageBox.Show("Da li ste sigurni?", "Potvrda", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes)
                {
                    tip.Obrisan = true;
                    TipNamestajaDAO.BrisanjeTipa(tip);
                }
                view.Refresh();
                break;

            case "DodatneUsluge":
                DodatnaUsluga uslugaBrisanje = dgPrikaz.SelectedItem as DodatnaUsluga;
                if (MessageBox.Show("Da li ste sigurni?", "Potvrda", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes)
                {
                    uslugaBrisanje.Obrisan = true;
                    UslugeDAO.BrisanjeUsluge(uslugaBrisanje);
                }
                view.Refresh();
                break;

            case "Korisnici":
                var listaKorisnika   = Projekat.Instance.Korisnici;
                var korisnikBrisanje = dgPrikaz.SelectedItem as Korisnik;
                if (MessageBox.Show("Da li ste sigurni?", "Potvrda", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes)
                {
                    korisnikBrisanje.Obrisan = true;
                    KorisnikDAO.BrisanjeKorisnika(korisnikBrisanje);
                }
                view.Refresh();
                break;

            case "Akcije":
                var    listaAkcija    = Projekat.Instance.Akcije;
                Akcija akcijaBrisanje = dgPrikaz.SelectedItem as Akcija;
                if (MessageBox.Show("Da li ste sigurni?", "Potvrda", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes)
                {
                    akcijaBrisanje.Obrisan = true;
                    AkcijaDAO.BrisanjeAkcije(akcijaBrisanje);
                }
                view.Refresh();
                break;

            default:
                break;
            }
        }
예제 #14
0
        private void Pretrazi_Click(object sender, RoutedEventArgs e)
        {
            switch (parametar)
            {
            case Parametar.Namestaj:
                if (cbPretrazi.SelectedIndex == 0)
                {
                    var sort = cbSortiraj.SelectedItem;
                    viewn = CollectionViewSource.GetDefaultView(NamestajDAO.FindSort(tbPretrazi.Text, NamestajDAO.TipPretrage.Naziv, cbSortiraj.SelectedIndex));
                    dataGridNamestaj.ItemsSource = viewn;
                }
                else if (cbPretrazi.SelectedIndex == 1)
                {
                    viewn = CollectionViewSource.GetDefaultView(NamestajDAO.FindSort(tbPretrazi.Text, NamestajDAO.TipPretrage.TipNamestaja, cbSortiraj.SelectedIndex));
                    dataGridNamestaj.ItemsSource = viewn;
                }
                else if (cbPretrazi.SelectedIndex == 2)
                {
                    viewn = CollectionViewSource.GetDefaultView(NamestajDAO.FindSort(tbPretrazi.Text, NamestajDAO.TipPretrage.Sifra, cbSortiraj.SelectedIndex));
                    dataGridNamestaj.ItemsSource = viewn;
                }
                break;

            case Parametar.TipNamestaja:
                viewt = CollectionViewSource.GetDefaultView(TipNamestajaDAO.FindSort(tbPretrazi.Text, cbSortiraj.SelectedIndex));
                dataGridTipNamestaja.ItemsSource = viewt;
                break;

            case Parametar.DodatnaUsluga:
                viewd = CollectionViewSource.GetDefaultView(DodatnaUslugaDAO.FindSort(tbPretrazi.Text, cbSortiraj.SelectedIndex));
                dataGridDodatnaUsluga.ItemsSource = viewd;
                break;

            case Parametar.Akcija:
                if (cbPretrazi.SelectedIndex == 0)
                {
                    viewa = CollectionViewSource.GetDefaultView(AkcijaDAO.FindSort("", AkcijaDAO.TipPretrage.DatumPocetka, dpPretrazi.SelectedDate, cbSortiraj.SelectedIndex));
                    dataGridAkcija.ItemsSource = viewa;
                }
                else if (cbPretrazi.SelectedIndex == 1)
                {
                    viewa = CollectionViewSource.GetDefaultView(AkcijaDAO.FindSort("", AkcijaDAO.TipPretrage.DatumZavrsetka, dpPretrazi.SelectedDate, cbSortiraj.SelectedIndex));
                    dataGridAkcija.ItemsSource = viewa;
                }
                else if (cbPretrazi.SelectedIndex == 2)
                {
                    viewa = CollectionViewSource.GetDefaultView(AkcijaDAO.FindSort(tbPretrazi.Text, AkcijaDAO.TipPretrage.Naziv, null, cbSortiraj.SelectedIndex));
                    dataGridAkcija.ItemsSource = viewa;
                }
                else if (cbPretrazi.SelectedIndex == 3)
                {
                    viewa = CollectionViewSource.GetDefaultView(AkcijaDAO.FindSort(tbPretrazi.Text, AkcijaDAO.TipPretrage.Namestaji, null, cbSortiraj.SelectedIndex));
                    dataGridAkcija.ItemsSource = viewa;
                }
                break;

            case Parametar.Korisnik:
                if (cbPretrazi.SelectedIndex == 0)
                {
                    viewk = CollectionViewSource.GetDefaultView(KorisnikDAO.FindSort(tbPretrazi.Text, KorisnikDAO.TipPretrage.Ime, cbSortiraj.SelectedIndex));
                    dataGridKorisnik.ItemsSource = viewk;
                }
                else if (cbPretrazi.SelectedIndex == 1)
                {
                    viewk = CollectionViewSource.GetDefaultView(KorisnikDAO.FindSort(tbPretrazi.Text, KorisnikDAO.TipPretrage.Prezime, cbSortiraj.SelectedIndex));
                    dataGridKorisnik.ItemsSource = viewk;
                }
                else if (cbPretrazi.SelectedIndex == 2)
                {
                    viewk = CollectionViewSource.GetDefaultView(KorisnikDAO.FindSort(tbPretrazi.Text, KorisnikDAO.TipPretrage.KorisnickoIme, cbSortiraj.SelectedIndex));
                    dataGridKorisnik.ItemsSource = viewk;
                }
                break;

            case Parametar.Prodaja:
                if (cbPretrazi.SelectedIndex == 0)
                {
                    viewp = CollectionViewSource.GetDefaultView(ProdajaDAO.FindSort("", ProdajaDAO.TipPretrage.Kupac, null, cbSortiraj.SelectedIndex));
                    dataGridProdaja.ItemsSource = viewp;
                }
                else if (cbPretrazi.SelectedIndex == 1)
                {
                    viewp = CollectionViewSource.GetDefaultView(ProdajaDAO.FindSort("", ProdajaDAO.TipPretrage.Prodavac, null, cbSortiraj.SelectedIndex));
                    dataGridProdaja.ItemsSource = viewp;
                }
                else if (cbPretrazi.SelectedIndex == 2)
                {
                    viewp = CollectionViewSource.GetDefaultView(ProdajaDAO.FindSort(tbPretrazi.Text, ProdajaDAO.TipPretrage.BrRacuna, null, cbSortiraj.SelectedIndex));
                    dataGridProdaja.ItemsSource = viewp;
                }
                else if (cbPretrazi.SelectedIndex == 3)
                {
                    viewa = CollectionViewSource.GetDefaultView(ProdajaDAO.FindSort(tbPretrazi.Text, ProdajaDAO.TipPretrage.ProdatiNamestaj, null, cbSortiraj.SelectedIndex));
                    dataGridProdaja.ItemsSource = viewp;
                }
                else if (cbPretrazi.SelectedIndex == 4)
                {
                    viewa = CollectionViewSource.GetDefaultView(ProdajaDAO.FindSort(tbPretrazi.Text, ProdajaDAO.TipPretrage.DatumProdaje, dpPretrazi.SelectedDate, cbSortiraj.SelectedIndex));
                    dataGridProdaja.ItemsSource = viewp;
                }
                break;
            }
        }
예제 #15
0
        private void Obrisi_click(object sender, RoutedEventArgs e)
        {
            switch (parametar)

            {
            case Parametar.Namestaj:
                var izabraniNamestaj = (Namestaj)viewn.CurrentItem;
                var listaNamestaja   = Projekat.Instance.Namestaji;
                if (MessageBox.Show("Da li ste sigurni da zelite da obrisete namestaj: " + izabraniNamestaj.Naziv + " ?", "Obrisi namestaj", MessageBoxButton.YesNo, MessageBoxImage.Information) == MessageBoxResult.Yes)
                {
                    NamestajDAO.Delete(izabraniNamestaj);
                    NaAkcijiDAO.Delete(null, TipBrisanja.PoNamestajId, 0, izabraniNamestaj.Id);
                }
                break;

            case Parametar.TipNamestaja:
                var izabraniTipNamestaja = viewt.CurrentItem as TipNamestaja;
                var listaTipNamestaja    = Projekat.Instance.TipoviNamestaja;
                var listaNamestajaa      = Projekat.Instance.Namestaji;
                if (izabraniTipNamestaja.Id == 1)
                {
                    MessageBox.Show("Ne mozete obrisati: " + izabraniTipNamestaja.Naziv + " ?", "Upozorenje", MessageBoxButton.OK, MessageBoxImage.Information);
                }
                else
                {
                    if (MessageBox.Show("Da li ste sigurni da zelite da obrisete tip namestaja: " + izabraniTipNamestaja.Naziv + " ?", "Obrisi tip namestaja", MessageBoxButton.YesNo, MessageBoxImage.Information) == MessageBoxResult.Yes)
                    {
                        TipNamestajaDAO.Delete(izabraniTipNamestaja);
                    }
                }
                break;


            case Parametar.Akcija:
                var izabranaAkcija = (Akcija)viewa.CurrentItem;
                var listaAkcija    = Projekat.Instance.Akcije;
                if (MessageBox.Show("Da li ste sigurni da zelite da obrisete akciju: " + izabranaAkcija.Naziv + " ?", "Obrisi akciju", MessageBoxButton.YesNo, MessageBoxImage.Information) == MessageBoxResult.Yes)
                {
                    AkcijaDAO.Delete(izabranaAkcija);
                }
                break;


            case Parametar.DodatnaUsluga:
                var izabranaDodatnaUsluga = (DodatnaUsluga)viewd.CurrentItem;
                var listaDodatnihUsluga   = Projekat.Instance.DodatneUsluge;
                if (MessageBox.Show("Da li ste sigurni da zelite da obrisete dodatn uslugu: " + izabranaDodatnaUsluga.Naziv + " ?", "Obrisi dodatnu uslug", MessageBoxButton.YesNo, MessageBoxImage.Information) == MessageBoxResult.Yes)
                {
                    DodatnaUslugaDAO.Delete(izabranaDodatnaUsluga);
                }
                break;


            case Parametar.Korisnik:
                var izabraniKorisnik = (Korisnik)viewk.CurrentItem;
                var listaKorisnika   = Projekat.Instance.Korisnici;
                if (izabraniKorisnik.Id == korisnik.Id)
                {
                    if (MessageBox.Show("Da li ste sigurni da zelite da obrisete svoj nalog?", "Obrisi korisnika", MessageBoxButton.YesNo, MessageBoxImage.Information) == MessageBoxResult.Yes)
                    {
                        KorisnikDAO.Delete(izabraniKorisnik);
                        this.Close();
                    }
                }
                if (MessageBox.Show("Da li ste sigurni da zelite da obrisete korisnika: " + izabraniKorisnik.Ime + " " + izabraniKorisnik.Prezime + " ?", "Obrisi korisnika", MessageBoxButton.YesNo, MessageBoxImage.Information) == MessageBoxResult.Yes)
                {
                    KorisnikDAO.Delete(izabraniKorisnik);
                }
                break;

            case Parametar.Salon:
                var izabraniSalon = (Salon)views.CurrentItem;
                var listaSalona   = Projekat.Instance.Salon;
                if (MessageBox.Show("Da li ste sigurni da zelite da obrisete salon: " + izabraniSalon.Naziv + " ?", "Obrisi salon", MessageBoxButton.YesNo, MessageBoxImage.Information) == MessageBoxResult.Yes)
                {
                    SalonDAO.Delete(izabraniSalon);
                }
                break;

            case Parametar.Prodaja:
                var izabranaProdaja = (Prodaja)viewp.CurrentItem;
                var listaProdaja    = Projekat.Instance.Prodaja;
                if (MessageBox.Show("Da li ste sigurni da zelite da obrisete prodaju: " + izabranaProdaja.BrRacuna + " ?", "Obrisi prodaju", MessageBoxButton.YesNo, MessageBoxImage.Information) == MessageBoxResult.Yes)
                {
                    foreach (var prodaja in listaProdaja)
                    {
                        if (izabranaProdaja.Id == prodaja.Id)
                        {
                            prodaja.Obrisan = true;
                            break;
                        }
                    }
                }
                break;
            }

            PopuniDataGrid(parametar);
        }
예제 #16
0
        private void btnProdajFinal_Click(object sender, RoutedEventArgs e)
        {
            if (ForceValidation() == true)
            {
                return;
            }
            if (Korpa.Count() != 0)
            {
                bool postojiJP = false;
                foreach (var item in Korpa)
                {
                    if (item.GetType() == typeof(JedinicaProdaje))
                    {
                        postojiJP = true;
                    }
                }

                if (postojiJP == false)
                {
                    ErrorMessagePrint("Ne mozete prodati samo dodatne usluge.", "Upozorenje");
                    return;
                }
            }
            else
            {
                ErrorMessagePrint("Korpa je prazna.", "Upozorenje");
                return;
            }
            switch (operacija)
            {
            case Operacija.DODAVANJE:
                prodajaNamestaja.BrRacuna = (new Random().Next(1, int.MaxValue)).ToString();
                var tempProdaja = ProdajaDAO.Create(prodajaNamestaja);
                foreach (var item in Korpa)
                {
                    if (item.GetType() == typeof(JedinicaProdaje))
                    {
                        var tempItem = (JedinicaProdaje)item;
                        foreach (Namestaj namestaj in Projekat.Instance.Namestaji)
                        {
                            if (namestaj.Id == tempItem.NamestajId)
                            {
                                NamestajDAO.Update(namestaj);
                                break;
                            }
                        }
                        tempItem.ProdajaId = tempProdaja.Id;
                        JedinicaProdajeDAO.Create(tempItem);
                    }
                    else
                    {
                        var tempItem = (ProdataDU)item;
                        tempItem.ProdajaId = tempProdaja.Id;
                        ProdataDodatnaUslugaDAO.Create(tempItem);
                    }
                }
                prodajaUspesna = true;
                this.Close();
                break;

            case Operacija.IZMENA:
                ProdajaDAO.Update(prodajaNamestaja);
                var listaJPZaBrisanje = JedinicaProdajeDAO.GetAllForId(prodajaNamestaja.Id);
                var listaDUZaBrisanje = ProdataDodatnaUslugaDAO.GetAllForId(prodajaNamestaja.Id);
                foreach (var item in Korpa)
                {
                    ////////////////
                    if (item.GetType() == typeof(JedinicaProdaje))
                    {
                        var  jpFromKorpa = (JedinicaProdaje)item;
                        bool postoji     = false;
                        foreach (var jpFromProdajaEdit in JedinicaProdajeDAO.GetAllForId(prodajaNamestaja.Id))
                        {
                            if (jpFromProdajaEdit.Id == jpFromKorpa.Id)
                            {
                                postoji = true;
                                listaJPZaBrisanje.ToList().ForEach(x => { if (x.Id == jpFromProdajaEdit.Id)
                                                                          {
                                                                              listaJPZaBrisanje.Remove(x);
                                                                          }
                                                                          return; });
                                //izbaci ga iz liste zato sto je vec postojao u prodaji. ALI PROVERI KOLICINU, ako je promenjena updejtuj namestaj.
                                if (jpFromKorpa.Kolicina != jpFromProdajaEdit.Kolicina)
                                {
                                    JedinicaProdajeDAO.Update(jpFromKorpa);
                                    NamestajDAO.Update(Namestaj.GetById(jpFromKorpa.NamestajId));
                                }
                                break;
                            }
                        }
                        if (postoji == false)
                        {
                            jpFromKorpa.ProdajaId = prodajaNamestaja.Id;
                            JedinicaProdajeDAO.Create(jpFromKorpa);
                            NamestajDAO.Update(Namestaj.GetById(jpFromKorpa.NamestajId));
                        }
                    }    ///////////
                    else
                    {
                        var  duFromKorpa = (ProdataDU)item;
                        bool postoji     = false;
                        foreach (ProdataDU duFromProdajaEdit in ProdataDodatnaUslugaDAO.GetAllForId(prodajaNamestaja.Id))
                        {
                            if (duFromProdajaEdit.Id == duFromKorpa.Id)
                            {
                                postoji = true;
                                listaDUZaBrisanje.ToList().ForEach(x => { if (x.Id == duFromProdajaEdit.Id)
                                                                          {
                                                                              listaDUZaBrisanje.Remove(x);
                                                                          }
                                                                          return; });
                                break;
                            }
                        }
                        if (postoji == false)
                        {
                            duFromKorpa.ProdajaId = prodajaNamestaja.Id;
                            ProdataDodatnaUslugaDAO.Create(duFromKorpa);
                        }
                    }
                }
                foreach (JedinicaProdaje jpZaObrisati in listaJPZaBrisanje)
                {
                    JedinicaProdajeDAO.Delete(jpZaObrisati);
                    var tempNamestaj = Namestaj.GetById(jpZaObrisati.NamestajId);
                    tempNamestaj.BrKomada += jpZaObrisati.Kolicina;
                    NamestajDAO.Update(tempNamestaj);
                }
                foreach (ProdataDU duZaObrisati in listaDUZaBrisanje)
                {
                    ProdataDodatnaUslugaDAO.Delete(duZaObrisati);
                }
                prodajaUspesna = true;
                this.Close();
                break;
            }
        }
예제 #17
0
        public void SearchAndOrSort(object sender, RoutedEventArgs e)
        {
            DoSearch doSearch;
            DateTime datumZaPretragu = DateTime.Today;

            if (cbDatum.IsChecked == true)
            {
                doSearch = DoSearch.Date;
                try
                {
                    datumZaPretragu = (DateTime)dpParametar.SelectedDate;
                }
                catch
                {
                    ErrorMessagePrint("Neodgovarajuci format datuma.\nPokusajte DD/MM/YYYY format.", "Upozorenje");
                    return;
                }
            }
            else
            {
                if (tbParametar.Text == "")
                {
                    doSearch = DoSearch.No;
                }
                else
                {
                    doSearch = DoSearch.Other;
                }
            }
            switch (izabranaOpcija)
            {
            case Opcija.NAMESTAJ:
                if (cbZaSort.SelectedValue == null)
                {
                    view = CollectionViewSource.GetDefaultView(NamestajDAO.SearchAndOrSort(doSearch, tbParametar.Text, NamestajDAO.SortBy.Nesortirano));
                }
                else
                {
                    view = CollectionViewSource.GetDefaultView(NamestajDAO.SearchAndOrSort(doSearch, tbParametar.Text, (NamestajDAO.SortBy)cbZaSort.SelectedValue));
                }
                view.Filter          = ObrisanFilter;
                dgTabela.ItemsSource = view;
                break;

            case Opcija.TIPNAMESTAJA:
                if (cbZaSort.SelectedValue == null)
                {
                    view = CollectionViewSource.GetDefaultView(TipNamestajaDAO.SearchAndOrSort(doSearch, tbParametar.Text, TipNamestajaDAO.SortBy.Nesortirano));
                }
                else
                {
                    view = CollectionViewSource.GetDefaultView(TipNamestajaDAO.SearchAndOrSort(doSearch, tbParametar.Text, (TipNamestajaDAO.SortBy)cbZaSort.SelectedValue));
                }
                view.Filter          = ObrisanFilter;
                dgTabela.ItemsSource = view;
                break;

            case Opcija.KORISNIK:
                if (cbZaSort.SelectedValue == null)
                {
                    view = CollectionViewSource.GetDefaultView(KorisnikDAO.SearchAndOrSort(doSearch, tbParametar.Text, KorisnikDAO.SortBy.Nesortirano));
                }
                else
                {
                    view = CollectionViewSource.GetDefaultView(KorisnikDAO.SearchAndOrSort(doSearch, tbParametar.Text, (KorisnikDAO.SortBy)cbZaSort.SelectedValue));
                }
                view.Filter          = ObrisanFilter;
                dgTabela.ItemsSource = view;
                break;

            case Opcija.DODATNAUSLUGA:
                if (cbZaSort.SelectedValue == null)
                {
                    view = CollectionViewSource.GetDefaultView(DodatnaUslugaDAO.SearchAndOrSort(doSearch, tbParametar.Text, DodatnaUslugaDAO.SortBy.Nesortirano));
                }
                else
                {
                    view = CollectionViewSource.GetDefaultView(DodatnaUslugaDAO.SearchAndOrSort(doSearch, tbParametar.Text, (DodatnaUslugaDAO.SortBy)cbZaSort.SelectedValue));
                }
                view.Filter          = ObrisanFilter;
                dgTabela.ItemsSource = view;
                break;

            case Opcija.AKCIJA:
                if (cbZaSort.SelectedValue == null)
                {
                    view = CollectionViewSource.GetDefaultView(AkcijaDAO.SearchAndOrSort(doSearch, tbParametar.Text, datumZaPretragu, AkcijaDAO.SortBy.Nesortirano));
                }
                else
                {
                    view = CollectionViewSource.GetDefaultView(AkcijaDAO.SearchAndOrSort(doSearch, tbParametar.Text, datumZaPretragu, (AkcijaDAO.SortBy)cbZaSort.SelectedValue));
                }
                view.Filter          = ObrisanFilter;
                dgTabela.ItemsSource = view;
                break;

            case Opcija.PRODAJA:
                if (cbZaSort.SelectedValue == null)
                {
                    view = CollectionViewSource.GetDefaultView(ProdajaDAO.SearchAndOrSort(doSearch, tbParametar.Text, datumZaPretragu, ProdajaDAO.SortBy.Nesortirano));
                }
                else
                {
                    view = CollectionViewSource.GetDefaultView(ProdajaDAO.SearchAndOrSort(doSearch, tbParametar.Text, datumZaPretragu, (ProdajaDAO.SortBy)cbZaSort.SelectedValue));
                }
                view.Filter          = ObrisanFilter;
                dgTabela.ItemsSource = view;
                break;
            }
            if (doSearch != DoSearch.No)
            {
                Pretrazeno = true;
            }
            if (cbZaSort.SelectedValue != null)
            {
                Sortirano = true;
            }
        }
예제 #18
0
        private void ObrisiItem(object sender, RoutedEventArgs e)
        {
            if (dgTabela.SelectedItem == null)
            {
                ErrorMessagePrint("Niste nista izabrali. ", "Upozorenje");
                return;
            }
            switch (izabranaOpcija)
            {
            case Opcija.NAMESTAJ:
                var izabraniNamestaj = (Namestaj)dgTabela.SelectedItem;

                MessageBoxResult namestajMessage = MessageBox.Show("Da li ste sigurni da zelite da obrisete ovaj namestaj?", "Brisanje", MessageBoxButton.YesNo);
                if (namestajMessage == MessageBoxResult.Yes)
                {
                    NamestajDAO.Delete(izabraniNamestaj);
                }
                ;
                break;

            case Opcija.TIPNAMESTAJA:
                var izabraniTipNamestaja = (TipNamestaja)dgTabela.SelectedItem;
                if (izabraniTipNamestaja.Id == 1)
                {
                    MessageBoxResult poruka = MessageBox.Show("Ovaj tip se ne moze obrisati!", "Upozorenje", MessageBoxButton.OK);
                    return;
                }
                MessageBoxResult tipNamestajaMessage = MessageBox.Show("Da li ste sigurni da zelite da obrisete ovaj tip namestaja?", "Brisanje", MessageBoxButton.YesNo);
                if (tipNamestajaMessage == MessageBoxResult.Yes)
                {
                    var tempListaZaBrisanje = NamestajDAO.GetAllForTipId(izabraniTipNamestaja.Id);
                    foreach (var item in tempListaZaBrisanje)
                    {
                        item.TipNamestaja = TipNamestajaDAO.GetById(1);
                        NamestajDAO.Update(item);
                    }
                    TipNamestajaDAO.Delete(izabraniTipNamestaja);
                }
                ;
                break;

            case Opcija.KORISNIK:
                var izabraniKorisnik = (Korisnik)dgTabela.SelectedItem;

                MessageBoxResult korisnikMessage = MessageBox.Show("Da li ste sigurni da zelite da obrisete ovog korisnika?", "Brisanje", MessageBoxButton.YesNo);
                if (korisnikMessage == MessageBoxResult.Yes)
                {
                    KorisnikDAO.Delete(izabraniKorisnik);
                }
                ;
                break;

            case Opcija.AKCIJA:
                var izabranaAkcija = (Akcija)dgTabela.SelectedItem;

                MessageBoxResult akcijaMessage = MessageBox.Show("Da li ste sigurni da zelite da obrisete ovu akciju?", "Brisanje", MessageBoxButton.YesNo);
                if (akcijaMessage == MessageBoxResult.Yes)
                {
                    var listaZaBrisanje = NaAkcijiDAO.GetAllNAForActionId(izabranaAkcija.Id);
                    foreach (var item in listaZaBrisanje)
                    {
                        NaAkcijiDAO.Delete(item);
                    }
                    AkcijaDAO.Delete(izabranaAkcija);
                }
                ;
                break;

            case Opcija.DODATNAUSLUGA:
                var izabranaDodatnaUsluga = (DodatnaUsluga)dgTabela.SelectedItem;

                MessageBoxResult dodatnaUslugaMessage = MessageBox.Show("Da li ste sigurni da zelite da obrisete ovu dodatnu uslugu?", "Brisanje", MessageBoxButton.YesNo);
                if (dodatnaUslugaMessage == MessageBoxResult.Yes)
                {
                    DodatnaUslugaDAO.Delete(izabranaDodatnaUsluga);
                }
                ;
                break;

            case Opcija.PRODAJA:
                var izabranaProdaja = (ProdajaNamestaja)dgTabela.SelectedItem;

                MessageBoxResult prodajaMessage = MessageBox.Show("Da li ste sigurni da zelite da obrisete ovu prodaju?", "Brisanje", MessageBoxButton.YesNo);
                if (prodajaMessage == MessageBoxResult.Yes)
                {
                    var listaZaBrisanje = JedinicaProdajeDAO.GetAllForId(izabranaProdaja.Id);
                    foreach (var item in listaZaBrisanje)
                    {
                        var tempNamestaj = NamestajDAO.GetById(item.NamestajId);
                        tempNamestaj.BrKomada += item.Kolicina;
                        NamestajDAO.Update(tempNamestaj);
                        JedinicaProdajeDAO.Delete(item);
                    }
                    ProdajaDAO.Delete(izabranaProdaja);
                }
                ;
                break;
            }
            view.Refresh();
        }