/* * Rukuje događajem klika na gumb btnPregledDostupnihVozila. Prilikom klika na gumb sakriva formu frmDodajRezervaciju i otvara formu frmPregledDostupnihVozila. */ /// <summary> /// Rukuje događajem klika na gumb btnPregledDostupnihVozila. Prilikom klika na gumb sakriva formu frmDodajRezervaciju i otvara formu frmPregledDostupnihVozila. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnPregledDostupnihVozila_Click(object sender, EventArgs e) { if (DateTime.Compare(this.dtpDatumIVrijemePocetka.Value, new DateTime(2000, 1, 1, 0, 0, 0)) == 0) { MessageBox.Show("Niste odabrali datum početka!"); } else if (DateTime.Compare(this.dtpDatumIVrijemeKraja.Value, new DateTime(2000, 1, 1, 0, 0, 0)) == 0) { MessageBox.Show("Niste odabrali datum kraja!"); } else if (DateTime.Compare(this.dtpDatumIVrijemePocetka.Value, DateTime.Now) < 0) { MessageBox.Show("Pogreška kod datuma početka!"); } else if (DateTime.Compare(this.dtpDatumIVrijemeKraja.Value, dtpDatumIVrijemePocetka.Value) <= 0) { MessageBox.Show("Pogreška kod datuma kraja!"); } else { frmPregledDostupnihVozila frmPregledDostupnihVozila = new frmPregledDostupnihVozila(this.dtpDatumIVrijemePocetka.Value, this.dtpDatumIVrijemeKraja.Value); this.Hide(); frmPregledDostupnihVozila.ShowDialog(); this.Show(); Vozilo odabranoVozilo = frmPregledDostupnihVozila.OdabranoVozilo; if (odabranoVozilo != null) { TipMotora tipMotora = null; using (RentACarEntities db = new RentACarEntities()) { tipMotora = (from t in db.TipMotora where t.TipMotoraID == odabranoVozilo.TipMotoraID select t).FirstOrDefault(); } txtRegistracija.Text = odabranoVozilo.VoziloID.ToString(); txtModel.Text = odabranoVozilo.Naziv; txtTip.Text = tipMotora.Naziv; txtSnagaMotora.Text = odabranoVozilo.SnagaMotora.ToString(); txtBrojSjedala.Text = odabranoVozilo.BrojSjedala.ToString(); txtCijenaPoDanu.Text = odabranoVozilo.CijenaPoDanu.ToString(); txtBrojDana.Text = ((dtpDatumIVrijemeKraja.Value - dtpDatumIVrijemePocetka.Value).Days).ToString(); txtUkupnaCijena.Text = (int.Parse(txtBrojDana.Text) * double.Parse(txtCijenaPoDanu.Text)).ToString(); txtPDV.Text = (double.Parse(txtUkupnaCijena.Text) * 0.25).ToString(); txtCijenaSPDV.Text = ((double.Parse(txtUkupnaCijena.Text) * 0.25) + double.Parse(txtUkupnaCijena.Text)).ToString(); } } }
/// <summary> /// Metoda koja se koristi kod brisanja zaposlenika iz smjene u nekom odredenom danu /// </summary> /// <param name="smjena"></param> /// <param name="datum"></param> /// <param name="radnik"></param> public static void BrisanjeRadaUSmjeni(int smjena, DateTime datum, string radnik) { BindingList <Radi> listaRada = null; Radi radiBrisi = null; using (var db = new RentACarEntities()) { listaRada = new BindingList <Radi>((from r in db.Radi where (r.SmjenaID == smjena && r.Datum == datum && r.DjelatnikID == radnik) select r).ToList()); foreach (var item in listaRada) { radiBrisi = item; } db.Radi.Attach(radiBrisi); db.Radi.Remove(radiBrisi); db.SaveChanges(); } }
public static BindingList <Radi> odradeneSmjene(string djelatnik, DateTime datum) { BindingList <Radi> listaSmjena = null; BindingList <Radi> listaSmjenaRadnika = new BindingList <Radi>(); using (var db = new RentACarEntities()) { listaSmjena = new BindingList <Radi>((from r in db.Radi where (r.DjelatnikID == djelatnik) select r).ToList()); } foreach (var item in listaSmjena) { if (item.Datum.Month == datum.Month) { listaSmjenaRadnika.Add(item); } } return(listaSmjenaRadnika); }
/// <summary> /// Rukuje događajem klika na gumb btnRezerviraj. Sprema promijene na rezervaciji. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnRezerviraj_Click1(object sender, EventArgs e) { Rezervacija rezervacija = null; using (RentACarEntities db = new RentACarEntities()) { rezervacija = (from r in db.Rezervacija where r.RezervacijaID == this.sifraRezervacije select r).First(); } using (RentACarEntities db = new RentACarEntities()) { db.Rezervacija.Attach(rezervacija); rezervacija.KorisnikID = txtOIB.Text; rezervacija.DatumPocetka = dtpDatumIVrijemePocetka.Value; rezervacija.DatumKraja = dtpDatumIVrijemeKraja.Value; rezervacija.VoziloID = txtRegistracija.Text; rezervacija.Opis = txtNapomena.Text; db.SaveChanges(); } this.Close(); }
/// <summary> /// Rukuje događajem učitavanja forme frmIzdavanjeRacuna. Popunjava polja podacima o trenutno prijavljenom djelatniku. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void frmIzdavanjeRacuna_Load(object sender, EventArgs e) { using (RentACarEntities db = new RentACarEntities()) { Racun racun = new Racun(); racun.Djelatnik = Korisnik.PrijavljeniKorisnik.KorisnikID; racun.DatumRacuna = DateTime.Now; racun.IznosRacuna = 0; db.Racun.Add(racun); db.SaveChanges(); this.sifraRacuna = racun.RacunID; } string djelatnik = Korisnik.PrijavljeniKorisnik.Ime + " " + Korisnik.PrijavljeniKorisnik.Prezime; ReportParameterCollection parametri = new ReportParameterCollection(); parametri.Add(new ReportParameter("DatumIVrijeme", DateTime.Now.ToString())); parametri.Add(new ReportParameter("Djelatnik", djelatnik)); parametri.Add(new ReportParameter("RacunBr", sifraRacuna.ToString())); this.rpvRacun.LocalReport.SetParameters(parametri); this.rpvRacun.RefreshReport(); }
/// <summary> /// metotoda koja vraca listu zaposlenika u poduzecu /// </summary> /// <param name="smjena"></param> /// <param name="datum"></param> /// <returns></returns> public static BindingList <Korisnik> listaRadnika(int smjena, DateTime datum) { BindingList <Korisnik> listaRadnikaSmjene = null; BindingList <Korisnik> listaRadnikaSmjeneSvi = new BindingList <Korisnik>(); BindingList <Radi> listaRadi = null; using (var db = new RentACarEntities()) { listaRadi = new BindingList <Radi>((from r in db.Radi where (r.SmjenaID == smjena && r.Datum == datum) select r).ToList()); foreach (var item in listaRadi) { listaRadnikaSmjene = new BindingList <Korisnik>((from k in db.Korisnik where (k.KorisnikID == item.DjelatnikID) select k).ToList()); foreach (var item2 in listaRadnikaSmjene) { listaRadnikaSmjeneSvi.Add(item2); } } return(listaRadnikaSmjeneSvi); } }
/* * Rukuje događajem klika na gumb btnObrisi. */ /// <summary> /// Rukuje događajem klika na gumb btnObrisi. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnObrisi_Click(object sender, EventArgs e) { Rezervacija rezervacijaZaBrisanje = (Rezervacija)rezervacijaBindingSource.Current; if (rezervacijaZaBrisanje != null) { DialogResult odgovor = MessageBox.Show("Jeste li sigurni da želite otkazati rezervaciju " + dgvMojeRezervacije.CurrentRow.Cells[0] + "?", "Otkazivanje rezervacije", MessageBoxButtons.YesNo); if (odgovor == DialogResult.Yes) { using (RentACarEntities db = new RentACarEntities()) { db.Rezervacija.Attach(rezervacijaZaBrisanje); db.Rezervacija.Remove(rezervacijaZaBrisanje); db.SaveChanges(); } prikaziRezervacije(); } } else { MessageBox.Show("Niste odabrali rezervaciju!"); } }
/* * Metoda koja dohvaća rezervacije za trenutno prijavljenog korisnika i prikazuje ih. */ /// <summary> /// Metoda koja dohvaća rezervacije za trenutno prijavljenog korisnika i prikazuje ih. /// </summary> private void prikaziRezervacije() { using (RentACarEntities db = new RentACarEntities()) { voziloBindingSource.DataSource = Vozilo.DohvatiVozila(); rezervacijaBindingSource.DataSource = Rezervacija.DohvatiMojeRezervacije(Korisnik.PrijavljeniKorisnik); dgvMojeRezervacije.DataSource = rezervacijaBindingSource; dgvMojeRezervacije.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.DisplayedCells; int sirina = 0; foreach (DataGridViewColumn c in dgvMojeRezervacije.Columns) { if (c.Displayed) { sirina += c.Width; } } dgvMojeRezervacije.Width = sirina + dgvMojeRezervacije.RowHeadersWidth + 2; dgvMojeRezervacije.Height = (dgvMojeRezervacije.Rows.Count + 1) * 25; btnAzuriraj.Location = new Point(dgvMojeRezervacije.Location.X + dgvMojeRezervacije.Width + 3, dgvMojeRezervacije.Location.Y); btnObrisi.Location = new Point(dgvMojeRezervacije.Location.X + dgvMojeRezervacije.Width + 3, btnAzuriraj.Location.Y + btnAzuriraj.Height); } }
/// <summary> /// Rukuje događajem klika na gumb te briše odabrano vozilo ak vozilo nije iznajmljeno ili rezervirano /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnBrisiVozilo_Click(object sender, EventArgs e) { Vozilo vozilo = voziloBindingSource.Current as Vozilo; using (RentACarEntities db = new RentACarEntities()) { db.Vozilo.Attach(vozilo); if (Iznajmljivanje.ProvjeriZauzetostVozila(vozilo.VoziloID) == true && Rezervacija.ProvjeriZauzetostVozila(vozilo.VoziloID)) { db.Vozilo.Remove(vozilo); db.SaveChanges(); } else if (Iznajmljivanje.ProvjeriZauzetostVozila(vozilo.VoziloID) == false) { MessageBox.Show("Vozilo je iznajmljeno te ga nije moguće izbrisati", "GREŠKA", MessageBoxButtons.OK, MessageBoxIcon.Error); } else if (Rezervacija.ProvjeriZauzetostVozila(vozilo.VoziloID) == false) { MessageBox.Show("Vozilo je rezervirano te ga nije moguće izbrisati", "GREŠKA", MessageBoxButtons.OK, MessageBoxIcon.Error); } } OsvjeziPrikazVozila(); }
/// <summary> /// Rukuje događajem klika na gumb za dodavanje ili ažuriranje vozila /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnDodajVozilo_Click(object sender, EventArgs e) { if (txtRegistracija.Text != null && txtNaziv.Text != "" && txtGodinaProizvodnje.Text != "" && txtSnagaMotora.Text != "" && txtKilometri.Text != "" && dtpDatumRegistriranja.Text != "" && cmbKategorija.SelectedValue != null && cmbTipMotora.SelectedValue != null && txtCijenaPoDanu.Text != "") { if (int.TryParse(txtGodinaProizvodnje.Text, out int godina) && int.TryParse(txtBrojSjedala.Text, out int sjedala) && int.TryParse(txtSnagaMotora.Text, out int snaga) && int.TryParse(txtKilometri.Text, out int kilometri) && double.TryParse(txtCijenaPoDanu.Text, out double cijenapo)) { int IdKategorije = int.Parse(cmbKategorija.SelectedValue.ToString()); int IdTipMotora = int.Parse(cmbTipMotora.SelectedValue.ToString()); if (vozilo == null) { if (Vozilo.ProvjeriDostupnostRegistraciskihOznaka(txtRegistracija.Text)) { Vozilo vozilo = new Vozilo { VoziloID = txtRegistracija.Text, Naziv = txtNaziv.Text, GodinaProizvodnje = int.Parse(txtGodinaProizvodnje.Text), SnagaMotora = int.Parse(txtSnagaMotora.Text), Kilometri = int.Parse(txtKilometri.Text), BrojSjedala = int.Parse(txtBrojSjedala.Text), DatumRegistracije = dtpDatumRegistriranja.Value.Date, KategorijaID = IdKategorije, TipMotoraID = IdTipMotora, CijenaPoDanu = float.Parse(txtCijenaPoDanu.Text.ToString()) }; Vozilo.DodajVozilo(vozilo); txtRegistracija.Clear(); txtNaziv.Clear(); txtSnagaMotora.Clear(); txtKilometri.Clear(); txtBrojSjedala.Clear(); txtCijenaPoDanu.Clear(); txtGodinaProizvodnje.Clear(); } else { MessageBox.Show("Vozilo s tim registracijskim oznakama već postoji", "GREŠKA", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else { using (RentACarEntities db = new RentACarEntities()) { db.Vozilo.Attach(vozilo); vozilo.VoziloID = txtRegistracija.Text; vozilo.Naziv = txtNaziv.Text; vozilo.GodinaProizvodnje = int.Parse(txtGodinaProizvodnje.Text); vozilo.SnagaMotora = int.Parse(txtSnagaMotora.Text); vozilo.Kilometri = int.Parse(txtKilometri.Text); vozilo.BrojSjedala = int.Parse(txtBrojSjedala.Text); vozilo.DatumRegistracije = dtpDatumRegistriranja.Value.Date; vozilo.KategorijaID = IdKategorije; vozilo.TipMotoraID = IdTipMotora; vozilo.CijenaPoDanu = float.Parse(txtCijenaPoDanu.Text.ToString()); db.SaveChanges(); } this.Close(); } } else { MessageBox.Show("Podaci koji bi trebali biti broj nisu ispravnog formata", "GREŠKA", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else { MessageBox.Show("Nisu ispunjeni svi podaci koji su potrebni za dodavanje novog vozila", "GREŠKA", MessageBoxButtons.OK, MessageBoxIcon.Error); } }