Esempio n. 1
0
        public async Task <ActionResult> AddEventParticipants(Guid eventId, Guid[] users)
        {
            if (eventId == null || await _service.GetEventAsync(eventId) == null)
            {
                return(BadRequest(new ErrorResponseFormat(Constants.Errors.EVENT_NOT_FOUND)));
            }

            if (!await _service.CanParticipate(eventId, users))
            {
                return(BadRequest(new ErrorResponseFormat(
                                      Constants.Errors.EXCEEDED_PARTICIPANTS_COUNT_LIMIT)));
            }

            if (!await _service.AlreadyParticipate(eventId, users))
            {
                return(BadRequest(new ErrorResponseFormat(
                                      Constants.Errors.USER_ALREADY_PARTICIPATE)));
            }

            var result = await _service.AddEventParticipant(eventId, users);

            return(Ok());
        }