private static void AddErrorMessages(TaxiReservationViewModel newTaxiReservation, string dateValid) { if (dateValid != null) { newTaxiReservation.ErrorMessages.Add(dateValid); } }
public List <string> TaxiReservationValidation(TaxiReservationViewModel newTaxiReservation) { var dateValid = DateValidation(newTaxiReservation); AddErrorMessages(newTaxiReservation, dateValid); return(newTaxiReservation.ErrorMessages); }
public async Task <long> AddTaxiReservationAsync(TaxiReservationViewModel newTaxiReservation, string userId) { var TaxiReservation = mapper.Map <TaxiReservationViewModel, TaxiReservation>(newTaxiReservation); TaxiReservation.UserId = userId; await applicationContext.TaxiReservations.AddAsync(TaxiReservation); await applicationContext.SaveChangesAsync(); await SendEmailAsync(TaxiReservation); return(TaxiReservation.TaxiReservationId); }
public async Task TaxiReservationValidationAsyncTest() { using (var context = new ApplicationContext(options)) { var taxiReservationService = new TaxiReservationService(context, mockMapper.Object, mockUserService.Object, configuration); var taxiReservation = new TaxiReservationViewModel { StartLocal = "Budapest", EndLocal = "Siófok", TaxiReservationStart = new DateTime(2019, 10, 11), NumberOfGuest = 2, PhoneNumber = "05202222" }; List <string> expected = new List <string>() { "The booking cannot begin earlier than today!" }; var actual = taxiReservationService.TaxiReservationValidation(taxiReservation); Assert.Equal(expected, actual); } }
public async Task<IActionResult> AddTaxiReservation(TaxiReservationViewModel newTaxiReservation) { if (ModelState.IsValid) { var errors = taxiReservationService.TaxiReservationValidation(newTaxiReservation); if (errors.Count == 0) { var currentUser = await userManager.GetUserAsync(HttpContext.User); var taxiReservationId = await taxiReservationService.AddTaxiReservationAsync(newTaxiReservation, currentUser.Id); return RedirectToAction(nameof(ReservationController.MyReservation), "Reservation"); } newTaxiReservation.ErrorMessages = errors; return View(newTaxiReservation); } return View(newTaxiReservation); }
private static string DateValidation(TaxiReservationViewModel newTaxiReservation) { var startDate = newTaxiReservation.TaxiReservationStart; return(startDate < DateTime.Today ? "The booking cannot begin earlier than today!" : null); }