public async Task <ActionResult <TrainingUpdateDTO> > UpdateTraining([FromBody] TrainingUpdateDTO training) { try { var returnedTraining = await _trainingService.UpdateTraining(training); return(Ok(returnedTraining)); } catch (ArgumentNullException exception) { return(NotFound(exception.Message)); } catch (Exception exception) { return(BadRequest(exception.Message)); } }
public async Task <TrainingUpdateDTO> UpdateTraining(TrainingUpdateDTO training) { if (training.StartDate > training.EndDate) { throw new Exception(DictionaryResources.InvalidDates); } var mappedTraining = _mapper.Map <Training>(training); var returnedTraining = await _trainingRepository.UpdateTraining(mappedTraining); var trng = await _trainingRepository.GetTraining(training.Id); if (trng.Reservations.Count() != 0) { await UpdateSignedUpList(trng); } return(_mapper.Map <TrainingUpdateDTO>(returnedTraining)); }