Esempio n. 1
0
        public IHttpActionResult Post([FromBody] ReservationViewModel viewModel)
        {
            if (viewModel == null)
            {
                throw new ArgumentNullException("viewModel");
            }
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            //creates a new request for a reservation
            var request = viewModel.ToReservationRequest(User.Identity.GetUserId());

            //saves this reservation to the database
            var result = _reservationAppService.AddNewReservation(request);

            if (result.Status != ActionResultCode.Success)
            {
                var errorResult = GetErrorResult(result);
                return(errorResult ?? BadRequest(ModelState));
            }

            return(Ok(result));
        }