public async Task <IActionResult> DeleteReservation(int id) { var playgroundId = _userManager.GetUserId(User); var acceptedReservation = _reservationRepository.GetPlaygroundReservationById(id); if (acceptedReservation.UserId != null) { await NotifyUser(playgroundId, acceptedReservation, $"Sorry, your reservation request has been rejected for {acceptedReservation.Date} day from {acceptedReservation.StartTime} to {acceptedReservation.EndTime}"); } _reservationRepository.Delete(id); var dataModel = new DataViewModel(); dataModel.Reservations = _reservationRepository.GetReservationsByDay(playgroundId, DateTime.Now.Day, DateTime.Now.Month, DateTime.Now.Year); dataModel.Requests = _reservationRepository.GetRequests(playgroundId); dataModel.IsAdmin = true; if (acceptedReservation.Status == "Accepted") { return(PartialView("_Reservation", dataModel)); } else { return(PartialView("_Request", dataModel)); } }
public IViewComponentResult Invoke(DataViewModel dataModel) { string userId = null; if (dataModel.Entity != null) { userId = dataModel.Entity.Id; } else if (dataModel.Entity == null) { userId = dataModel.CurrentUser.Id; dataModel.Entity = dataModel.CurrentUser; } var requests = _repository.GetRequests(userId); var todayReservations = _repository.GetReservationsByDay(userId, DateTime.Now.Day, DateTime.Now.Month, DateTime.Now.Year).OrderBy(c => c.StartTime); var allReservations = _repository.GetAll(userId); dataModel.Reservations = todayReservations; dataModel.Requests = requests; dataModel.AllReservations = allReservations; return(View("/Components/Reservation/Reservation.cshtml", dataModel)); }