コード例 #1
0
        private void DajSve()
        {
            LavAutoDataContext = new Baza.LavAutoDataContext(AutoServis.Properties.Settings.Default.KonekcioniString);

            if (LavAutoDataContext.DatabaseExists())
            {
                IQueryable<Baza.NacinZahtevaZaPonudu> _upit = (from p in LavAutoDataContext.NacinZahtevaZaPonudus
                                              select p).OrderBy(w => w.Naziv);
                try
                {

                    ObservableCollection<Baza.NacinZahtevaZaPonudu> _lista = new ObservableCollection<Baza.NacinZahtevaZaPonudu>(_upit.ToList());

                    listBoxLista.ItemsSource = _lista;

                    //TODO...Resi ovo!!!
                    //Kad promenim vrednost u bazi i pozovem ovu metodu jednostavno nece drugacije da osvezi podatke u detaljima
                    //LavAutoDataContext.Refresh(RefreshMode.OverwriteCurrentValues, (ObservableCollection<Baza.NacinZahtevaZaPonudu>)listBoxLista.ItemsSource);

                    //UpdateBindingTarget();
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message, "Greška pri čitanju podataka", MessageBoxButton.OK, MessageBoxImage.Error);
                }
            }
            else
            {
                MessageBox.Show("Neuspešna konekcija na bazu", "Greška", MessageBoxButton.OK, MessageBoxImage.Error);
            }

            if (!listBoxLista.Items.Count.Equals(0))
            {
                listBoxLista.SelectedIndex = 0;
                UStanje(App.Stanje.Detaljno);
            }
            else
            {
                UStanje(App.Stanje.Osnovno);
            }

        }
