<%@ page import="com.boletobancario.boleto.BoletoFactory" %><%@
page import="com.boletobancario.boleto.pdf.BoletoPDFFormatter" %><%@
page import="com.boletobancario.boleto.mail.SmartMailSender" %><%@
page import="org.apache.commons.lang.StringUtils" %><%@
page import="java.util.Calendar" %><%@
page import="java.io.ByteArrayOutputStream" %><%
// Exemplo de geração e envio por e-mail de um boleto personalizado.
// O envio do boleto por e-mail é uma ótima alternativa em diversas situações.
BoletoFactory factory = new BoletoFactory();
factory.setBanco( BoletoFactory.BRADESCO );
factory.setAgencia( "123" );
factory.setCedente( "4567" );
factory.setCarteira( "06" );
factory.setNossoNumero( "378" );
factory.setValor( "54,00" );
factory.setVencimento( Calendar.getInstance() );
factory.setNomeCedente( "Empresa Demonstração LTDA." );
factory.setLocalPagamento( "Pagável em qualquer agência bancária até o vencimento." );
factory.setNomeSac( "Beltrano de Tal" );
factory.setEnderecoSac( "R. Silas Salazar, 768 - 8º Andar" );
factory.setCepSac( "12345678" );
factory.setCidadeSac( "São Paulo" );
factory.setEstadoSac( "SP" );
factory.setMensagem( 1, "Após o vencimento, entre em contato com nossa central de atendimento." );
factory.setMensagem( 9, "[b]Sr. Caixa: Boleto Demonstrativo. Não receber.[/b] Gerado por: [b]www.boletobancario.com[/b]" );
factory.setAceite( "Não" );
// O código abaixo faz a personalização do boleto. Passo opcional.
String custom = "imageC63:cabecalho.png|nl:1|";
custom += "textBC20: |nl:1|";
custom += "textBC16:Fatura mensal de serviços|nl:3|";
custom += "textBL12:Descritivo dos serviços|nl:2|";
custom += "tab:2|textNL11:* Quantidade contratada: 100 - |textBL11: R$ 20,00|nl:1|";
custom += "tab:2|textNL11:* Quantidade excedente: 150 - |textBL11: R$ 40,00|nl:2|";
custom += "tab:2|textNL11:* Desconto fidelidade: 14 Meses - |textBL11: 10% - (R$ 6,00)|nl:3|";
custom += "textNL12:Total desta fatura:|textBL12: R$ {valor}|nl:4|";
custom += "textNL10:Prezado cliente, verificamos que seu consumo excedeu em mais de 20% o plano contratado.|nl:1|"
+ "textNL10:Você pode alterar seu plano na área restrita de nosso site: |textBL10:www.boletobancario.com";
factory.setCustomContent( custom );
// Código para envio do boleto por e-mail.
SmartMailSender sender = new SmartMailSender();
sender.setEmailFrom( "Boleto Bancario . com <noreply-demo@boletobancario.com>" );
sender.setSmtpHost( "[SEU SERVIDOR SMTP]" ); // endereço do servidor de e-mail.
sender.setSmtpUser( "[USUARIO DO SEU EMAIL]" ); // usuário no servidor de e-mail.
sender.setSmtpPassword( "[SENHA DO SEU EMAIL]" ); // senha.
String subject = "[Boleto Bancario . com] Boleto Demonstrativo";
String body = "Prezado cliente,\n\n";
body += "Segue com esta mensagem o arquivo PDF com seu boleto demonstrativo.\n";
body += "É dessa forma, com velocidade e segurança, que seus clientes receberão os boletos caso sua empresa utilize nossas soluções.\n";
body += "Para conhecer melhor nossos produtos, visite o endereço: http://www.boletobancario.com/home/produtos/\n\n";
body += "Atenciosamente,\n\n";
body += "Equipe Boleto Bancario . com\n";
body += "www.boletobancario.com\n\n";
body += "R. Des. Ermelino de Leão, 35\n";
body += "3º Andar - Centro - 80410-230 - Curitiba - PR";
ByteArrayOutputStream bos = new ByteArrayOutputStream();
new BoletoPDFFormatter(factory.createBoleto(), BoletoPDFFormatter.LAYOUT_NORMAL, bos ).format();
sender.sendMail( email, subject, body, SmartMailSender.createAttachment( "boleto.pdf", bos.toByteArray() ) );
%>