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)); } }
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)); }