/// <summary> /// Utilizado para gerar uma nova senha aleatória de 6 dígitos. /// No fim da atualização, envia um e-mail para o usuário com a nova senha gerada. /// </summary> /// <param name="email">E-mail do usuário</param> public void RecuperarSenha(string email) { var usuario = BuscarPorEmail(email); if (usuario == null) { throw new Exception("E-mail não cadastrado."); } if (usuario.IND_ATIVO == DMN_SIM_NAO.NAO) { throw new Exception("O E-mail cadastrado não está ativo. Favor entrar em contato com a Intech."); } var novaSenha = new Random().Next(100000, 999999); usuario.PWD_USUARIO = Criptografia.Encriptar(novaSenha.ToString()); usuario.IND_BLOQUEADO = DMN_SIM_NAO.NAO; usuario.NUM_TENTATIVA = 0; Atualizar(usuario); var config = AppSettings.Get(); var textoEmail = $"<h2>Bem-Vindo ao Intech EFD-Reinf</h2>" + $"A sua nova senha é {novaSenha}"; EnvioEmail.Enviar(config.Email, usuario.TXT_EMAIL, $"EFD-Reinf - Recuperação de Senha", textoEmail); }
public IActionResult Post([FromBody] EmailEntidade relacionamentoEntidade) { try { DadosPessoaisEntidade dadosPessoais; if (Pensionista) { dadosPessoais = new DadosPessoaisProxy().BuscarPensionistaPorCdPessoa(CdPessoa); } else { dadosPessoais = new DadosPessoaisProxy().BuscarPorCdPessoa(CdPessoa).First(); } var emailConfig = AppSettings.Get().Email; var corpoEmail = $"Nome: {dadosPessoais.NO_PESSOA}<br/>" + $"E-mail: {relacionamentoEntidade.Email}<br/>" + $"Mensagem: {relacionamentoEntidade.Mensagem}"; EnvioEmail.Enviar(emailConfig, emailConfig.EmailRelacionamento, $"Faceb - {relacionamentoEntidade.Assunto}", corpoEmail); return(Ok()); } catch (Exception ex) { return(BadRequest("Ocorreu um erro ao enviar e-mail")); } }
public ValidationResult EnviarEmail(string url, string emailUsuario) { var contaPadrao = _configuracaoContasEmailsServico.ObterContaPadrao(); ValidationResult retorno; if (contaPadrao == null) { retorno = new ValidationResult(); retorno.Add(new ValidationError("Conta Padrão não cadastrada na Ferramenta")); return(retorno); } var destinatario = new List <string> { emailUsuario }; var emailServico = new EnvioEmail(); var html = new StringBuilder(); html.Append("<p><strong>Olá,</strong></p>"); html.Append( "<p>Obrigado por entrar em contato sobre a atualização da sua senha.Para prosseguir basta <span style='color: #ff0000;'><a href='" + url + "' style='color: #ff0000;'>clicar aqui</a>.</span></p>"); html.Append("<p>Caso não tenha solicitado a troca de senha por favor ignore este email.</p>"); html.Append("<p>Att.</p>"); retorno = emailServico.Enviar(contaPadrao.Email, contaPadrao.Descricao, contaPadrao.UsuarioEmail, contaPadrao.SenhaEmail, contaPadrao.NecessarioSsl, contaPadrao.PortaServidorSaida, contaPadrao.ServidorSmtp, "Atualização de Senha", html.ToString(), destinatario, null, null, null, null); return(retorno); }
/// <summary> /// Envia novo e-mail de confirmação de cadastro do usuário. /// </summary> /// <param name="usuario">Usuário a ser enviado o e-mail</param> public void EnviarEmailConfirmacao(UsuarioEntidade usuario) { // Envia e-mail com nova senha de acesso var config = AppSettings.Get(); var textoEmail = $"<h2>Bem-Vindo ao Intech EFD-Reinf</h2>" + $"Para confirmar seu cadastro, clique no link a seguir: <a href=\"{config.PublicacaoAPI}/usuario/confirmarEmail/{usuario.TXT_TOKEN}\">Confirmar e-mail</a>"; EnvioEmail.Enviar(config.Email, usuario.TXT_EMAIL, $"EFD-Reinf - Confirmação de Cadastro", textoEmail); }
public IActionResult Enviar([FromBody] dynamic data) { try { // Envia e-mail com nova senha de acesso var emailConfig = AppSettings.Get().Email; EnvioEmail.Enviar(emailConfig, data.Destinatario.Value, data.Assunto.Value, data.Corpo.Value); return(Ok()); } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public IActionResult EnviarAdesao([FromBody] dynamic dados) { try { var emailConfig = AppSettings.Get().Email; var corpoEmail = $"Uma Simulação de Benefício no mobile foi realizada pelo usuário:<br/>" + $"Nome: {dados.nome}<br/>" + $"E-mail: {dados.email}<br/>"; EnvioEmail.Enviar(emailConfig, emailConfig.EmailRelacionamento, $"Faceb - Simulação de Não Participante", corpoEmail); return(Json("Um e-mail com os dados da sua simulação foi enviado para a Faceb! ")); } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public decimal Inserir(ContribuinteEntidade contribuinte, decimal oidUsuario) { Validar(ref contribuinte); contribuinte.DTA_VALIDADE = DateTime.Now; contribuinte.IND_APROVADO = DMN_SIM_NAO.SIM; contribuinte.IND_TIPO_AMBIENTE = DMN_TIPO_AMBIENTE_EFD.PRODUCAO_RESTRITA; var proxyContribuinte = new ContribuinteProxy(); var proxyUsuarioContribuinte = new UsuarioContribuinteProxy(); // Valida se usu�rio possui um contribuinte com o mesmo CNPJ cadastrado var contribuinteExistente = proxyContribuinte.BuscarPorCpfCnpjOidUsuario(contribuinte.COD_CNPJ_CPF, oidUsuario); if (contribuinteExistente != null) { throw new Exception("J� existe um contribuinte com esse CNPJ vinculado ao usu�rio logado."); } contribuinteExistente = proxyContribuinte.BuscarPorCpfCnpj(contribuinte.COD_CNPJ_CPF); if (contribuinteExistente != null) { throw new Exception("J� existe um contribuinte com esse CNPJ vinculado a outro usu�rio. Favor entrar em contato com a Intech."); } var oidContribuinte = base.Inserir(contribuinte); var oidUsuarioContribuinte = proxyUsuarioContribuinte.Inserir(new UsuarioContribuinteEntidade { OID_USUARIO = oidUsuario, OID_CONTRIBUINTE = oidContribuinte }); // Envia e-mail com nova senha de acesso var config = AppSettings.Get(); var usuario = new UsuarioProxy().BuscarPorChave(oidUsuario); var textoEmail = $"EFD-Reinf: Um novo contribuinte foi cadastrado pelo usu�rio {usuario.NOM_USUARIO}: {contribuinte.NOM_RAZAO_SOCIAL}."; EnvioEmail.Enviar(config.Email, config.EmailsCadastroContribuintes, $"[EFD-Reinf] - Novo Contribuinte", textoEmail); return(oidContribuinte); }
public IActionResult Criar([FromBody] MensagemEntidade mensagem) { try { var funcionarioProxy = new FuncionarioProxy(); mensagem.CD_EMPRESA = mensagem.CD_EMPRESA == string.Empty ? null : mensagem.CD_EMPRESA; mensagem.CD_PLANO = mensagem.CD_PLANO == string.Empty ? null : mensagem.CD_PLANO; mensagem.CD_SIT_PLANO = mensagem.CD_SIT_PLANO == string.Empty ? null : mensagem.CD_SIT_PLANO; mensagem.NUM_MATRICULA = mensagem.NUM_MATRICULA.Replace("_", "").PadLeft(9, '0'); if (!mensagem.DTA_EXPIRACAO.HasValue) { mensagem.DTA_EXPIRACAO = null; } else { mensagem.DTA_EXPIRACAO = mensagem.DTA_EXPIRACAO; } if (string.IsNullOrEmpty(mensagem.NUM_MATRICULA)) { mensagem.COD_ENTID = null; } else { mensagem.COD_ENTID = funcionarioProxy.BuscarPorMatricula(mensagem.NUM_MATRICULA).COD_ENTID; } mensagem.DTA_MENSAGEM = DateTime.Now; // Se opção de enviar e-mail for habilitada if (mensagem.IND_EMAIL == DMN_SIM_NAO.SIM) { var listaDestinatarios = funcionarioProxy.BuscarPorPesquisa(mensagem.CD_FUNDACAO, mensagem.CD_EMPRESA, mensagem.CD_PLANO, mensagem.CD_SIT_PLANO, mensagem.NUM_MATRICULA, string.Empty, string.Empty); foreach (var destinatario in listaDestinatarios) { var dadosDestinatario = funcionarioProxy.BuscarDadosPorCodEntid(destinatario.COD_ENTID.ToString()); if (string.IsNullOrEmpty(dadosDestinatario.DadosPessoais.EMAIL_AUX)) { throw new Exception("Não existe email cadastrado para seu usuário contacte o administrador do sistema."); } try { var emailConfig = AppSettings.Get().Email; EnvioEmail.Enviar(emailConfig, dadosDestinatario.DadosPessoais.EMAIL_AUX, mensagem.TXT_TITULO, mensagem.TXT_CORPO); } catch (Exception e) { throw new Exception("Erro ao enviar o token por email. Contacte o administrador do sistema." + e.Message); } } } new MensagemProxy().Insert(mensagem); return(Ok()); } catch (Exception ex) { return(BadRequest(ex.Message)); } }