예제 #1
0
        public string ObterBodyParaEnvioEmail(ConvocadoViewModel convocacao)
        {
            var context     = new ApplicationDbContext();
            var userManager = new UserManager <ApplicationUser>(new UserStore <ApplicationUser>(context));

            var dadosCandidato = userManager.FindByEmail(convocacao.Email);

            var dadosConvocacao = _convocacaoService.GetOne(a =>
                                                            a.ProcessoId.Equals(convocacao.ProcessoId) && a.ConvocadoId.Equals(convocacao.ConvocadoId));
            var dadosProcesso = _processoAppService.GetById(convocacao.ProcessoId);

            var contentEmail = _sysConfig.GetHelpFile("EmailDeConvocacao");
            var body         = GetTagContent(contentEmail, "body");

            if (body == string.Empty)
            {
                return(string.Empty);
            }

            var senhaCandidato = _passwordGenerator.GetPassword();

            userManager.RemovePassword(dadosCandidato.Id);
            userManager.AddPassword(dadosCandidato.Id, senhaCandidato);

            body = body.Replace("{DATA}", dadosConvocacao.DataEntregaDocumentos.ToString());
            body = body.Replace("{HORA}", dadosConvocacao.HorarioEntregaDocumento);
            body = body.Replace("{ENDERECO}", dadosConvocacao.EnderecoEntregaDocumento);
            body = body.Replace("{NOMECONVOCACAO}", dadosProcesso.Nome);
            body = body.Replace("{USUARIO}", convocacao.Nome);
            body = body.Replace("{SENHA}", senhaCandidato);

            return(body);
        }
 public ConvocacaoViewModel GetOne(Expression <Func <Convocacao, bool> > predicate)
 {
     return(Mapper.Map <Convocacao, ConvocacaoViewModel>(_convocacaoService.GetOne(predicate)));
 }