/// <summary>
        /// Aprova ou reprova o aluno de acordo com o Status da MatriculaOferta.
        /// </summary>
        /// <param name="matriculaOferta"></param>
        /// <param name="prevAutorizacao"></param>
        /// <returns></returns>
        private static bool?IsAutorizado(MatriculaOferta matriculaOferta, bool?prevAutorizacao)
        {
            if (matriculaOferta.IsAprovado())
            {
                return(true);
            }

            if (matriculaOferta.IsCancelado() || matriculaOferta.IsAbandono() ||
                matriculaOferta.IsReprovado() || matriculaOferta.IsDesistencia())
            {
                return(false);
            }

            return(prevAutorizacao);
        }
        private void PreencherCertificado(MatriculaOferta itemHistorico, DTOItemHistoricoAcademico item, Usuario usuario)
        {
            if (itemHistorico.IsAprovado() && !itemHistorico.IsOuvinte())
            // Alunos com o status de Ouvinte não podem emitir certificados.
            {
                item.TemCertificado = itemHistorico.Oferta.CertificadoTemplate != null;
                item.CargaHoraria   = itemHistorico.Oferta.CargaHoraria.ToString();

                if (itemHistorico.Oferta.SolucaoEducacional.Fornecedor.ID == (int)enumFornecedor.FGVOCW)
                {
                    var nomeArquivoOriginal = "FGVOCW_" + itemHistorico.Usuario.CPF + "_" +
                                              itemHistorico.Oferta.IDChaveExterna + ".pdf";
                    var mFS        = new ManterFileServer();
                    var fileServer = mFS.ObterFileServerPorFiltro(new FileServer
                    {
                        NomeDoArquivoOriginal = nomeArquivoOriginal,
                        MediaServer           = true
                    }).FirstOrDefault();
                    item.TemCertificado = true;
                    if (fileServer != null)
                    {
                        item.LKCertificado =
                            Util.Classes.ConfiguracaoSistemaUtil.ObterInformacoes(enumConfiguracaoSistema.EnderecoSGUS)
                            .Registro + "/MediaServer.ashx?Identificador=" + fileServer.ID;
                    }
                    else
                    {
                        item.LKCertificado = "http://www5.fgv.br/ucsebraeocw/CertificadoCursoGratuitoOnline.aspx?cpf=" +
                                             itemHistorico.Usuario.CPF + "&oferta=" +
                                             itemHistorico.Oferta.IDChaveExterna;
                    }
                }

                // Link de acesso ao curso - Somente se tiver sido aprovado
                if (itemHistorico.MatriculaTurma != null && itemHistorico.MatriculaTurma.FirstOrDefault() != null)
                {
                    var matTurma = itemHistorico.MatriculaTurma.FirstOrDefault();
                    if (matTurma.Turma.AcessoAposConclusao)
                    {
                        item.LKAcesso = string.IsNullOrEmpty(matTurma.MatriculaOferta.LinkAcesso)
                            ? (new ConsultarMeusCursos()).ConsultarLinkAcessoFornecedor(
                            matTurma.MatriculaOferta.Oferta.SolucaoEducacional.Fornecedor, usuario,
                            matTurma.MatriculaOferta.Oferta.CodigoMoodle.ToString())
                            : matTurma.MatriculaOferta.LinkAcesso;
                    }
                }
            }
        }