Exemple #1
0
        public IActionResult CreateVenue([FromBody] VenueCreateDto venue)
        {
            try
            {
                if (venue == null)
                {
                    return(BadRequest());
                }

                if (!ModelState.IsValid)
                {
                    return(BadRequest(ModelState));
                }

                var venueToAdd = Mapper.Map <Entities.Venue>(venue);

                _repository.AddVenue(venueToAdd);

                if (!_repository.Save())
                {
                    return(StatusCode(500, "A problem occurred adding the venue"));
                }

                var newVenue = Mapper.Map <VenueDto>(venueToAdd);

                return(CreatedAtRoute("GetVenue", new { newVenue.Id }, newVenue));
            }
            catch (Exception ex)
            {
                _logger.LogCritical($"Exception adding venue", ex);
                return(StatusCode(500, "A problem occurred handling your request"));
            }
        }
Exemple #2
0
        public IActionResult CreateVoxEvent([FromBody] VoxEventCreateDto voxEvent)
        {
            try
            {
                if (voxEvent == null)
                {
                    return(BadRequest());
                }

                if (!ModelState.IsValid)
                {
                    return(BadRequest(ModelState));
                }

                var voxEventToAdd = Mapper.Map <Entities.VoxEvent>(voxEvent);

                _repository.AddVoxEvent(voxEventToAdd);

                if (!_repository.Save())
                {
                    return(StatusCode(500, "A problem occurred handling your request"));
                }

                var newVoxEvent = Mapper.Map <VoxEventDto>(voxEventToAdd);

                return(CreatedAtRoute("GetVoxEvent", new { id = newVoxEvent.Id }, newVoxEvent));
            }
            catch (Exception ex)
            {
                _logger.LogCritical($"Exception creating Vox event", ex);
                return(StatusCode(500, "A problem occurred handling your request"));
            }
        }
Exemple #3
0
        public IActionResult CreateMember([FromBody] MemberCreateDto member)
        {
            try
            {
                if (member == null)
                {
                    return(BadRequest());
                }

                if (!ModelState.IsValid)
                {
                    return(BadRequest(ModelState));
                }

                var memberToAdd = Mapper.Map <Entities.Member>(member);

                _repository.AddMember(memberToAdd);

                if (!_repository.Save())
                {
                    return(StatusCode(500, "A problem occurred handling your request"));
                }

                var newMember = Mapper.Map <MemberDto>(memberToAdd);

                return(CreatedAtRoute("GetMember", new
                                      { id = newMember.Id }, newMember));
            }
            catch (Exception ex)
            {
                _logger.LogCritical($"Exception adding member", ex);
                return(StatusCode(500, "A problem occurred handling your request"));
            }
        }
Exemple #4
0
        public IActionResult CreateMemberAvailability(int memberId,
                                                      [FromBody] MemberAvailabilityCreateDto availability)
        {
            try
            {
                if (_repository.AvailabilityExists(memberId, availability.VoxEventId))
                {
                    _logger.LogInformation($"Availability for member {memberId} event {availability.VoxEventId} already exists");
                    return(BadRequest());
                }

                if (availability == null)
                {
                    return(BadRequest());
                }

                if (!ModelState.IsValid)
                {
                    return(BadRequest());
                }

                if (!_repository.MemberExists(memberId))
                {
                    return(NotFound());
                }

                var finalMemberAvailability = Mapper.Map <Entities.Availability>(availability);

                _repository.AddMemberAvailability(memberId, finalMemberAvailability);

                if (!_repository.Save())
                {
                    return(StatusCode(500, "A problem occurred handling your request"));
                }

                var newAvailability = Mapper.Map <MemberAvailabilityDto>(finalMemberAvailability);

                return(CreatedAtRoute("GetAvailability", new
                {
                    memberId,
                    voxEventId = newAvailability.VoxEventId
                }, newAvailability));
            }
            catch (Exception ex)
            {
                _logger.LogCritical($"Exception adding member id {memberId}'s availability", ex);
                return(StatusCode(500, "A white person's problem occurred handling your request"));
            }
        }