public async Task <IActionResult> ReservationTicketPost(ViewCreateReservation viewCreateReservation) { Person currentuser = await GetCurrentUserAsync(); TblFestivalsDTO tblFestivalsDTO = new TblFestivalsDTO() { MusicEvenementName = viewCreateReservation.SelectedFestival }; var GetFestivalId = _FestivalRepo.GetFestivalName(tblFestivalsDTO); TblPriceDTO tblPriceDTO = new TblPriceDTO() { Name = viewCreateReservation.SelectedPriceType }; var GetFestivalTypeId = _FestivalRepo.GetFestivalTypeCategory(tblPriceDTO); TblReservation tblReservation = new TblReservation() { MusicEvementId = GetFestivalId.Result.MusicEvenementId, Price = GetFestivalTypeId.Result }; var getPrice = await _FestivalRepo.GetPriceofCurrentFestivalType(tblReservation); TblReservationDTO tblReservationDTO = new TblReservationDTO() { MusicEvement = new TblFestivalsDTO() { MusicEvenementName = viewCreateReservation.SelectedFestival, Name = viewCreateReservation.SelectedPriceType }, Price = new TblPriceDTO() { Name = viewCreateReservation.SelectedPriceType, Price = getPrice.Price }, User = new AspNetUserDTO() { Email = currentuser.Email } }; await _reservationsController.PostReservation(tblReservationDTO); AspNetUsers user = new AspNetUsers() { Id = currentuser.Id, Email = currentuser.Email }; var model = await _reservationRepo.GetReservationsOfUser(user); if (model.Count == 0) { return(RedirectToAction("ReservationTicket")); } else { return(View("Reservations", model)); } }
public async Task <IActionResult> Reservation(ReservationModel reservationModel) { if (ModelState.IsValid) { TblPerson tblPerson = new TblPerson { FirstName = reservationModel.FirstName, LastName = reservationModel.LastName, EmailAddress = reservationModel.EmailAddress, PhoneNumber = reservationModel.PhoneNumber, StreetNumber = reservationModel.StreetNumber, StreetName = reservationModel.StreetName, City = reservationModel.City, PostalCode = reservationModel.PostalCode, Country = reservationModel.Country, }; await _context.TblPerson.AddAsync(tblPerson); TblReservation tblReservation = new TblReservation { PersonId = tblPerson.PersonId, RoomNumber = reservationModel.RoomNumber, ExpectedArriveDate = reservationModel.ExpectedArrivalDate, ExpectedLeaveDate = reservationModel.ExpectedLeaveDate, ReservationNotes = reservationModel.Notes, }; await _context.TblReservation.AddAsync(tblReservation); await _context.SaveChangesAsync(); return(Redirect("/")); } return(View()); }
public async Task AddnewReservatie(TblReservation tblReservation) { try { if (tblReservation != null) { _backedProContext.TblReservation.Add(tblReservation); await _backedProContext.SaveChangesAsync(); } }catch (Exception ex) { throw new ArgumentException(ex.Message); } }
public async Task <IActionResult> EditReservation(ReservationModel reservationModel) { if (ModelState.IsValid) { TblPerson tblPerson = new TblPerson { PersonId = reservationModel.PersonID, FirstName = reservationModel.FirstName, LastName = reservationModel.LastName, City = reservationModel.City, Country = reservationModel.Country, EmailAddress = reservationModel.EmailAddress, PhoneNumber = reservationModel.PhoneNumber, PostalCode = reservationModel.PostalCode, StreetName = reservationModel.StreetName, StreetNumber = reservationModel.StreetNumber, }; TblReservation tblReservation = new TblReservation { ReservationId = reservationModel.ReservationID, PersonId = tblPerson.PersonId, ExpectedArriveDate = reservationModel.ExpectedArrivalDate, ExpectedLeaveDate = reservationModel.ExpectedLeaveDate, RoomNumber = reservationModel.RoomNumber, ReservationNotes = reservationModel.Notes }; _context.Update(tblPerson); _context.Update(tblReservation); await _context.SaveChangesAsync(); return(Redirect("~/Concierge/Reservations")); } ViewData["RoomNumber"] = new SelectList(_context.TblRooms.Where(s => s.RoomStatus == 0), "RoomNumber", "RoomNumber"); return(View(reservationModel)); }
public async Task <TblPriceDTO> GetPriceofCurrentFestivalType(TblReservation tblReservation) { try { var GetPriceFestivalResult = _backendProjContext.TblPrice.Where(a => a.MusicEvenementId == tblReservation.MusicEvementId && a.Type == tblReservation.Price.Type).Select(y => new TblPriceDTO() { Name = y.TypeNavigation.Name, Price = y.Price }).FirstOrDefault(); if (GetPriceFestivalResult != null) { return(await Task.FromResult(GetPriceFestivalResult)); } else { return(null); } }catch (Exception ex) { throw new ArgumentException(ex.Message); } }
public async Task <TblPrice> GetPrice(TblReservation tblReservation) { try { var GetPriceResult = _backendProjContext.TblPrice.Where(a => a.Price == tblReservation.Price.Price && a.MusicEvenementId == tblReservation.MusicEvementId && a.Type == tblReservation.Price.Type).Select( y => new TblPrice() { Priceid = y.Priceid } ).FirstOrDefault(); if (GetPriceResult != null) { return(await Task.FromResult(GetPriceResult)); } else { return(null); } }catch (Exception ex) { throw new ArgumentException(ex.Message); } }
public async Task <ActionResult> PostReservation([FromBody] TblReservationDTO tblReservationDTO) { try { AspNetUserDTO aspNetUserDTO = new AspNetUserDTO(); aspNetUserDTO.Email = tblReservationDTO.User.Email; AspNetUsers aspNetUser = await _userRepo.GetUser(aspNetUserDTO); TblFestivalsDTO tblFestivalsDTO = new TblFestivalsDTO(); tblFestivalsDTO.MusicEvenementName = tblReservationDTO.MusicEvement.MusicEvenementName; TblFestivals tblFestivals = new TblFestivals(); tblFestivals = await _festivalRepo.GetFestivalName(tblFestivalsDTO); TblPriceDTO tblPriceDTOGetCat = new TblPriceDTO() { Name = tblReservationDTO.Price.Name }; TblPrice tblPriceCat = new TblPrice(); tblPriceCat = await _festivalRepo.GetFestivalTypeCategory(tblPriceDTOGetCat); TblReservation tblTempReservation = new TblReservation(); tblTempReservation.MusicEvementId = tblFestivals.MusicEvenementId; tblTempReservation.Price = new TblPrice() { Price = tblReservationDTO.Price.Price, Type = tblPriceCat.Type }; int NumberOfSeat; if (tblReservationDTO.Seat != null) { NumberOfSeat = tblReservationDTO.Seat.SeatNumber; } else { NumberOfSeat = 0; } TblPrice tblPrice = new TblPrice(); tblPrice = await _festivalRepo.GetPrice(tblTempReservation); Guid NewSeatId = Guid.NewGuid(); Guid NewReservationId = Guid.NewGuid(); TblReservation tblReservation = new TblReservation() { ReservationId = NewReservationId, Userid = aspNetUser.Id, MusicEvementId = tblFestivals.MusicEvenementId, PriceId = tblPrice.Priceid, SeatId = NewSeatId, Seat = new TblSeat() { SeatId = NewSeatId, SeatNumber = NumberOfSeat } }; await _reservationRepo.AddnewReservatie(tblReservation); return(new OkObjectResult(200)); } catch (Exception ex) { return(new StatusCodeResult(400)); } }