public RetornoWebService AtualizarNotaAlunoMoodle(string chaveExternaSolucao, string chaveExternaTurma,
                                                          string codCurso, string idUsuario, string nota, string dataConclusao)
        {
            try
            {
                //Pega a última turma
                var turma = new BMTurma().ObterUltimaTurmaPorChaveExterna(chaveExternaTurma);

                //Pega o id do pelo cpf(idUsuario) usuário
                var usuario = new BMUsuario().ObterPorCPF(idUsuario);

                if (usuario?.ID > 0)
                {
                    //Pegar a MatriculaOferta
                    var bmMatriculaOrfeta = new BMMatriculaOferta();
                    var matriculaOferta   = bmMatriculaOrfeta.ObterPorOfertaEUsuario(turma.Oferta.ID, usuario.ID);

                    //Pegar a MatriculaTurma
                    var matriculaTurma = new BMMatriculaTurma().ObterMatriculaTurma(usuario.ID, turma.Oferta.ID);

                    double notaFinal;

                    if (double.TryParse(nota, out notaFinal))
                    {
                        matriculaTurma.MediaFinal = notaFinal;
                    }

                    matriculaTurma.DataTermino = DateTime.Now;

                    new BMMatriculaTurma().Salvar(matriculaTurma);

                    if (notaFinal >= 7)
                    {
                        matriculaOferta.StatusMatricula = enumStatusMatricula.Aprovado;
                    }
                    else
                    {
                        matriculaOferta.StatusMatricula = enumStatusMatricula.Reprovado;
                    }

                    bmMatriculaOrfeta.Salvar(matriculaOferta);

                    return(new RetornoWebService()
                    {
                        Erro = 0, Mensagem = string.Empty
                    });
                }

                return(new RetornoWebService()
                {
                    Erro = 1, Mensagem = "usuario não encontrado"
                });
            }
            catch (Exception ex)
            {
                return(new RetornoWebService()
                {
                    Erro = 1, Mensagem = ex.Message
                });
            }
        }