private void rezervirajSjedaloButton_Click(object sender, EventArgs e) { if ((selektiraniLet.DatumPolaska.Date.Day - DateTime.Now.Date.Day) < 3 && (selektiraniLet.DatumDolaska.Date.Month == DateTime.Now.Date.Month)) { MessageBox.Show($"Rok za rezervaciju karata za let {selektiraniLet.PolazisniAerodrom.NazivAerodroma}->{selektiraniLet.OdredisniAerodrom.NazivAerodroma} je istekao."); return; } if (odabranoSjedalo == null) { MessageBox.Show("Niste odabrali sjedalo za koje želite rezervirati kartu."); return; } if (odabranoSjedalo.BackColor == Color.Red) { MessageBox.Show($"Sjedalo {odabranoSjedalo.Name} na letu {selektiraniLet.PolazisniAerodrom.NazivAerodroma}->{selektiraniLet.OdredisniAerodrom.NazivAerodroma} je zauzeto."); return; } else { Sjedalo sjedalo = RepozitorijSkyFlyReservation.DohvatiSjedalo(odabranoSjedalo.Name); Rezervacija rezervacija = new Rezervacija() { LetRezervacije = selektiraniLet, KorisnikRezervacije = RepozitorijSkyFlyReservation.prijavljeniKorisnik, RezerviranoSjedalo = sjedalo, DatumVrijemeRezervacije = DateTime.Now }; int numAffectedRowsInsert = RepozitorijSkyFlyReservation.DodajRezervacijuKarte(rezervacija); int numAffectedRowsUpdate = RepozitorijSkyFlyReservation.AzurirajBrojSlobodnihMjesta(selektiraniLet); if (numAffectedRowsInsert > 0 && numAffectedRowsUpdate > 0) { MessageBox.Show($"Uspješno ste rezervirali sjedalo {sjedalo.OznakaSjedala} na letu {selektiraniLet.PolazisniAerodrom.NazivAerodroma}->{selektiraniLet.OdredisniAerodrom.NazivAerodroma}.\n\nNa Vašu e-mail adresu poslani su podaci za plaćanje."); PošaljiObavijest(selektiraniLet, sjedalo); OsvjeziSjedalaUAvionu(RepozitorijSkyFlyReservation.DohvatiRezerviranaSjedala(selektiraniLet)); } else { MessageBox.Show("Dogodila se pogreška kod rezervacije sjedala.Rezervacija nije evidentirana."); this.Close(); return; } } }