Exemple #1
0
        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));
            }
        }
Exemple #2
0
        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));
        }