private void NotificarCliente(MensagemPublica mensagem) { _servicoDeEmail.EnviarEmail( _configuration["Email:Remetente"], _configuration["Email:Senha"], mensagem.ContatoCliente.Endereco, ConstruirAssuntoEmail(), ConstruirCorpoEmail(mensagem) ); }
public async Task <RespostaCasoDeUso> Handle(NotificarClienteSobreEventoCommand request, CancellationToken cancellationToken) { var processo = await Context .ProcessosJuridicos .Include(p => p.Eventos) .Include(p => p.Cliente) .ThenInclude(c => c.Email) .FirstOrDefaultAsync(p => p.Codigo == request.CodigoProcesso && p.CodigoEscritorio == ServicoUsuarios.EscritorioAtual.Codigo && !p.Apagado ); var evento = processo?.Eventos?.FirstOrDefault(e => e.Codigo == request.CodigoEvento); if (processo == null || evento == null) { return(RespostaCasoDeUso.ComStatusCode(HttpStatusCode.NotFound)); } if (processo.Cliente.Email == null || processo.Cliente.Email.Endereco == null) { return(RespostaCasoDeUso.ComFalha("O cliente não possui e-mail cadastrado")); } bool sucessoNoEnvioDeEmail = await _servicoEmail.EnviarEmail( _configuration["Email:Remetente"], _configuration["Email:Senha"], processo.Cliente.Email.Endereco, ConstruirAssuntoEmail(), ConstruirCorpoEmail(processo, evento) ); if (!sucessoNoEnvioDeEmail) { return(RespostaCasoDeUso.ComStatusCode(HttpStatusCode.InternalServerError)); } return(RespostaCasoDeUso.ComSucesso()); }