private void UcitajNalog() { if (dgPregled.Items.Count <= 0) { txtID.Text = ""; dtDatumOtvaranja.SelectedDate = null; dtDatumZatvaranja.SelectedDate = null; cmbVozilo.Text = ""; cmbZaposleni.Text = ""; tbTip.Text = ""; tbVlasnik.Text = ""; tbGodinaProizvodnje.Text = ""; tbGorivo.Text = ""; tbBrojSasije.Text = ""; tbSnagaMotora.Text = ""; return; } DataRowView red = (DataRowView)dgPregled.SelectedItems[0]; int id = Convert.ToInt32(red[0]); RadniNalog nalog = RadniNalog.UcitajNalog(id); cmbVozilo.SelectedValue = nalog.Vozilo.Id; cmbZaposleni.SelectedValue = nalog.Zaposleni.Id; txtID.Text = id.ToString(); dtDatumOtvaranja.SelectedDate = nalog.DatumOtvaranja; dtDatumZatvaranja.SelectedDate = nalog.DatumZatvaranja; tbTip.Text = $"Tip vozila: { nalog.Vozilo.TipVozila.NazivTipaVozila }"; tbVlasnik.Text = $"Vlasnik: { nalog.Vozilo.Vlasnik.ImeVlasnika } { nalog.Vozilo.Vlasnik.PrezimeVlasnika }"; tbGodinaProizvodnje.Text = $"Godina proizvodnje: { nalog.Vozilo.GodinaProizvodnje.ToString() }"; tbGorivo.Text = $"Pogonsko gorivo: { nalog.Vozilo.VrstaGoriva.VrstaGoriva }"; tbBrojSasije.Text = $"Broj šasije: { nalog.Vozilo.BrojSasije }"; tbSnagaMotora.Text = $"Snaga motora: { nalog.Vozilo.SnagaMotora }"; }
private void UcitajRadniNalog() { if (cmbRadniNalog.SelectedValue != null) { RadniNalog nalog = RadniNalog.UcitajNalog(Convert.ToInt32(cmbRadniNalog.SelectedValue)); tbRadniNalog.Text = $@"ID naloga: { nalog.Id }, Vozilo: { nalog.Vozilo.Model.Marka.NazivMarke } { nalog.Vozilo.Model.NazivModela }" + $@", Vlasnik: { nalog.Vozilo.Vlasnik.ImeVlasnika } { nalog.Vozilo.Vlasnik.PrezimeVlasnika }"; tbIzvrseni.Text = $@"Izvršeni radovi: { nalog.IznosRadova().ToString("F2") }"; tbDelovi.Text = $@"Ugrađeni delovi: { nalog.IznosDelova().ToString("F2") }"; } }
private void btnSacuvaj_Click(object sender, RoutedEventArgs e) { if (dtDatumOtvaranja.SelectedDate == null) { tbPoruka.Text = "Morate izabrati datum otvaranja radnog naloga."; return; } if (dtDatumZatvaranja.SelectedDate == null) { tbPoruka.Text = "Morate izabrati datum zatvaranja radnog naloga."; return; } if (cmbVozilo.SelectedValue == null) { tbPoruka.Text = "Morate izabrati vozilo iz liste."; return; } if (cmbZaposleni.SelectedValue == null) { tbPoruka.Text = "Morate izabrati zaposlenog."; return; } tbPoruka.Text = ""; RadniNalog noviNalog = new RadniNalog(); noviNalog.DatumOtvaranja = Convert.ToDateTime(dtDatumOtvaranja.SelectedDate); noviNalog.DatumZatvaranja = Convert.ToDateTime(dtDatumZatvaranja.SelectedDate); noviNalog.Zaposleni = Zaposleni.UcitajZaposlenog(Convert.ToInt32(cmbZaposleni.SelectedValue)); noviNalog.Vozilo = Vozilo.UcitajVozilo(Convert.ToInt32(cmbVozilo.SelectedValue)); if (String.IsNullOrEmpty(txtID.Text) != true) { RadniNalog stariNalog = RadniNalog.UcitajNalog(Convert.ToInt32(txtID.Text)); stariNalog.Azuriraj(noviNalog); } else { if (noviNalog.PostojiDuplikat()) { tbPoruka.Text = "Ovaj radni nalog već postoji u bazi. Ne možete sačuvati duplikat."; return; } noviNalog.Sacuvaj(); } UcitajListuNaloga(); }
private void btnObrisi_Click(object sender, RoutedEventArgs e) { if (dgPregled.Items.Count > 0) { DataRowView red = (DataRowView)dgPregled.SelectedItems[0]; int id = Convert.ToInt32(red[0]); try { MessageBoxResult rez = MessageBox.Show(@"Da li ste sigurni? Biće obrisani i svi podaci povezani sa vlasnikom.", "Upozorenje", MessageBoxButton.YesNo, MessageBoxImage.Question); if (rez != MessageBoxResult.Yes) { return; } //mora ovako da bismo isli unazad i obrisali sve povezane podatke Vlasnik vlasnik = Vlasnik.UcitajVlasnika(id); foreach (int idVozila in Vlasnik.ListaVozila(id)) { Vozilo vozilo = Vozilo.UcitajVozilo(idVozila); foreach (int idNaloga in Vozilo.ListaNaloga(idVozila)) { RadniNalog nalog = RadniNalog.UcitajNalog(idNaloga); Garancija.ObrisiSveGarancijeZaRadniNalog(idNaloga); Faktura.ObrisiSveFakture(idNaloga); NaruceniRadovi.ObrisiSveNaruceneRadove(idNaloga); Delovi.ObrisiSveDelove(idNaloga); IzvrseniRadovi.ObrisiSveIzvrseneRadove(idNaloga); nalog.Obrisi(); } vozilo.Obrisi(); } vlasnik.Obrisi(); UcitajListuVlasnika(); } catch (InvalidOperationException) { MessageBox.Show("Niste izabrali red.", "Greška", MessageBoxButton.OK, MessageBoxImage.Error); } catch (Exception ex) { MessageBox.Show($"Došlo je do greške prilikom pokušaja brisanja podataka: { ex.Message }.", "Greška", MessageBoxButton.OK, MessageBoxImage.Error); } } }
private void cmbRadniNalog_SelectionChanged(object sender, SelectionChangedEventArgs e) { if (cmbRadniNalog.SelectedValue != null) { RadniNalog nalog = RadniNalog.UcitajNalog(Convert.ToInt32(cmbRadniNalog.SelectedValue)); tbRadniNalogID.Text = $@"ID radnog naloga: { nalog.Id }"; tbVlasnik.Text = $@"Vlasnik: { nalog.Vozilo.Vlasnik.ImeVlasnika } { nalog.Vozilo.Vlasnik.PrezimeVlasnika }"; tbVozilo.Text = $@"Vozilo: { nalog.Vozilo.Model.Marka.NazivMarke } { nalog.Vozilo.Model.NazivModela }"; tbIznosDelova.Text = $@"Iznos delova: { nalog.IznosDelova().ToString("F2") }"; tbIznosRadova.Text = $@"Iznos radova: { nalog.IznosRadova().ToString("F2") }"; tbUkupno.Text = $@"Ukupan iznos: { (nalog.IznosRadova() + nalog.IznosDelova()).ToString("F2") }"; dgRadovi.ItemsSource = IzvrseniRadovi.ListaIzvrsenihRadova(nalog.Id).DefaultView; dgDelovi.ItemsSource = Delovi.ListaDelova(nalog.Id).DefaultView; } }
private void btnSacuvajNaruceni_Click(object sender, RoutedEventArgs e) { if (cmbRadniNalog.SelectedValue == null) { tbPoruka1.Text = "Morate izabrati radni nalog."; return; } if (String.IsNullOrEmpty(txtOpisNarucenih.Text)) { tbPoruka1.Text = "Morate uneti opis."; return; } NaruceniRadovi naruceni = new NaruceniRadovi(); naruceni.RedniBroj = naruceniRedni; naruceni.Opis = txtOpisNarucenih.Text; naruceni.RadniNalog = RadniNalog.UcitajNalog(Convert.ToInt32(cmbRadniNalog.SelectedValue)); bool azuriraj = false; foreach (DataRowView red in dgNaruceni.ItemsSource) { if (Convert.ToInt32(red[0]) == naruceni.RedniBroj) { azuriraj = true; break; } } if (azuriraj == true) { NaruceniRadovi stari = NaruceniRadovi.UcitajNaruceneRadove(naruceniRedni, Convert.ToInt32(cmbRadniNalog.SelectedValue)); stari.Azuriraj(naruceni); UcitajListuNarucenih(); return; } naruceni.Sacuvaj(); UcitajListuNarucenih(); }
private void btnObrisi_Click(object sender, RoutedEventArgs e) { if (dgPregled.Items.Count > 0) { DataRowView red = (DataRowView)dgPregled.SelectedItems[0]; int id = Convert.ToInt32(red[0]); try { MessageBoxResult rez = MessageBox.Show(@"Da li ste sigurni? Biće obrisani i svi podaci povezani na radni nalog.", "Upozorenje", MessageBoxButton.YesNo, MessageBoxImage.Question); if (rez != MessageBoxResult.Yes) { return; } RadniNalog nalog = RadniNalog.UcitajNalog(id); Garancija.ObrisiSveGarancijeZaRadniNalog(id); Faktura.ObrisiSveFakture(id); NaruceniRadovi.ObrisiSveNaruceneRadove(id); Delovi.ObrisiSveDelove(id); IzvrseniRadovi.ObrisiSveIzvrseneRadove(id); nalog.Obrisi(); UcitajListuNaloga(); } catch (InvalidOperationException) { MessageBox.Show("Niste izabrali red.", "Greška", MessageBoxButton.OK, MessageBoxImage.Error); } catch (Exception ex) { MessageBox.Show($"Došlo je do greške prilikom pokušaja brisanja podataka: { ex.Message }.", "Greška", MessageBoxButton.OK, MessageBoxImage.Error); } } }
private void btnSacuvaj_Click(object sender, RoutedEventArgs e) { if (dtDatum.SelectedDate == null) { tbPoruka.Text = "Morate izabrati datum."; return; } if (dtValuta.SelectedDate == null) { tbPoruka.Text = "Morate izabrati valutu."; return; } if (String.IsNullOrEmpty(txtBrojFiskalnogRacuna.Text)) { tbPoruka.Text = "Morate uneti broj fiskalnog računa."; return; } if (cmbRadniNalog.SelectedValue == null) { tbPoruka.Text = "Morate izabrati radni nalog."; return; } tbPoruka.Text = ""; Faktura novaFaktura = new Faktura(); try { novaFaktura.Datum = Convert.ToDateTime(dtDatum.SelectedDate); novaFaktura.Valuta = Convert.ToDateTime(dtValuta.SelectedDate); novaFaktura.BrojFiskalnogRacuna = Convert.ToInt32(txtBrojFiskalnogRacuna.Text); novaFaktura.RadniNalog = RadniNalog.UcitajNalog(Convert.ToInt32(cmbRadniNalog.SelectedValue)); } catch (Exception) { tbPoruka.Text = "Niste uneli ispravne vrednosti."; return; } if ((novaFaktura.RadniNalog.BrojDelova() + novaFaktura.RadniNalog.BrojRadova()) <= 0) { tbPoruka.Text = "Ne možete sačuvati fakturu kojoj je iznos radova i delova 0."; return; } if (String.IsNullOrEmpty(txtID.Text) != true) { Faktura staraFaktura = Faktura.UcitajFakturu(Convert.ToInt32(txtID.Text)); staraFaktura.Azuriraj(novaFaktura); } else { if (novaFaktura.PostojiDuplikat()) { tbPoruka.Text = "Ova faktura već postoji u bazi. Ne možete sačuvati duplikat."; return; } novaFaktura.Sacuvaj(); } UcitajListuFaktura(); }
private void btnSacuvajDelovi_Click(object sender, RoutedEventArgs e) { if (cmbRadniNalog.SelectedValue == null) { tbPoruka3.Text = "Morate izabrati radni nalog."; return; } if (String.IsNullOrEmpty(txtSifra.Text)) { tbPoruka3.Text = "Morate uneti šifru."; return; } if (String.IsNullOrEmpty(txtNazivDela.Text)) { tbPoruka3.Text = "Morate uneti naziv dela."; return; } if (String.IsNullOrEmpty(txtKolicinaDelovi.Text)) { tbPoruka3.Text = "Morate uneti količinu."; return; } if (String.IsNullOrEmpty(txtJmrDelovi.Text)) { tbPoruka3.Text = "Morate uneti jedinicu mere."; return; } if (String.IsNullOrEmpty(txtCenaDelovi.Text)) { tbPoruka3.Text = "Morate uneti cenu."; return; } Delovi deo = new Delovi(); try { deo.RedniBroj = deloviRedni; deo.Sifra = txtSifra.Text; deo.Naziv = txtNazivDela.Text; deo.Kolicina = Convert.ToDouble(txtKolicinaDelovi.Text); deo.Cena = Convert.ToDouble(txtCenaDelovi.Text); deo.JedinicaMere = txtJmrDelovi.Text; deo.RadniNalog = RadniNalog.UcitajNalog(Convert.ToInt32(cmbRadniNalog.SelectedValue)); } catch (Exception) { tbPoruka3.Text = "Niste uneli ispravne vrednosti."; return; } bool azuriraj = false; foreach (DataRowView red in dgDelovi.ItemsSource) { if (Convert.ToInt32(red[0]) == deo.RedniBroj) { azuriraj = true; break; } } if (azuriraj == true) { Delovi stari = Delovi.UcitajDeo(deloviRedni, Convert.ToInt32(cmbRadniNalog.SelectedValue)); stari.Azuriraj(deo); UcitajListuDelova(); return; } deo.Sacuvaj(); UcitajListuDelova(); }
private void btnSacuvajIzvrseni_Click(object sender, RoutedEventArgs e) { if (cmbRadniNalog.SelectedValue == null) { tbPoruka2.Text = "Morate izabrati radni nalog."; return; } if (String.IsNullOrEmpty(txtNazivIzvrsenih.Text)) { tbPoruka2.Text = "Morate uneti naziv usluge."; return; } if (String.IsNullOrEmpty(txtKolicina.Text)) { tbPoruka2.Text = "Morate uneti količinu."; return; } if (String.IsNullOrEmpty(txtJmr.Text)) { tbPoruka2.Text = "Morate uneti jedinicu mere."; return; } if (String.IsNullOrEmpty(txtCena.Text)) { tbPoruka2.Text = "Morate uneti cenu."; return; } IzvrseniRadovi izvrseni = new IzvrseniRadovi(); try { izvrseni.RedniBroj = izvrseniRedni; izvrseni.Naziv = txtNazivIzvrsenih.Text; izvrseni.Kolicina = Convert.ToDouble(txtKolicina.Text); izvrseni.Cena = Convert.ToDouble(txtCena.Text); izvrseni.JedinicaMere = txtJmr.Text; izvrseni.RadniNalog = RadniNalog.UcitajNalog(Convert.ToInt32(cmbRadniNalog.SelectedValue)); } catch (Exception) { tbPoruka2.Text = "Niste uneli ispravne vrednosti."; return; } bool azuriraj = false; foreach (DataRowView red in dgIzvrseni.ItemsSource) { if (Convert.ToInt32(red[0]) == izvrseni.RedniBroj) { azuriraj = true; break; } } if (azuriraj == true) { IzvrseniRadovi stari = IzvrseniRadovi.UcitajIzvrseneRadove(izvrseniRedni, Convert.ToInt32(cmbRadniNalog.SelectedValue)); stari.Azuriraj(izvrseni); UcitajListuIzvrsenih(); return; } izvrseni.Sacuvaj(); UcitajListuIzvrsenih(); }