public async Task <IActionResult> CreateTarefaForCategoria(Guid categoriaId, [FromBody] TarefaForCreationDto tarefa) { var categoria = await _repository.Categoria.GetCategoriaAsync(categoriaId, trackChanges : false); if (categoria == null) { _logger.LogInfo($"Categoria with id: {categoriaId} doesn't exist in the database."); return(NotFound()); } var tarefaEntity = _mapper.Map <Tarefa>(tarefa); _repository.Tarefa.CreateTarefaForCategoria(categoriaId, tarefaEntity); await _repository.SaveAsync(); var tarefaToReturn = _mapper.Map <TarefaDto>(tarefaEntity); return(CreatedAtRoute( "GetTarefaPorCategoria", new { categoriaId, id = tarefaToReturn.Id }, tarefaToReturn)); }
public async Task <IActionResult> CreateTarefaAsync([FromBody] TarefaForCreationDto tarefa) { var categoria = HttpContext.Items["categoria"] as Categoria; var tarefaEntity = _mapper.Map <Tarefa>(tarefa); _repository.Tarefa.CreateTarefaForCategoria(categoria.Id, tarefaEntity); await _repository.SaveAsync(); var tarefaToReturn = _mapper.Map <TarefaDto>(tarefaEntity); return(CreatedAtRoute("TarefaById", new { id = tarefaToReturn.Id }, tarefaToReturn)); }