public async Task <IActionResult> Adicionar([FromBody] AdicionarTarefaRequest request) { try { string usuarioClaims = _httpContextAccessor.HttpContext.User.FindFirst("Usuario").Value; AutenticarUsuarioResponse usuarioResponse = JsonConvert.DeserializeObject <AutenticarUsuarioResponse>(usuarioClaims); var response = _serviceTarefa.AdicionarTarefa(request, usuarioResponse.Id); return(await ResponseAsync(request, _serviceTarefa)); } catch (Exception ex) { return(await ResponseExceptionAsync(ex)); } }
public AdicionarTarefaResponse AdicionarTarefa(AdicionarTarefaRequest request, Guid idUsuario) { if (request == null) { AddNotification("AdicionarTarefa", MSG.OBJETO_X0_E_OBRIGATORIO.ToFormat("RegistrarVideoRequest")); return(null); } Usuario usuario = _repositoryUsuario.Obter(idUsuario); if (usuario == null) { AddNotification("Usuario", MSG.X0_NAO_INFORMADO.ToFormat("Usuário")); return(null); } ListaDeTarefas listaDeTarefas = null; if (request.IdListaDeTarefas != Guid.Empty) { listaDeTarefas = _repositoryListaDeTarefas.Obter(request.IdListaDeTarefas); if (listaDeTarefas == null) { AddNotification("ListaDeTarefas", MSG.X0_NAO_INFORMADA.ToFormat("lista de tarefas")); return(null); } } var tarefa = new Tarefa(listaDeTarefas, request.Titulo, request.Descricao, request.DataInicio, request.DataConclusao, usuario); AddNotifications(tarefa); if (this.IsInvalid()) { return(null); } _repositoryTarefa.Adicionar(tarefa); return(new AdicionarTarefaResponse(tarefa.Id)); }