Example #1
0
        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") }";
     }
 }
Example #3
0
        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();
        }
Example #7
0
        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();
        }