コード例 #1
0
        public IActionResult Create(SeatAddDTO bookings)
        {
            if (bookings.Items.Count == 0 || bookings.Items.Count > 4)
            {
                return(BadRequest("A minimum of 1 and a maximum of 4 seats can be reserved per transaction"));
            }

            try
            {
                var result = _seatAdd.Create(bookings.EventId, bookings.Items);

                foreach (var item in result)
                {
                    _emailProvider.SendConfirmationEmail(item);
                }

                return(Created(new Uri(Request.Host + "/" + Request.Path + "/" + bookings.EventId), bookings));
            }
            catch (ValidationException ex)
            {
                return(BadRequest(ex.Message));
            }
            catch (Exception ex)
            {
                _logger.LogError(ex, "");
                return(StatusCode(500));
            }
        }