/// <summary> /// Osvježava sadržaj DataGridView-a dgvRezervacije. /// </summary> private void prikaziRezervacije() { voziloBindingSource.DataSource = Vozilo.DohvatiVozila(); korisnikBindingSource.DataSource = Korisnik.DohvatiSveKorisnike(); rezervacijaBindingSource.DataSource = Rezervacija.DohvatiSveRezervacije(); dgvRezervacije.DataSource = rezervacijaBindingSource; btnDodaj.Visible = true; btnPromijeni.Visible = true; btnOtkazi.Visible = true; }
/* * Rukuje događajem klika na gumb btnOtkazi. */ /// <summary> /// Rukuje događajem klika na gumb btnOtkazi. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnOtkazi_Click(object sender, EventArgs e) { Rezervacija rezervacijaZaOtkazivanje = (Rezervacija)rezervacijaBindingSource.Current; using (RentACarEntities db = new RentACarEntities()) { db.Rezervacija.Attach(rezervacijaZaOtkazivanje); db.Rezervacija.Remove(rezervacijaZaOtkazivanje); db.SaveChanges(); } prikaziRezervacije(); }
/* * Rukuje događajem klika na gumb btnAzuriraj. Otvara formu frmDodajRezervaciju. */ /// <summary> /// Rukuje događajem klika na gumb btnAzuriraj. Otvara formu frmDodajRezervaciju. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnAzuriraj_Click(object sender, EventArgs e) { Rezervacija rezervacijaZaAzuriranje = (Rezervacija)rezervacijaBindingSource.Current; if (rezervacijaZaAzuriranje != null) { Vozilo voziloNaRezervaciji = (Vozilo)voziloBindingSource.Current; frmDodajPromijeniRezervaciju frmDodajRezervaciju = new frmDodajPromijeniRezervaciju(rezervacijaZaAzuriranje); this.Hide(); frmDodajRezervaciju.ShowDialog(); this.Show(); prikaziRezervacije(); } else { MessageBox.Show("Niste odabrali rezervaciju!"); } }
/// <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(); }
/* * 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(); }