public async Task <EventServiceModel> AddAsync(EventCreationServiceModel entity)
        {
            Event @event = _mapper.Map <EventCreationServiceModel, Event>(entity);
            await _uow.GetRepository <Event>().AddAsync(@event);

            await _uow.SaveChangesAsync();

            await _schedulerService.ScheduleEventById(@event.Id);

            EventServiceModel eventServiceModel = _mapper.Map <Event, EventServiceModel>(@event);

            return(eventServiceModel);
        }
        public async Task <ActionResult <EventModel> > CreateEvent(Guid userId,
                                                                   [FromBody] EventCreationModel eventCreationModel)
        {
            UserServiceModel user = await _userService.GetByPrincipalAsync(User);

            if (user == null || user.Id != userId)
            {
                return(Unauthorized());
            }

            EventCreationServiceModel eventCreationServiceModel = _mapper
                                                                  .Map <EventCreationModel, EventCreationServiceModel>(eventCreationModel);
            EventServiceModel eventServiceModel = await _eventService.AddAsync(eventCreationServiceModel);

            EventModel eventModel = _mapper.Map <EventServiceModel, EventModel>(eventServiceModel);

            return(CreatedAtAction(nameof(GetEvent), new
            {
                eventId = eventModel.Id,
                userId = user.Id
            }, eventModel));
        }