public DTOTrilhaObjetivos ConsultarSolucoesPorObjetivo(string token, string chaveExterna)
        {
            if (autenticacao == null || !(segurancaAutenticacao.AutenticaFornecedor(autenticacao)))
            {
                throw new Exception("Usuário não autenticado pelo sistema.");
            }
            try
            {
                var manterUsuarioTrilha = new ManterUsuarioTrilha();

                var usuarioTrilha = manterUsuarioTrilha.ObterUsuarioPorToken(token);
                if (usuarioTrilha == null)
                {
                    throw new Exception("Usuário não autenticado pelo sistema.");
                }

                var objetivoTrilhaServices = new ObjetivosTrilhaServices();
                var result = objetivoTrilhaServices.ConsultarObjetivosPorChaveExterna(usuarioTrilha, chaveExterna);

                return(result);
            }
            catch (Exception ex)
            {
                //TODO: Realizar Tratamento de erro para o portal
                return(new DTOTrilhaObjetivos
                {
                    Status = false,
                    Msg = ex.Message
                });
            }
        }
 public DTOTrilhaObjetivos ConsultarObjetivosTrilha(string token)
 {
     if (autenticacao == null || !(segurancaAutenticacao.AutenticaFornecedor(autenticacao)))
     {
         throw new Exception("Usuário não autenticado pelo sistema.");
     }
     try
     {
         var manterUsuarioTrilha = new ManterUsuarioTrilha();
         var usuarioTrilha       = manterUsuarioTrilha.ObterUsuarioPorToken(token);
         if (usuarioTrilha == null)
         {
             throw new Exception("Usuário não autenticado pelo sistema.");
         }
         var objetivoTrilhaServices = new ObjetivosTrilhaServices();
         var result = objetivoTrilhaServices.ConsultarObjetivosTrilha(usuarioTrilha, usuarioTrilha.TrilhaNivel.ID);
         if (result == null)
         {
             result = new DTOTrilhaObjetivos
             {
                 Status = false,
                 Msg    = "Usuário não cadastrado no nível da trilha."
             };
         }
         else
         {
             result.Usuario = new DTOUsuarioObjetivo
             {
                 Nome   = usuarioTrilha.Usuario.Nome,
                 Cpf    = usuarioTrilha.Usuario.CPF,
                 NomeUF = usuarioTrilha.Usuario.UF.Nome,
                 UF     = usuarioTrilha.Usuario.UF.Sigla
             };
             result.Status = true;
         }
         return(result);
     }
     catch (Exception ex)
     {
         //TODO: Realizar Tratamento de erro para o portal
         return(new DTOTrilhaObjetivos
         {
             Status = false,
             Msg = ex.Message
         });
     }
 }