コード例 #2
0
        private void buttonObrisi_Click(object sender, RoutedEventArgs e)
        {
            if (MessageBox.Show("Obriši?", "Potvrdi brisanje", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes)
            {
                LavAutoDataContext.NacinZahtevaZaPonudus.DeleteOnSubmit((Baza.NacinZahtevaZaPonudu)gridDetaljno.DataContext);

                try
                {
                    LavAutoDataContext.SubmitChanges();

                }
                catch (Exception ex)
                {
                    //TODO ovde imam problem
                    //ako pukne imam slog u nizu Deleted
                    //da ispraznim (ChangeSet changeSet = LavAutoDataContext.GetChangeSet();. Kako uopste moze da se otkaze unos, izmena ili brisanje
                    LavAutoDataContext = new Baza.LavAutoDataContext(AutoServis.Properties.Settings.Default.KonekcioniString);

                    MessageBox.Show(ex.Message, "Greška pri brisanju", MessageBoxButton.OK, MessageBoxImage.Error);
                    return;
                }
                DajSve();
            }
        }
コード例 #3
0
ファイル: RadniNalog.xaml.cs プロジェクト: vodolijabg/LS
        private void DajSve()
        {

            LavAutoDataContext = new Baza.LavAutoDataContext(AutoServis.Properties.Settings.Default.KonekcioniString);

            DajListuPoreskaStopa();

            if (LavAutoDataContext.DatabaseExists())
            {
                IQueryable<Baza.Zaglavlje> _upit;
                IQueryable<Baza.Zaglavlje> _trenutni;
                IQueryable<Baza.Zaglavlje> _vrati;

                #region Upit

                if ((bool)radioButtonFizickoLice.IsChecked)
                {
                    //ako je definisan kriterijum pretrage
                    if (DefinisanKriterijumPretrage())
                    {
                        if ((bool)radioButtonPretragaID.IsChecked)
                        {
                            _upit = (from p in LavAutoDataContext.Zaglavljes
                                     where p.Zaglavlje_ID.ToString().Contains(textBoxPretragaID.Text)
                                     && p.ServisnaKnjizica.FizickoLice_ID != null
                                     && p.Status != Convert.ToChar("D")
                                     && p.RadniNalog.Status != Convert.ToChar("D")
                                     //orderby p.Zaglavlje_ID descending
                                     select p);
                        }
                        else
                        {
                            Baza.FizickoLice _uslov = (Baza.FizickoLice)textBoxFizickoLicePretraga.Tag;

                            _upit = (from p in LavAutoDataContext.Zaglavljes
                                     where p.ServisnaKnjizica.FizickoLice_ID == _uslov.FizickoLice_ID
                                     && p.Status != Convert.ToChar("D")
                                     && p.RadniNalog.Status != Convert.ToChar("D")
                                     select p);
                        }
                    }
                    //ako nije definisan kriterijum pretrage prikazi samo trenutne
                    else
                    {
                        List<int> _trenutnoPrikazani = new List<int>();

                        foreach (var item in listBoxZaglavljeLista.Items)
                        {
                            Baza.Zaglavlje _item = (Baza.Zaglavlje)item;

                            _trenutnoPrikazani.Add(_item.Zaglavlje_ID);
                        }

                        _upit = (from p in LavAutoDataContext.Zaglavljes
                                 where _trenutnoPrikazani.Contains(p.Zaglavlje_ID)
                                 && p.ServisnaKnjizica.FizickoLice_ID != null
                                 && p.Status != Convert.ToChar("D")
                                     && p.RadniNalog.Status != Convert.ToChar("D")
                                 select p);
                    }
                }
                else //if ((bool)radioButtonPravnoLice.IsChecked)
                {
                    //ako je definisan kriterijum pretrage
                    if (DefinisanKriterijumPretrage())
                    {
                        if ((bool)radioButtonPretragaID.IsChecked)
                        {
                            _upit = (from p in LavAutoDataContext.Zaglavljes
                                     where p.Zaglavlje_ID.ToString().Contains(textBoxPretragaID.Text)
                                     && p.ServisnaKnjizica.PoslovniPartner_ID != null
                                     && p.Status != Convert.ToChar("D")
                                     && p.RadniNalog.Status != Convert.ToChar("D")
                                     select p);
                        }
                        else
                        {
                            Baza.PoslovniPartner _uslov = (Baza.PoslovniPartner)textBoxPoslovniPartnerPretraga.Tag;

                            _upit = (from p in LavAutoDataContext.Zaglavljes
                                     where p.ServisnaKnjizica.PoslovniPartner_ID == _uslov.PoslovniPartner_ID
                                     && p.Status != Convert.ToChar("D")
                                     && p.RadniNalog.Status != Convert.ToChar("D")
                                     select p);
                        }
                    }
                    //ako nije definisan kriterijum pretrage prikazi samo trenutne
                    else
                    {
                        List<int> _trenutnoPrikazani = new List<int>();

                        foreach (var item in listBoxZaglavljeLista.Items)
                        {
                            Baza.Zaglavlje _item = (Baza.Zaglavlje)item;

                            _trenutnoPrikazani.Add(_item.Zaglavlje_ID);
                        }

                        _upit = (from p in LavAutoDataContext.Zaglavljes
                                 where _trenutnoPrikazani.Contains(p.Zaglavlje_ID)
                                 && p.ServisnaKnjizica.PoslovniPartner_ID != null
                                 && p.Status != Convert.ToChar("D")
                                     && p.RadniNalog.Status != Convert.ToChar("D")
                                 select p);
                    }

                }

                //ako sam zavrsio unos ili izmenu prikazi ga bez obzira da li ispunjava kriterijum pretrage
                //if (StanjeTrenutnoZaglavlje.Equals(App.Stanje.Unos) || StanjeTrenutnoZaglavlje.Equals(App.Stanje.Izmena))
                //{

                //vrati trenutni bez obzira na kriterijum pretrage
                if (!tabItemPretraga.IsSelected)
                {
                    _trenutni = (from p in LavAutoDataContext.Zaglavljes
                                 where p.Zaglavlje_ID.ToString() == textBoxZaglavljeID.Text
                                 && p.Status != Convert.ToChar("D")
                                     && p.RadniNalog.Status != Convert.ToChar("D")
                                 select p);


                    _vrati = _trenutni.Union(_upit);
                }
                else
                {
                    _vrati = _upit;
                }
                #endregion

                try
                {

                    ObservableCollection<Baza.Zaglavlje> _lista = new ObservableCollection<Baza.Zaglavlje>(_vrati.ToList());

                    listBoxZaglavljeLista.ItemsSource = null;
                    listBoxZaglavljeLista.ItemsSource = _lista;

                    ICollectionView view = CollectionViewSource.GetDefaultView(listBoxZaglavljeLista.ItemsSource);
                    //view.GroupDescriptions.Add(new PropertyGroupDescription("Ime"));

                    view.SortDescriptions.Add(new SortDescription("Zaglavlje_ID", ListSortDirection.Descending));


                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message, "Greška pri čitanju podataka", MessageBoxButton.OK, MessageBoxImage.Error);
                }
            }
            else
            {
                MessageBox.Show("Neuspešna konekcija na bazu", "Greška", MessageBoxButton.OK, MessageBoxImage.Error);
            }

            if (!listBoxZaglavljeLista.Items.Count.Equals(0))
            {
                listBoxZaglavljeLista.SelectedIndex = 0;
                UStanjeZaglavlje(App.Stanje.Detaljno);

                if (!listBoxStavkaUslugaLista.Items.Count.Equals(0))
                {
                    listBoxStavkaUslugaLista.SelectedIndex = 0;
                    UStanjeStavka(App.Stanje.Detaljno);
                }
                else
                {
                    UStanjeStavka(App.Stanje.Osnovno);
                }
            }
            else
            {
                UStanjeZaglavlje(App.Stanje.Osnovno);
                UStanjeStavka(App.Stanje.NePostojiZaglavlje);
            }

        }
