コード例 #1
0
        public async Task DeleteAsync(int issuerId, int eventId)
        {
            var newRequest = new EventParticipationRequest
            {
                IssuerId = issuerId,
                EventId  = eventId
            };

            _repository.EventParticipationRequest.DeleteRequest(newRequest);
            await _repository.EventParticipationRequest.SaveAsync();
        }
コード例 #2
0
        public async Task <EventParticipationRequestResponse> CreateAndReturnAsync(
            int issuerId, int eventId)
        {
            var isEventAdmin = _repository.EventAdmins.IsUserAdminById(eventId, issuerId);

            if (isEventAdmin)
            {
                var newParticipant = new EventParticipants
                {
                    EventId = eventId, ParticipantId = issuerId
                };
                _repository.EventParticipants.Create(newParticipant);
                await _repository.SaveAsync();

                return(new EventParticipationRequestResponse
                {
                    CreationResult =
                        EventParticipationRequestCreationResult.RequestByAdmin,
                    CreatedEntity = newParticipant
                });
            }

            var newRequest = new EventParticipationRequest
            {
                IssuerId = issuerId,
                EventId  = eventId
            };

            _repository.EventParticipationRequest.CreateRequest(newRequest);
            await _repository.SaveAsync();

            return(new EventParticipationRequestResponse
            {
                CreationResult = EventParticipationRequestCreationResult.CreatedForUser,
                CreatedEntity = newRequest
            });
        }