public static BookingStatusDto ToObject(this BookingStatusResponse model)
 {
     return new BookingStatusDto()
     {
         IsRequestSuccess = model.IsRequestSuccess,
         BookingId = model.BookingId,
         Status = model.BookingStatus,
         AuthenticationError = new BaseDtos.AuthenticatedErrorDto(model.Success, model.Status, model.Message),
         ValidationError = new BaseDtos.ValidationErrorDto(model.ErrorMessage, model.ErrorDetails.LockerStationId, model.ErrorDetails.LspId, model.ErrorDetails.BookingId)
     };
 }
        public async Task <BookingStatusResponse> BookingStatus(BookingStatusRequest bookingStatusModel, ViatorSetting setting = null)
        {
            var uri      = $"/service/booking/status";
            var response = await _httpClient.PostAsync <BookingStatusRequest>(GenerateBaseURL(uri, setting), bookingStatusModel);

            if (response.IsSuccessStatusCode)
            {
                var content = response.Content.ReadAsStringAsync().Result;
                var result  = BookingStatusResponse.FromJson(content);
                return(result);
            }
            else
            {
                throw new Exception("Viator API - Booking Status: Api error response");
            }
        }
Exemple #3
0
        public BookingStatusResponse GetBookingStatus(BookingStatusRequest request)
        {
            var response = new BookingStatusResponse();

            using (var context = new SpartanHotelsEntities())
            {
                var userReservation = context.Reservations.FirstOrDefault(rs => (rs.BookingNum == request.BookingNumber));

                if (userReservation != null)
                {
                    response.BookingNumber      = userReservation.BookingNum;
                    response.ConfirmationNumber = userReservation.ConfirmationNum.ToString();
                    response.StatusCode         = (BookingStatus)userReservation.BookStatusID;
                }
                else
                {
                    //return.. invalid input, reservation doesnt exists
                }
            }

            return(response);
        }