コード例 #4
0
ファイル: RadniNalog.xaml.cs プロジェクト: vodolijabg/LS
        //S
        private void buttonObrisiStavka_Click(object sender, RoutedEventArgs e)
        {
            if (MessageBox.Show("Obriši?", "Potvrdi brisanje", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes)
            {
                Baza.StavkaUsluga _trenutni = (Baza.StavkaUsluga)gridStavkaDetaljno.DataContext;

                try
                {
                    DateTime _vremePromene = DateTime.Now;
                    string _korisnickiNalog = LavAutoDataContext.DajKorisnickiNalog();

                    _trenutni.VremePromene = _vremePromene;
                    _trenutni.KorisnickiNalog = _korisnickiNalog;
                    _trenutni.Status = Convert.ToChar("D");

                    foreach (Baza.StavkaArtikal item in _trenutni.StavkaArtikals)
                    {
                        item.VremePromene = _vremePromene;
                        item.KorisnickiNalog = _korisnickiNalog;
                        item.Status = Convert.ToChar("D");
                    }

                    foreach (Baza.StavkaUslugaRadniRaspored item in _trenutni.StavkaUslugaRadniRasporeds)
                    {
                        item.VremePromene = _vremePromene;
                        item.KorisnickiNalog = _korisnickiNalog;
                        item.Status = Convert.ToChar("D");
                    }

                    LavAutoDataContext.SubmitChanges();

                }
                catch (Exception ex)
                {
                    //TODO ovde imam problem
                    //ako pukne imam slog u nizu Deleted
                    //da ispraznim (ChangeSet changeSet = LavAutoDataContext.GetChangeSet();. Kako uopste moze da se otkaze unos, izmena ili brisanje
                    LavAutoDataContext = new Baza.LavAutoDataContext(AutoServis.Properties.Settings.Default.KonekcioniString);

                    MessageBox.Show(ex.Message, "Greška pri brisanju", MessageBoxButton.OK, MessageBoxImage.Error);
                    return;
                }
                DajSve();
            }
        }
コード例 #5
0
ファイル: RadniNalog.xaml.cs プロジェクト: vodolijabg/LS
        //Z
        private void buttonObrisiZaglavlje_Click(object sender, RoutedEventArgs e)
        {
            if (MessageBox.Show("Obriši?", "Potvrdi brisanje", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes)
            {
                Baza.Zaglavlje _trenutni = (Baza.Zaglavlje)gridZaglavlje.DataContext;

                try
                {
                    _trenutni.VremePromene = DateTime.Now;
                    _trenutni.KorisnickiNalog = LavAutoDataContext.DajKorisnickiNalog();
                    _trenutni.Status = Convert.ToChar("D");

                    _trenutni.RadniNalog.VremePromene = DateTime.Now;
                    _trenutni.RadniNalog.KorisnickiNalog = LavAutoDataContext.DajKorisnickiNalog();
                    _trenutni.RadniNalog.Status = Convert.ToChar("D");

                    LavAutoDataContext.SubmitChanges();

                }
                catch (Exception ex)
                {
                    //TODO ovde imam problem
                    //ako pukne imam slog u nizu Deleted
                    //da ispraznim (ChangeSet changeSet = LavAutoDataContext.GetChangeSet();. Kako uopste moze da se otkaze unos, izmena ili brisanje
                    LavAutoDataContext = new Baza.LavAutoDataContext(AutoServis.Properties.Settings.Default.KonekcioniString);

                    MessageBox.Show(ex.Message, "Greška pri brisanju", MessageBoxButton.OK, MessageBoxImage.Error);
                    return;
                }
                DajSve();
            }
        }
コード例 #6
0
ファイル: RadniNalog.xaml.cs プロジェクト: vodolijabg/LS
        private void PageFunction_Loaded(object sender, RoutedEventArgs e)
        {
            //zato sto se kod navigacije ovaj dogadjaj uvek okida pa ne mogu da zadrzim trenutno stanje forme
            if (PrvoOtvaranjeStrane)
            {
                radioButtonFizickoLice.IsChecked = true;
                radioButton_Click(radioButtonFizickoLice, null);

                radioButtonPretragaID.IsChecked = true;
                radioButton_Click(radioButtonPretragaID, null);

                PrvoOtvaranjeStrane = false;

                LavAutoDataContext = new Baza.LavAutoDataContext(AutoServis.Properties.Settings.Default.KonekcioniString);

                ObservableCollection<Baza.Zaglavlje> _zaglavlje = new ObservableCollection<Baza.Zaglavlje>();
                listBoxZaglavljeLista.ItemsSource = _zaglavlje;

                UStanjeZaglavlje(App.Stanje.Osnovno);
                UStanjeStavka(App.Stanje.NePostojiZaglavlje);

                textBoxPretragaID.Focus();

            }
            else if ((tabItemZaglavlje.IsSelected) && (StanjeTrenutnoZaglavlje != App.Stanje.Izmena) && (StanjeTrenutnoZaglavlje != App.Stanje.Unos))
            {
                if (!listBoxZaglavljeLista.Items.Count.Equals(0))
                {
                    //da bude prikazan posle osvezavanja podataka
                    Baza.Zaglavlje _trenutni = (Baza.Zaglavlje)gridZaglavlje.DataContext;
                    IDTrenutniZaglavlje = _trenutni.Zaglavlje_ID;
                }

                DajSve();
                PrikaziTrenutniZaglavlje();
            }
            else if ((tabItemStavke.IsSelected) && (StanjeTrenutnoStavka != App.Stanje.Izmena) && (StanjeTrenutnoStavka != App.Stanje.Unos))
            {
                if (!listBoxStavkaUslugaLista.Items.Count.Equals(0))
                {
                    //da bude prikazan posle osvezavanja podataka
                    Baza.Zaglavlje _trenutnoZaglavlje = (Baza.Zaglavlje)gridZaglavlje.DataContext;
                    IDTrenutniZaglavlje = _trenutnoZaglavlje.Zaglavlje_ID;

                    Baza.StavkaUsluga _trenutnaStavka = (Baza.StavkaUsluga)gridStavkaDetaljno.DataContext;
                    IDTrenutniStavkaUsluga = _trenutnaStavka.StavkaUsluga_ID;

                }
                DajSve();

                PrikaziTrenutniZaglavlje();
                PrikaziTrenutniStavka();
            }

        }
コード例 #7
0
ファイル: Pocetna.xaml.cs プロジェクト: vodolijabg/LS
        private void Page_Loaded(object sender, RoutedEventArgs e)
        {
            //zato sto se kod navigacije ovaj dogadjaj uvek okida pa ne mogu da zadrzim trenutno stanje forme
            if (PrvoOtvaranjeStrane)
            {
                NavigationWindow _win = (NavigationWindow)Window.GetWindow(this);
                _win.WindowState = WindowState.Maximized;

                LavAutoDataContext = new Baza.LavAutoDataContext(AutoServis.Properties.Settings.Default.KonekcioniString);

                PrvoOtvaranjeStrane = false;
                UStanje(Stanje.Neutralno);
            }
        }