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); } }
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); } }