//Notifica os Alunos que já tiveram o primeiro envio e mantem a logica de 3 envio 1 a cada 7 dias e inativa o maior de 30 dias public void NotificarAlunosQuestionarioAssociacaoEnvio() { var mail = new ManterEmail(); var notificacao = new ManterNotificacao(); var confSistema = new ManterConfiguracaoSistema().ObterConfiguracaoSistemaPorID((int)enumConfiguracaoSistema.EnderecoPortal30); var manterQuestionariosAssociacaoEnvio = new ManterQuestionarioAssociacaoEnvio(); var questionariosAssociacaoEnvio = manterQuestionariosAssociacaoEnvio.ObterPorIntervalo(Intervalo); foreach (var questionarioAssociacaoEnvio in questionariosAssociacaoEnvio) { var dtoNotificarAluno = new DTONotificarAlunoQuestionarioPos() { Usuario = questionarioAssociacaoEnvio.Usuario, Turma = questionarioAssociacaoEnvio.QuestionarioAssociacao.Turma }; NotificarAlunos(dtoNotificarAluno, mail, notificacao, confSistema); manterQuestionariosAssociacaoEnvio.Atualizar(questionarioAssociacaoEnvio); } }
//Notificar Alunos public DTONotificarAlunoQuestionarioPos NotificarAlunos(DTONotificarAlunoQuestionarioPos dtoNotificarAluno, ManterEmail mail, ManterNotificacao notificacao, ConfiguracaoSistema confSistema) { var turma = dtoNotificarAluno.Turma.Nome; var idTurma = dtoNotificarAluno.Turma.ID; var email = dtoNotificarAluno.Usuario.Email; var usuario = dtoNotificarAluno.Usuario.Nome; var idUsuario = dtoNotificarAluno.Usuario.ID; var sidUsuario = dtoNotificarAluno.Usuario.SID_Usuario; var linkRedirect = string.Format("minhasinscricoes/questionario/pos/turma/{0}", idTurma); var link = string.Format("{0}networkLoginAuto/{1}/{2}", confSistema.Registro, System.Web.HttpContext.Current.Server.UrlEncode(Base64Encode(InfraEstrutura.Core.Helper.CriptografiaHelper.Criptografar(sidUsuario))), Base64Encode(linkRedirect)); var mensagem = ObterCorpo(usuario, turma, link); var assunto = "Questionário de avaliação do curso: " + turma; mail.EnviarEmail(email, assunto, mensagem, throwException: false); //notificacao.PublicarNotificacao(linkRedirect, mensagem, idUsuario); return(dtoNotificarAluno); }