private void ReservatieAanmakenButton_Click(object sender, RoutedEventArgs e) { if (KlantNrTextBox.Text != null && DataGridLimousines.SelectedItem != null) { int klantNr = int.Parse(KlantNrTextBox.Text); DateTime startDatum = (DateTime)DatePickerCalender.SelectedDate; Arrengement arrengement = (Arrengement)ArrengementTypeList.SelectedItem; int startUur = (int)BeschikbareUrenList.SelectedItem; int duur = (int)DuurLijst.SelectedItem; int limoId = ((Limousine)DataGridLimousines.SelectedItem).Id; string verwachtAdres = VerwachtAdresTextBox.Text; StalLocatie EindStalPlaats = (StalLocatie)EindLocatieComboBox.SelectedItem; StalLocatie StartStalPlaats = (StalLocatie)StartLocatieComboBox.SelectedItem; ReservatieManager rM = new ReservatieManager(new ReservatieDatabaseHandler()); Reservatie toShow = rM.ReservatieMakenEnReturnen(klantNr, startDatum, arrengement, startUur, duur, limoId, StartStalPlaats, EindStalPlaats, verwachtAdres); ReservatieDetailsWindow detailsWindow = new ReservatieDetailsWindow(toShow); detailsWindow.Show(); this.Close(); } else { MessageBox.Show("Gelieve een klantenNummer in te vullen en een voertuig te selecteren.", "Onvolledige reservering", MessageBoxButton.OK); } }
public void KortingCorrectToegepastMetEindeVanHetJaar_Test() { ReservatieManager rm = new ReservatieManager(new TestDataBaseHandler()); rm.VoegStaffelKortingToe("test", new List <int> { 0, 2, 4, 6 }, new List <double> { 0, 8, 15, 20 }); string klantNaam = "testklant1"; string klantenCategorie = "test"; string btwNummer = "TestBTwNummer123456789"; string adres = "TestAdres"; rm.VoegKlantToe(klantNaam, klantenCategorie, btwNummer, adres); string naam = "testLimo1"; int uurPrijs = 200; int nightlifePrijs1 = 2500; int weddingPrijs1 = 3000; int wellnessPrijs1 = 4213; rm.VoegLimousineToe(naam, uurPrijs, nightlifePrijs1, weddingPrijs1, wellnessPrijs1); int klantNr = 1; int limoId = 1; DateTime startDatum = new DateTime(2100, 12, 31); Arrengement arrengement = Arrengement.NightLife; int startUur = 23; int duur = 7; StalLocatie stalLocatie = StalLocatie.Antwerpen; StalLocatie eindLocatie = StalLocatie.Gent; string verwachtAdres = "testAdres1 25 testGemeente"; rm.ReservatieMakenZonderReturnen(klantNr, startDatum, arrengement, startUur, duur, limoId, stalLocatie, eindLocatie, verwachtAdres); startDatum = startDatum.AddDays(1); Reservatie res = rm.ReservatieMakenEnReturnen(klantNr, startDatum, arrengement, startUur, duur, limoId, stalLocatie, eindLocatie, verwachtAdres); Assert.IsTrue(res.VastePrijs == 2500); Assert.IsTrue(res.TotaalMetKortingExclusiefBtw == 2500); startDatum = startDatum.AddDays(1); res = rm.ReservatieMakenEnReturnen(klantNr, startDatum, arrengement, startUur, duur, limoId, stalLocatie, eindLocatie, verwachtAdres); Assert.IsTrue(res.VastePrijs == 2500); Assert.IsTrue(res.TotaalMetKortingExclusiefBtw == 2500); startDatum = startDatum.AddDays(1); res = rm.ReservatieMakenEnReturnen(klantNr, startDatum, arrengement, startUur, duur, limoId, stalLocatie, eindLocatie, verwachtAdres); Assert.IsTrue(res.VastePrijs == 2500); Assert.IsTrue(res.TotaalMetKortingExclusiefBtw == 2300); }
public void WeddingArrengement_Test() { ReservatieManager rm = new ReservatieManager(new TestDataBaseHandler()); string klantNaam = "testklant1"; string klantenCategorie = "testCategorie"; string btwNummer = "TestBTwNummer123456789"; string adres = "TestAdres"; rm.VoegKlantToe(klantNaam, klantenCategorie, btwNummer, adres); string naam = "testLimo1"; int uurPrijs = 200; int nightlifePrijs1 = 2500; int weddingPrijs1 = 3000; int wellnessPrijs1 = 4213; rm.VoegLimousineToe(naam, uurPrijs, nightlifePrijs1, weddingPrijs1, wellnessPrijs1); string klantNaam2 = "testklant12"; string klantenCategorie2 = "testCategorie"; string btwNummer2 = "TestBTwNummer123456789"; string adres2 = "TestAdres"; rm.VoegKlantToe(klantNaam2, klantenCategorie2, btwNummer2, adres2); string klantNaam3 = "EenAndereKlantOmLeegTeLaten"; string klantenCategorie3 = "testCategorie"; string btwNummer3 = "TestBTwNummer123456789"; string adres3 = "TestAdres"; rm.VoegKlantToe(klantNaam3, klantenCategorie3, btwNummer3, adres3); int klantNr = 1; int limoId = 1; DateTime startDatum = new DateTime(2100, 8, 13); Arrengement arrengement = Arrengement.Wedding; int startUur = 15; int duur = 11; StalLocatie stalLocatie = StalLocatie.Antwerpen; StalLocatie eindLocatie = StalLocatie.Gent; string verwachtAdres = "testAdres1 25 testGemeente"; Reservatie res = rm.ReservatieMakenEnReturnen(klantNr, startDatum, arrengement, startUur, duur, limoId, stalLocatie, eindLocatie, verwachtAdres); Assert.IsTrue(res.AantalEersteUur == 0); Assert.IsTrue(res.AantalStandaardUur == 0); Assert.IsTrue(res.AantalOverUur == 4); Assert.IsTrue(res.OverUurPrijs == 130); Assert.IsTrue(res.AantalNachtUur == 0); Assert.IsTrue(res.VastePrijs == 3000); Assert.IsTrue(res.TotaalMetKortingExclusiefBtw == 3520, "Totaal werd niet correct berekend"); }
public void WeddingArrangementDuurtAltijdMinstens7Uur_ZouIncorrecteParameterExceptionMoetenGeven() { Klant klant = new Klant(); Limousine limo = new Limousine(); DateTime startDatum = new DateTime(2100, 12, 31, 1, 0, 0); Arrengement arrengement = Arrengement.Wedding; int startUur = 22; int duur = 6; StalLocatie stalLocatie = StalLocatie.Antwerpen; StalLocatie eindLocatie = StalLocatie.Gent; string verwachtAdres = "testAdres1 25 testGemeente"; Reservatie res = new Reservatie(klant, startDatum, arrengement, startUur, duur, limo, DateTime.Now, stalLocatie, eindLocatie, verwachtAdres, 0); }
public void NightlifeArrangementMagNietVroegerDan20UurBeginnen_ZouIncorrecteParameterExceptionMoetenGeven() { Klant klant = new Klant(); Limousine limo = new Limousine(); DateTime startDatum = new DateTime(2100, 12, 31, 1, 0, 0); Arrengement arrengement = Arrengement.NightLife; int startUur = 19; int duur = 7; StalLocatie stalLocatie = StalLocatie.Antwerpen; StalLocatie eindLocatie = StalLocatie.Gent; string verwachtAdres = "testAdres1 25 testGemeente"; Reservatie res = new Reservatie(klant, startDatum, arrengement, startUur, duur, limo, DateTime.Now, stalLocatie, eindLocatie, verwachtAdres, 0); }
public void ReservatieAanmakenZonderDuur_ZouIncorrecteParameterExceptionMoetenGeven() { Klant klant = new Klant(); Limousine limo = new Limousine(); DateTime startDatum = new DateTime(2100, 12, 31, 1, 0, 0); Arrengement arrengement = Arrengement.NightLife; int startUur = -1; int duur = 0; StalLocatie stalLocatie = StalLocatie.Antwerpen; StalLocatie eindLocatie = StalLocatie.Gent; string verwachtAdres = "testAdres1 25 testGemeente"; Reservatie res = new Reservatie(klant, startDatum, arrengement, startUur, duur, limo, DateTime.Now, stalLocatie, eindLocatie, verwachtAdres, 0); }
static void Main(string[] args) { ReservatieManager rm = new ReservatieManager(new TestDataBaseHandler()); rm.VoegStaffelKortingToe("test", new List <int> { 0, 2, 4, 6 }, new List <double> { 0, 8, 15, 20 }); string klantNaam = "testklant1"; string klantenCategorie = "test"; string btwNummer = "TestBTwNummer123456789"; string adres = "TestAdres"; rm.VoegKlantToe(klantNaam, klantenCategorie, btwNummer, adres); string naam = "testLimo1"; int uurPrijs = 200; int nightlifePrijs1 = 2500; int weddingPrijs1 = 3000; int wellnessPrijs1 = 4213; rm.VoegLimousineToe(naam, uurPrijs, nightlifePrijs1, weddingPrijs1, wellnessPrijs1); int klantNr = 1; int limoId = 1; DateTime startDatum = new DateTime(2100, 8, 13); Arrengement arrengement = Arrengement.NightLife; int startUur = 23; int duur = 7; StalLocatie stalLocatie = StalLocatie.Antwerpen; StalLocatie eindLocatie = StalLocatie.Gent; string verwachtAdres = "testAdres1 25 testGemeente"; rm.ReservatieMakenZonderReturnen(klantNr, startDatum, arrengement, startUur, duur, limoId, stalLocatie, eindLocatie, verwachtAdres); startDatum = startDatum.AddDays(1); Reservatie res = rm.ReservatieMakenEnReturnen(klantNr, startDatum, arrengement, startUur, duur, limoId, stalLocatie, eindLocatie, verwachtAdres); startDatum = startDatum.AddDays(1); res = rm.ReservatieMakenEnReturnen(klantNr, startDatum, arrengement, startUur, duur, limoId, stalLocatie, eindLocatie, verwachtAdres); Console.WriteLine(); }
public void TarievenBerekeningAfronding_Test() { ReservatieManager rm = new ReservatieManager(new TestDataBaseHandler()); string klantNaam = "testklant1"; string klantenCategorie = "testCategorie"; string btwNummer = "TestBTwNummer123456789"; string adres = "TestAdres"; rm.VoegKlantToe(klantNaam, klantenCategorie, btwNummer, adres); string naam = "testLimo1"; int uurPrijs = 150; int nightlifePrijs1 = 2500; int weddingPrijs1 = 3000; int wellnessPrijs1 = 4213; rm.VoegLimousineToe(naam, uurPrijs, nightlifePrijs1, weddingPrijs1, wellnessPrijs1); string klantNaam2 = "testklant12"; string klantenCategorie2 = "testCategorie"; string btwNummer2 = "TestBTwNummer123456789"; string adres2 = "TestAdres"; rm.VoegKlantToe(klantNaam2, klantenCategorie2, btwNummer2, adres2); string klantNaam3 = "EenAndereKlantOmLeegTeLaten"; string klantenCategorie3 = "testCategorie"; string btwNummer3 = "TestBTwNummer123456789"; string adres3 = "TestAdres"; rm.VoegKlantToe(klantNaam3, klantenCategorie3, btwNummer3, adres3); int klantNr = 1; int limoId = 1; DateTime startDatum = new DateTime(2100, 8, 13); Arrengement arrengement = Arrengement.Business; int startUur = 7; int duur = 3; StalLocatie stalLocatie = StalLocatie.Antwerpen; StalLocatie eindLocatie = StalLocatie.Gent; string verwachtAdres = "testAdres1 25 testGemeente"; Reservatie res = rm.ReservatieMakenEnReturnen(klantNr, startDatum, arrengement, startUur, duur, limoId, stalLocatie, eindLocatie, verwachtAdres); Assert.IsTrue(res.StandaarUurPrijs == 100, "De standaard uurprijs werd niet correct afgerond."); Assert.IsTrue(res.TotaalMetKortingExclusiefBtw == 350, "Totaal werd niet correct berekend"); Assert.IsTrue(res.TotaalTeBetalen == 371, "btw percentage werd niet correct toegevoegd"); }
public void ReservatieToevoegen_Test() { ReservatieManager rm = new ReservatieManager(new TestDataBaseHandler()); //Limo maken string naam = "testLimo1"; int uurPrijs = 150; int nightlifePrijs1 = 2500; int weddingPrijs2 = 3000; int wellnessPrijs3 = 4213; rm.VoegLimousineToe(naam, uurPrijs, nightlifePrijs1, weddingPrijs2, wellnessPrijs3); //klant maken string klantNaam = "testklant1"; string klantenCategorie = "testCategorie"; string btwNummer = "TestBTwNummer123456789"; string adres = "TestAdres"; rm.VoegKlantToe(klantNaam, klantenCategorie, btwNummer, adres); //reservatie int klantNr = 1; int limoId = 1; DateTime startDatum = new DateTime(2100, 8, 12); Arrengement arrengement = Arrengement.NightLife; int startUur = 22; int duur = 10; StalLocatie stalLocatie = StalLocatie.Antwerpen; StalLocatie eindLocatie = StalLocatie.Gent; string verwachtAdres = "testAdres1 25 testGemeente"; rm.ReservatieMakenZonderReturnen(klantNr, startDatum, arrengement, startUur, duur, limoId, stalLocatie, eindLocatie, verwachtAdres); Reservatie res = rm.VindReservatieVoorReservatieNummer(1); Klant klant = rm.VindVolledigeKlantVoorKlantNummer(1); Limousine limo = rm.VindLimousineVoorId(1); Assert.AreEqual(res.Klant, klant); Assert.AreEqual(res.Limousine, limo); Assert.AreEqual(res.StartMoment, startDatum.AddHours(startUur)); Assert.AreEqual(res.AantalUur, duur); Assert.AreEqual(res.StartStalLocatie, stalLocatie); Assert.AreEqual(res.AankomstStalLocatie, eindLocatie); Assert.AreEqual(res.VerwachtAdres, verwachtAdres); }
public void NachtuurBerekeningVoorBusinessEnAirport_Test() { ReservatieManager rm = new ReservatieManager(new TestDataBaseHandler()); string klantNaam = "testklant1"; string klantenCategorie = "testCategorie"; string btwNummer = "TestBTwNummer123456789"; string adres = "TestAdres"; rm.VoegKlantToe(klantNaam, klantenCategorie, btwNummer, adres); string naam = "testLimo1"; int uurPrijs = 200; int nightlifePrijs1 = 2500; int weddingPrijs1 = 3000; int wellnessPrijs1 = 4213; rm.VoegLimousineToe(naam, uurPrijs, nightlifePrijs1, weddingPrijs1, wellnessPrijs1); int klantNr = 1; int limoId = 1; DateTime startDatum = new DateTime(2100, 8, 13); Arrengement arrengement = Arrengement.Business; int startUur = 1; int duur = 11; StalLocatie stalLocatie = StalLocatie.Antwerpen; StalLocatie eindLocatie = StalLocatie.Gent; string verwachtAdres = "testAdres1 25 testGemeente"; Reservatie res = rm.ReservatieMakenEnReturnen(klantNr, startDatum, arrengement, startUur, duur, limoId, stalLocatie, eindLocatie, verwachtAdres); Assert.IsTrue(res.AantalEersteUur == 1); Assert.IsTrue(res.EersteUurPrijs == 200); Assert.IsTrue(res.AantalStandaardUur == 5); Assert.IsTrue(res.StandaarUurPrijs == 130); Assert.IsTrue(res.AantalNachtUur == 5); Assert.IsTrue(res.NachtUurPrijs == 280); Assert.IsTrue(res.TotaalMetKortingExclusiefBtw == 2250, "Totaal werd niet correct berekend"); startDatum = startDatum.AddDays(1); startUur = 20; duur = 11; res = rm.ReservatieMakenEnReturnen(klantNr, startDatum, arrengement, startUur, duur, limoId, stalLocatie, eindLocatie, verwachtAdres); Assert.IsTrue(res.AantalEersteUur == 1); Assert.IsTrue(res.AantalStandaardUur == 1); Assert.IsTrue(res.AantalNachtUur == 9); startDatum = startDatum.AddDays(1); startUur = 21; duur = 11; res = rm.ReservatieMakenEnReturnen(klantNr, startDatum, arrengement, startUur, duur, limoId, stalLocatie, eindLocatie, verwachtAdres); Assert.IsTrue(res.AantalEersteUur == 1); Assert.IsTrue(res.AantalStandaardUur == 1); Assert.IsTrue(res.AantalNachtUur == 9); startDatum = startDatum.AddDays(1); startUur = 18; duur = 11; res = rm.ReservatieMakenEnReturnen(klantNr, startDatum, arrengement, startUur, duur, limoId, stalLocatie, eindLocatie, verwachtAdres); Assert.IsTrue(res.AantalEersteUur == 1); Assert.IsTrue(res.AantalStandaardUur == 3); Assert.IsTrue(res.AantalNachtUur == 7); startDatum = startDatum.AddDays(1); startUur = 7; duur = 11; res = rm.ReservatieMakenEnReturnen(klantNr, startDatum, arrengement, startUur, duur, limoId, stalLocatie, eindLocatie, verwachtAdres); Assert.IsTrue(res.AantalEersteUur == 1); Assert.IsTrue(res.AantalStandaardUur == 10); Assert.IsTrue(res.AantalNachtUur == 0); startDatum = startDatum.AddDays(1); startUur = 6; duur = 11; res = rm.ReservatieMakenEnReturnen(klantNr, startDatum, arrengement, startUur, duur, limoId, stalLocatie, eindLocatie, verwachtAdres); Assert.IsTrue(res.AantalEersteUur == 1); Assert.IsTrue(res.AantalStandaardUur == 10); Assert.IsTrue(res.AantalNachtUur == 0); }
public void AfrondingenOpTarieven_Test() { ReservatieManager rm = new ReservatieManager(new TestDataBaseHandler()); string klantNaam = "testklant1"; string klantenCategorie = "testCategorie"; string btwNummer = "TestBTwNummer123456789"; string adres = "TestAdres"; rm.VoegKlantToe(klantNaam, klantenCategorie, btwNummer, adres); string naam = "testLimo1"; int uurPrijs = 150; int nightlifePrijs1 = 2500; int weddingPrijs1 = 3000; int wellnessPrijs1 = 4213; rm.VoegLimousineToe(naam, uurPrijs, nightlifePrijs1, weddingPrijs1, wellnessPrijs1); string klantNaam2 = "testklant12"; string klantenCategorie2 = "testCategorie"; string btwNummer2 = "TestBTwNummer123456789"; string adres2 = "TestAdres"; rm.VoegKlantToe(klantNaam2, klantenCategorie2, btwNummer2, adres2); string klantNaam3 = "EenAndereKlantOmLeegTeLaten"; string klantenCategorie3 = "testCategorie"; string btwNummer3 = "TestBTwNummer123456789"; string adres3 = "TestAdres"; rm.VoegKlantToe(klantNaam3, klantenCategorie3, btwNummer3, adres3); int klantNr = 1; int limoId = 1; DateTime startDatum = new DateTime(2100, 8, 13); Arrengement arrengement = Arrengement.Business; int startUur = 18; int duur = 10; StalLocatie stalLocatie = StalLocatie.Antwerpen; StalLocatie eindLocatie = StalLocatie.Gent; string verwachtAdres = "testAdres1 25 testGemeente"; Reservatie res = rm.ReservatieMakenEnReturnen(klantNr, startDatum, arrengement, startUur, duur, limoId, stalLocatie, eindLocatie, verwachtAdres); Assert.IsTrue(res.StandaarUurPrijs == 100, "De standaard uurprijs werd niet correct afgerond."); Assert.IsTrue(res.NachtUurPrijs == 210, "De nachtuur prijs werd niet correct afgerond."); startDatum = startDatum.AddDays(1); naam = "testLimo2"; uurPrijs = 151; nightlifePrijs1 = 2500; weddingPrijs1 = 3000; wellnessPrijs1 = 4213; rm.VoegLimousineToe(naam, uurPrijs, nightlifePrijs1, weddingPrijs1, wellnessPrijs1); limoId++; res = rm.ReservatieMakenEnReturnen(klantNr, startDatum, arrengement, startUur, duur, limoId, stalLocatie, eindLocatie, verwachtAdres); Assert.IsTrue(res.StandaarUurPrijs == 100, "De standaard uurprijs werd niet correct afgerond."); Assert.IsTrue(res.NachtUurPrijs == 210, "De nachtuur prijs werd niet correct afgerond."); startDatum = startDatum.AddDays(1); naam = "testLimo3"; uurPrijs = 152; nightlifePrijs1 = 2500; weddingPrijs1 = 3000; wellnessPrijs1 = 4213; rm.VoegLimousineToe(naam, uurPrijs, nightlifePrijs1, weddingPrijs1, wellnessPrijs1); limoId++; res = rm.ReservatieMakenEnReturnen(klantNr, startDatum, arrengement, startUur, duur, limoId, stalLocatie, eindLocatie, verwachtAdres); Assert.IsTrue(res.StandaarUurPrijs == 100, "De standaard uurprijs werd niet correct afgerond."); Assert.IsTrue(res.NachtUurPrijs == 215, "De nachtuur prijs werd niet correct afgerond."); startDatum = startDatum.AddDays(1); naam = "testLimo4"; uurPrijs = 153; nightlifePrijs1 = 2500; weddingPrijs1 = 3000; wellnessPrijs1 = 4213; rm.VoegLimousineToe(naam, uurPrijs, nightlifePrijs1, weddingPrijs1, wellnessPrijs1); limoId++; res = rm.ReservatieMakenEnReturnen(klantNr, startDatum, arrengement, startUur, duur, limoId, stalLocatie, eindLocatie, verwachtAdres); Assert.IsTrue(res.StandaarUurPrijs == 100, "De standaard uurprijs werd niet correct afgerond."); Assert.IsTrue(res.NachtUurPrijs == 215, "De nachtuur prijs werd niet correct afgerond."); startDatum = startDatum.AddDays(1); naam = "testLimo5"; uurPrijs = 154; nightlifePrijs1 = 2500; weddingPrijs1 = 3000; wellnessPrijs1 = 4213; rm.VoegLimousineToe(naam, uurPrijs, nightlifePrijs1, weddingPrijs1, wellnessPrijs1); limoId++; res = rm.ReservatieMakenEnReturnen(klantNr, startDatum, arrengement, startUur, duur, limoId, stalLocatie, eindLocatie, verwachtAdres); Assert.IsTrue(res.StandaarUurPrijs == 100, "De standaard uurprijs werd niet correct afgerond."); Assert.IsTrue(res.NachtUurPrijs == 215, "De nachtuur prijs werd niet correct afgerond."); startDatum = startDatum.AddDays(1); naam = "testLimo6"; uurPrijs = 155; nightlifePrijs1 = 2500; weddingPrijs1 = 3000; wellnessPrijs1 = 4213; rm.VoegLimousineToe(naam, uurPrijs, nightlifePrijs1, weddingPrijs1, wellnessPrijs1); limoId++; res = rm.ReservatieMakenEnReturnen(klantNr, startDatum, arrengement, startUur, duur, limoId, stalLocatie, eindLocatie, verwachtAdres); Assert.IsTrue(res.StandaarUurPrijs == 100, "De standaard uurprijs werd niet correct afgerond."); Assert.IsTrue(res.NachtUurPrijs == 215, "De nachtuur prijs werd niet correct afgerond."); startDatum = startDatum.AddDays(1); naam = "testLimo7"; uurPrijs = 156; nightlifePrijs1 = 2500; weddingPrijs1 = 3000; wellnessPrijs1 = 4213; rm.VoegLimousineToe(naam, uurPrijs, nightlifePrijs1, weddingPrijs1, wellnessPrijs1); limoId++; res = rm.ReservatieMakenEnReturnen(klantNr, startDatum, arrengement, startUur, duur, limoId, stalLocatie, eindLocatie, verwachtAdres); Assert.IsTrue(res.StandaarUurPrijs == 100, "De standaard uurprijs werd niet correct afgerond."); Assert.IsTrue(res.NachtUurPrijs == 220, "De nachtuur prijs werd niet correct afgerond."); startDatum = startDatum.AddDays(1); naam = "testLimo8"; uurPrijs = 157; nightlifePrijs1 = 2500; weddingPrijs1 = 3000; wellnessPrijs1 = 4213; rm.VoegLimousineToe(naam, uurPrijs, nightlifePrijs1, weddingPrijs1, wellnessPrijs1); limoId++; res = rm.ReservatieMakenEnReturnen(klantNr, startDatum, arrengement, startUur, duur, limoId, stalLocatie, eindLocatie, verwachtAdres); Assert.IsTrue(res.StandaarUurPrijs == 100, "De standaard uurprijs werd niet correct afgerond."); Assert.IsTrue(res.NachtUurPrijs == 220, "De nachtuur prijs werd niet correct afgerond."); startDatum = startDatum.AddDays(1); naam = "testLimo9"; uurPrijs = 158; nightlifePrijs1 = 2500; weddingPrijs1 = 3000; wellnessPrijs1 = 4213; rm.VoegLimousineToe(naam, uurPrijs, nightlifePrijs1, weddingPrijs1, wellnessPrijs1); limoId++; res = rm.ReservatieMakenEnReturnen(klantNr, startDatum, arrengement, startUur, duur, limoId, stalLocatie, eindLocatie, verwachtAdres); Assert.IsTrue(res.StandaarUurPrijs == 105, "De standaard uurprijs werd niet correct afgerond."); Assert.IsTrue(res.NachtUurPrijs == 220, "De nachtuur prijs werd niet correct afgerond."); }
public Reservatie ReservatieMakenEnReturnen(int klantNr, DateTime startDatum, Arrengement arrengement, int startUur, int duur, int limoId, StalLocatie startStalLocatie, StalLocatie aankomstStalLocatie, string verwachtAdres) { Klant klant = VindVolledigeKlantVoorKlantNummer(klantNr); Limousine limo = VindLimousineVoorId(limoId); double korting = 0; if (klant.Categorie.StaffelKorting != null) { korting = BerekenKortingsPercentage(klant, startDatum); } Reservatie res = new Reservatie(klant, startDatum, arrengement, startUur, duur, limo, DateTime.Now, startStalLocatie, aankomstStalLocatie, verwachtAdres, korting); VoegReservatieToe(res); return(res); }
public void ReservatieMakenZonderReturnen(int klantNr, DateTime startDatum, Arrengement arrengement, int startUur, int duur, int limoId, StalLocatie startStalLocatie, StalLocatie aankomstStalLocatie, string verwachtAdres) { var res = ReservatieMakenEnReturnen(klantNr, startDatum, arrengement, startUur, duur, limoId, startStalLocatie, aankomstStalLocatie, verwachtAdres); }
public Reservatie(Klant klant, DateTime startDatum, Arrengement arrengement, int startUur, int aantalUur, Limousine limo, DateTime datumVanAanmaakReservatie, StalLocatie startStalLocatie, StalLocatie aankomstStalLocatie, string verwachtAdres, double aangerekendeKorting) { if (startDatum.Hour != 0) { throw new IncorrectParameterException("Startdatum werd niet correct geleverd: mag geen uur bevatten, dit wordt in de startuur parameter geleverd"); } if (startDatum.Minute != 0) { throw new IncorrectParameterException("Startdatum mag geen minuten bevatten: Reservaties beginnen altijd op het uur"); } if (startUur < 0 || aantalUur < 0) { throw new IncorrectParameterException("Startuur en aantal uur mogen niet negatief zijn"); } if (aantalUur > 11 || aantalUur == 0) { throw new IncorrectParameterException("Elk arrengement moet minstens 1u duren en mag niet langer duren dan 11u"); } //business regels if (arrengement == Arrengement.Wellness) { if (aantalUur != 10) { throw new IncorrectParameterException("Een wellness arrengement duurt altijd 10u"); } if (startUur > 12 || startUur < 7) { throw new IncorrectParameterException("Een wellness arrengement begint altijd tussen 7 en 12u"); } } else if (arrengement == Arrengement.NightLife) { if (aantalUur < 7) { throw new IncorrectParameterException("Een nightlife arrengement duurt altijd minstens 7u"); } if (startUur < 20 && startUur != 0) { throw new IncorrectParameterException("Een nightlife arrengement begint altijd tussen 20 en 24u"); } } else if (arrengement == Arrengement.Wedding) { if (aantalUur < 7) { throw new IncorrectParameterException("Een wedding arrengement duurt altijd minstens 7u"); } if (startUur > 15 || startUur < 7) { throw new IncorrectParameterException("Een wedding arrengement begint altijd tussen 7 en 15u"); } } StartMoment = startDatum.AddHours(startUur); if (StartMoment < datumVanAanmaakReservatie) { throw new IncorrectParameterException("Er mag geen reservatie in het verleden worden aangemaakt."); } Klant = klant; DatumVanReservering = datumVanAanmaakReservatie; // ReserveringsNummer = reservatieNummer; Limousine = limo; StartStalLocatie = startStalLocatie; AankomstStalLocatie = aankomstStalLocatie; Arrengement = arrengement; AantalUur = aantalUur; AangerekendeKorting = aangerekendeKorting; VerwachtAdres = verwachtAdres; if (TotaalTeBetalen == 0) { PrijsBerekening(); } }
public void VindReservatiesVoorKlantNaamEnDatumTest() { ReservatieManager rm = new ReservatieManager(new TestDataBaseHandler()); string klantNaam = "testklant1"; string klantenCategorie = "testCategorie"; string btwNummer = "TestBTwNummer123456789"; string adres = "TestAdres"; rm.VoegKlantToe(klantNaam, klantenCategorie, btwNummer, adres); string naam = "testLimo1"; int uurPrijs = 150; int nightlifePrijs1 = 2500; int weddingPrijs1 = 3000; int wellnessPrijs1 = 4213; rm.VoegLimousineToe(naam, uurPrijs, nightlifePrijs1, weddingPrijs1, wellnessPrijs1); string klantNaam2 = "testklant12"; string klantenCategorie2 = "testCategorie"; string btwNummer2 = "TestBTwNummer123456789"; string adres2 = "TestAdres"; rm.VoegKlantToe(klantNaam2, klantenCategorie2, btwNummer2, adres2); string klantNaam3 = "EenAndereKlantOmLeegTeLaten"; string klantenCategorie3 = "testCategorie"; string btwNummer3 = "TestBTwNummer123456789"; string adres3 = "TestAdres"; rm.VoegKlantToe(klantNaam3, klantenCategorie3, btwNummer3, adres3); int klantNr = 1; int limoId = 1; DateTime startDatum = new DateTime(2100, 8, 13); Arrengement arrengement = Arrengement.NightLife; int startUur = 22; int duur = 9; StalLocatie stalLocatie = StalLocatie.Antwerpen; StalLocatie eindLocatie = StalLocatie.Gent; string verwachtAdres = "testAdres1 25 testGemeente"; rm.ReservatieMakenZonderReturnen(klantNr, startDatum, arrengement, startUur, duur, limoId, stalLocatie, eindLocatie, verwachtAdres); int klantNr2 = 2; int limoId2 = 1; DateTime startDatum2 = new DateTime(2100, 8, 13); Arrengement arrengement2 = Arrengement.NightLife; int startUur2 = 22; int duur2 = 7; StalLocatie stalLocatie2 = StalLocatie.Antwerpen; StalLocatie eindLocatie2 = StalLocatie.Gent; string verwachtAdres2 = "testAdres2 50 testGemeente"; rm.ReservatieMakenZonderReturnen(klantNr2, startDatum2, arrengement2, startUur2, duur2, limoId2, stalLocatie2, eindLocatie2, verwachtAdres2); int klantNr3 = 2; int limoId3 = 1; DateTime startDatum3 = new DateTime(2100, 8, 14); Arrengement arrengement3 = Arrengement.NightLife; int startUur3 = 22; int duur3 = 7; StalLocatie stalLocatie3 = StalLocatie.Antwerpen; StalLocatie eindLocatie3 = StalLocatie.Gent; string verwachtAdres3 = "testAdres3 75 testGemeente"; rm.ReservatieMakenZonderReturnen(klantNr3, startDatum3, arrengement3, startUur3, duur3, limoId3, stalLocatie3, eindLocatie3, verwachtAdres3); var result = rm.VindReservatiesVoorKlantNaamEnDatum(klantNaam, startDatum); Assert.IsTrue(result.Count == 2); result = rm.VindReservatiesVoorKlantNaamEnDatum(klantNaam2, startDatum); Assert.IsTrue(result.Count == 1); result = rm.VindReservatiesVoorKlantNaamEnDatum(klantNaam3, startDatum3); Assert.IsTrue(result.Count == 0); }
public void GeefBeschikbareLimousines_Test_ControleerKoppeling() { ReservatieManager rm = new ReservatieManager(new TestDataBaseHandler()); string klantNaam = "testklant1"; string klantenCategorie = "testCategorie"; string btwNummer = "TestBTwNummer123456789"; string adres = "TestAdres"; rm.VoegKlantToe(klantNaam, klantenCategorie, btwNummer, adres); string naam = "testLimo1"; int uurPrijs = 150; int nightlifePrijs1 = 2500; int weddingPrijs1 = 3000; int wellnessPrijs1 = 4213; rm.VoegLimousineToe(naam, uurPrijs, nightlifePrijs1, weddingPrijs1, wellnessPrijs1); string naam2 = "testLimo2"; int uurPrijs2 = 150; int nightlifePrijs2 = 2500; int weddingPrijs2 = 3000; int wellnessPrijs2 = 4213; rm.VoegLimousineToe(naam2, uurPrijs2, nightlifePrijs2, weddingPrijs2, wellnessPrijs2); int klantNr = 1; int limoId = 1; DateTime startDatum = new DateTime(2100, 8, 12); Arrengement arrengement = Arrengement.Business; int startUur = 7; int duur = 3; StalLocatie stalLocatie = StalLocatie.Antwerpen; StalLocatie eindLocatie = StalLocatie.Gent; string verwachtAdres = "testAdres1 25 testGemeente"; rm.ReservatieMakenZonderReturnen(klantNr, startDatum, arrengement, startUur, duur, limoId, stalLocatie, eindLocatie, verwachtAdres); int klantNr2 = 1; int limoId2 = 2; DateTime startDatum2 = new DateTime(2100, 8, 12); Arrengement arrengement2 = Arrengement.Airport; int startUur2 = 13; int duur2 = 7; StalLocatie stalLocatie2 = StalLocatie.Antwerpen; StalLocatie eindLocatie2 = StalLocatie.Gent; string verwachtAdres2 = "testAdres1 25 testGemeente"; rm.ReservatieMakenZonderReturnen(klantNr2, startDatum2, arrengement2, startUur2, duur2, limoId2, stalLocatie2, eindLocatie2, verwachtAdres2); DateTime startMoment1 = startDatum.AddHours(startUur); DateTime startMoment2 = startDatum2.AddHours(startUur2); Assert.IsTrue(rm.GeefBeschikbareLimousinesVoorPeriode(startMoment1, startMoment1.AddHours(duur)).Count == 0); Assert.IsTrue(rm.GeefBeschikbareLimousinesVoorPeriode(new DateTime(2101, 8, 12, 10, 0, 0), new DateTime(2101, 8, 12, 19, 0, 0)).Count == 2); Assert.IsTrue(rm.GeefBeschikbareLimousinesVoorPeriode(startMoment1.AddHours(-12), startMoment1.AddHours(-6)).Count == 2); Assert.IsTrue(rm.GeefBeschikbareLimousinesVoorPeriode(startMoment2.AddHours(duur2 + 7), startMoment2.AddHours(duur2 + 8)).Count == 2); var limos = rm.GeefBeschikbareLimousinesVoorPeriode(startMoment1.AddHours(duur + 6), startMoment1.AddHours(duur + 8)); Assert.IsTrue(limos.Count == 1); Assert.IsTrue(limos[0].Id == 1); limos = rm.GeefBeschikbareLimousinesVoorPeriode(startMoment2.AddHours(-10), startMoment2.AddHours(-6)); Assert.IsTrue(limos.Count == 1); Assert.IsTrue(limos[0].Id == 2); limos = rm.GeefBeschikbareLimousinesVoorPeriode(startMoment2.AddHours(-10), startMoment2.AddHours(-5)); Assert.IsTrue(limos.Count == 0); limos = rm.GeefBeschikbareLimousinesVoorPeriode(startMoment1.AddHours(5), startMoment1.AddHours(8)); Assert.IsTrue(limos.Count == 0); }