public FindReservationDetailsResponse Find(FindReservationDetailsRequest request)
        {
            try
            {
                _reservationDetailQuery.WithReservation(request.ReservationId);
                _reservationDetailQuery.Sort(request.Sort, request.SortBy);
                var totalRecords = _reservationDetailQuery.TotalRecords();
                _reservationDetailQuery.Paginate(request.StartPage, request.EndPage);
                var reservationDetails = _reservationDetailQuery.Execute();

                return(new FindReservationDetailsResponse
                {
                    ReservationDetails = TypeAdapter.Adapt <List <ReservationDetailResponse> >(reservationDetails),
                    TotalRecords = totalRecords
                });
            }
            catch (DataAccessException)
            {
                throw new ApplicationException();
            }
        }
 public FindReservationDetailsResponse Get(FindReservationDetailsRequest request)
 {
     return(_reservationDetailService.Find(request));
 }