public IActionResult Add([FromBody] TalkCreateDto talkCreateDto) { if (talkCreateDto == null) { return(BadRequest()); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } Talk toAdd = AutoMapper.Mapper.Map <Talk>(talkCreateDto); toAdd.Added = DateTime.UtcNow; toAdd.TimerTicks = new List <TimerTick>(); toAdd.UserId = User.Identity.Name; _talksRepository.Add(toAdd); if (!_talksRepository.Save()) { throw new Exception("Creating an item failed on save."); } Talk newItem = _talksRepository.GetSingle(toAdd.Id, User.Identity.Name); return(CreatedAtRoute(nameof(GetSingle), new { id = newItem.Id }, AutoMapper.Mapper.Map <TalkDto>(newItem))); }
public IActionResult GetTimerTicksForTalk(int talkId) { if (_talksRepository.GetSingle(talkId, User.Identity.Name) == null) { return(NotFound()); } var allItems = _timerTicksRepository .GetAll(User.Identity.Name) .Where(x => x.Talk.Id == talkId) .OrderBy(x => x.Id) .ToList(); var viewModels = allItems .Select(x => Mapper.Map <TimerTickDto>(x)).ToList(); return(Ok(viewModels)); }