public async Task Purchase(HotelReservationModel hotel, CancellationToken cancellationToken)
        {
            string cartId      = _cartCookieProvider.GetCartCookie();
            var    updatedCart = await _cartDataProvider.UpsertCartHotel(cartId, hotel.SelectedHotel, hotel.NumberOfDays, cancellationToken);

            if (string.IsNullOrEmpty(cartId))
            {
                _cartCookieProvider.SetCartCookie(updatedCart.Id);
            }
        }
Пример #2
0
        public IHttpActionResult CreateHotelReservation([FromBody] HotelReservationModel hotelReservationModel)
        {
            var userDto = new UserDto();

            userDto.FullName     = hotelReservationModel.User.FullName;
            userDto.Email        = hotelReservationModel.User.Email;
            userDto.Phone        = hotelReservationModel.User.Phone;
            userDto.IsSystemUser = false;
            var saveUser = _userFacade.RegisterClient(userDto, 0, 0);

            hotelReservationModel.UserId = saveUser.UserId;
            var reurnHotelReservation = _hotelReservationFacade.CreateHotelReservation(Mapper.Map <HotelReservationDto>(hotelReservationModel), UserId, TenantId);

            return(Ok(reurnHotelReservation));
        }
        public async Task <HotelReservationModel> Search(SearchModel searchRequest, CancellationToken cancellationToken)
        {
            HotelReservationModel hotelReservation = new HotelReservationModel()
            {
                NumberOfDays = (int)Math.Ceiling(searchRequest.EndDate.Subtract(searchRequest.StartDate).TotalDays)
            };

            hotelReservation.Hotels = await _hotelDataProvider.FindHotels(searchRequest.StartLocation, searchRequest.StartDate, cancellationToken);

            if (searchRequest.IsTest)
            {
                hotelReservation.SelectedHotel = hotelReservation.Hotels.Skip(TestSettings.random.Next(hotelReservation.Hotels.Count() - 1)).First().Id;
            }

            return(hotelReservation);
        }
Пример #4
0
        public async Task <ActionResult> Purchase(HotelReservationModel hotel, CancellationToken cancellationToken)
        {
            await _hotelController.Purchase(hotel, cancellationToken);

            return(RedirectToAction("Index", "Cart"));
        }
Пример #5
0
        public IHttpActionResult EditHotelReservation([FromBody] HotelReservationModel hotelReservationModel)
        {
            var reurnHotelReservation = _hotelReservationFacade.EditHotelReservation(Mapper.Map <HotelReservationDto>(hotelReservationModel), UserId, TenantId);

            return(Ok(reurnHotelReservation));
        }