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