private void zmianaRezerwacji_Click(object sender, EventArgs e) { OknoDialogowe dialogRezerwacji = new OknoDialogowe("Id Rezerwacji", "Podaj id rezerwcji do zmiany:"); dialogRezerwacji.ShowDialog(); int idKlienta = (int)listaKlientow.SelectedValue; int idRezerwacji = 0; try { idRezerwacji = Int32.Parse(dialogRezerwacji.Wynik); OknoWyboruDaty oknoWyboruDaty = new OknoWyboruDaty(); DateTime dataPoczatku, dataKonca; if (oknoWyboruDaty.ShowDialog() == DialogResult.OK) { dataPoczatku = oknoWyboruDaty.WybranaData; oknoWyboruDaty.ustawDateMinimalna(dataPoczatku); if (oknoWyboruDaty.ShowDialog() == DialogResult.OK) { dataKonca = oknoWyboruDaty.WybranaData; } else { throw new Exception("Nie ustalono daty poczatku rezerwacji."); } } else { throw new Exception("Nie ustalono daty końca rezerwacji."); } string dataOd, dataDo; dataOd = dataPoczatku.Year + "/" + dataPoczatku.Month + "/" + dataPoczatku.Day; dataDo = dataKonca.Year + "/" + dataKonca.Month + "/" + dataKonca.Day; string liczbaRezerwacji = "Select Count (*) From [WypozyczalniaLodzi].[dbo].[Rezerwacje] " + "Where " + "( " + "DataWynajmu Between '" + dataOd + "' And '" + dataDo + "' " + "Or " + "DataZwrotu Between '" + dataOd + "' And '" + dataDo + "' " + "Or " + "'" + dataOd + "' Between DataWynajmu And DataZwrotu " + "Or " + "'" + dataDo + "' Between DataWynajmu And DataZwrotu " + ") " + "And LodzieId = (Select LodzieId From [WypozyczalniaLodzi].[dbo].[Rezerwacje] Where IdRezerwacji = " + idRezerwacji + ")"; if ((int)ObslugaBazyDanych.pobierzWartosc(liczbaRezerwacji) > 0) { throw new Exception("Dana łódź jest już zarezerwowana w tym terminie."); } string zapytanie = "Update WypozyczalniaLodzi.dbo.Rezerwacje Set DataWynajmu = '" + dataOd + "', DataZwrotu = '" + dataDo + "' Where IdRezerwacji = " + idRezerwacji + " And KlienciId = " + idKlienta; ObslugaBazyDanych.wykonajPolecenie(zapytanie); //Przeładowanie rezerwacji. wypelnijRezerwacje((int)listaKlientow.SelectedValue); } catch (FormatException ex) { MessageBox.Show("Id rezerwacji musi być liczbą całkowitą.\n" + ex.Message); } catch (Exception ex) { MessageBox.Show(ex.Message); } }
private void dodajRezerwacje_Click(object sender, EventArgs e) { OknoDialogowe dialogLodzi = new OknoDialogowe("Id Lodzi", "Podaj Id lodzi do rezerwacji:"); dialogLodzi.ShowDialog(); int idKlienta = (int)listaKlientow.SelectedValue; int idLodzi = 0; try { idLodzi = Int32.Parse(dialogLodzi.Wynik); object czyStatekIstnieje = ObslugaBazyDanych.pobierzWartosc("Select Count (*) From WypozyczalniaLodzi.dbo.Lodzie Where IdLodzi = " + idLodzi); if (czyStatekIstnieje == null || (int)czyStatekIstnieje == 0) { throw new Exception("Brak statku."); } OknoWyboruDaty oknoWyboruDaty = new OknoWyboruDaty(); DateTime dataPoczatku, dataKonca; if (oknoWyboruDaty.ShowDialog() == DialogResult.OK) { dataPoczatku = oknoWyboruDaty.WybranaData; oknoWyboruDaty.ustawDateMinimalna(dataPoczatku); if (oknoWyboruDaty.ShowDialog() == DialogResult.OK) { dataKonca = oknoWyboruDaty.WybranaData; } else { throw new Exception("Nie ustalono daty poczatku rezerwacji."); } } else { throw new Exception("Nie ustalono daty końca rezerwacji."); } string dataOd, dataDo; dataOd = dataPoczatku.Year + "/" + dataPoczatku.Month + "/" + dataPoczatku.Day; dataDo = dataKonca.Year + "/" + dataKonca.Month + "/" + dataKonca.Day; string liczbaRezerwacji = "Select Count (*) From [WypozyczalniaLodzi].[dbo].[Rezerwacje] " + "Where " + "( " + "DataWynajmu Between '" + dataOd + "' And '" + dataDo + "' " + "Or " + "DataZwrotu Between '" + dataOd + "' And '" + dataDo + "' " + "Or " + "'" + dataOd + "' Between DataWynajmu And DataZwrotu " + "Or " + "'" + dataDo + "' Between DataWynajmu And DataZwrotu " + ") " + "And LodzieId = " + idLodzi; if ((int)ObslugaBazyDanych.pobierzWartosc(liczbaRezerwacji) > 0) { throw new Exception("Dana łódź jest już zarezerwowana w tym terminie."); } string zapytanie = "Insert Into WypozyczalniaLodzi.dbo.Rezerwacje (LodzieId, PracownicyId, KlienciId, DataWynajmu, DataZwrotu) Values (" + idLodzi + ", " + DaneLogowania.Id + ", " + idKlienta + ", '" + dataOd + "', '" + dataDo + "')"; ObslugaBazyDanych.wykonajPolecenie(zapytanie); //Przeładowanie rezerwacji. wypelnijRezerwacje((int)listaKlientow.SelectedValue); } catch (FormatException ex) { MessageBox.Show("Id lodzi musi być liczbą całkowitą.\n" + ex.Message); } catch (Exception ex) { MessageBox.Show(ex.Message); } }