예제 #1
0
        public async Task <ActionResult <TrainingCreateDTO> > CreateTraining([FromBody] TrainingCreateDTO training)
        {
            try
            {
                var returnedTraining = await _trainingService.CreateTraining(training);

                return(Ok(returnedTraining));
            }
            catch (Exception exception)
            {
                return(BadRequest(exception.Message));
            }
        }
예제 #2
0
        public async Task <TrainingCreateDTO> CreateTraining(TrainingCreateDTO training)
        {
            if (training.StartDate > training.EndDate)
            {
                throw new Exception(DictionaryResources.InvalidDates);
            }
            var mappedTraining   = _mapper.Map <Training>(training);
            var returnedTraining = await _trainingRepository.CreateTraining(mappedTraining);

            BackgroundJob.Schedule(() => _cardService.DeleteCardEntries(returnedTraining.Id, returnedTraining.TrainerId, returnedTraining.ClubId), returnedTraining.EndDate);

            BackgroundJob.Schedule(() => SendNotificationIncomingTraining(returnedTraining), returnedTraining.StartDate
                                   .AddHours(-3));

            return(_mapper.Map <TrainingCreateDTO>(returnedTraining));
        }