private static string RenderizaBoletos(Boleto boleto) { boleto.FormataDados(); var boletoFormatado = FormataInstrucao(boleto); try { var html = new StringBuilder(); using (var boletoParaImpressao = new BoletoBancario { Boleto = boletoFormatado, OcultarInstrucoes = true, MostrarComprovanteEntrega = false, MostrarEnderecoCedente = false, ExibirDemonstrativo = false, OcultarEnderecoSacado = false, MostrarCodigoCarteira = true }) { html.Append("<div style=\"page-break-after: always;\">"); html.Append(boletoParaImpressao.MontaHtmlEmbedded()); html.Append("</div>"); } return(Convert.ToString(html)); } catch (Exception ex) { return($"Message {ex.Message} ==> Trace {ex.StackTrace} "); } }
internal static Boleto GerarBoleto(IBanco banco, int i, string aceite, string NossoNumero) { if (aceite == "?") { aceite = _contador % 2 == 0 ? "N" : "A"; } var boleto = new Boleto(banco) { Sacado = GerarSacado(), DataEmissao = DateTime.Now, DataProcessamento = DateTime.Now, DataVencimento = new DateTime(2019, 03, 23), ValorTitulo = (decimal)90.00, NossoNumero = NossoNumero == "" ? "" : NossoNumero, NumeroDocumento = "BB" + _proximoNossoNumero.ToString("D6") + (char)(64 + i), EspecieDocumento = TipoEspecieDocumento.DM, Aceite = aceite, CodigoInstrucao1 = "11", CodigoInstrucao2 = "22", DataDesconto = DateTime.Now.AddMonths(i), ValorDesconto = (decimal)(100 * i * 0.10), DataMulta = new DateTime(2019, 03, 20), PercentualMulta = (decimal)2.00, ValorMulta = (decimal)03.13, DataJuros = DateTime.Now.AddMonths(i), PercentualJurosDia = (decimal)0.2, ValorJurosDia = (decimal)(100 * i * (0.2 / 100)), MensagemArquivoRemessa = "Mensagem para o arquivo remessa", NumeroControleParticipante = "CHAVEPRIMARIA=" + _proximoNossoNumero, ValorAbatimento = (decimal)03.00, ValorOutrasDespesas = (decimal)08.00, ValorOutrosCreditos = (decimal)06.00, CarteiraImpressaoBoleto = "009" }; // Mensagem - Instruções do Caixa StringBuilder msgCaixa = new StringBuilder(); if (boleto.ValorDesconto > 0) { msgCaixa.AppendLine($"Conceder desconto de {boleto.ValorDesconto.ToString("R$ ##,##0.00")} até {boleto.DataDesconto.ToString("dd/MM/yyyy")}. "); } if (boleto.ValorMulta > 0) { msgCaixa.AppendLine($"Cobrar multa de {boleto.ValorMulta.ToString("R$ ##,##0.00")} após o vencimento. "); } if (boleto.ValorJurosDia > 0) { msgCaixa.AppendLine($"Cobrar juros de {boleto.ValorJurosDia.ToString("R$ ##,##0.00")} por dia de atraso. "); } boleto.MensagemInstrucoesCaixa = msgCaixa.ToString(); // Avalista if (_contador % 3 == 0) { boleto.Avalista = GerarSacado(); boleto.Avalista.Nome = boleto.Avalista.Nome.Replace("Sacado", "Avalista"); } // Grupo Demonstrativo do Boleto var grupoDemonstrativo = new GrupoDemonstrativo { Descricao = "GRUPO 1" }; grupoDemonstrativo.Itens.Add(new ItemDemonstrativo { Descricao = "Grupo 1, Item 1", Referencia = boleto.DataEmissao.AddMonths(-1).Month + "/" + boleto.DataEmissao.AddMonths(-1).Year, Valor = boleto.ValorTitulo * (decimal)0.15 }); grupoDemonstrativo.Itens.Add(new ItemDemonstrativo { Descricao = "Grupo 1, Item 2", Referencia = boleto.DataEmissao.AddMonths(-1).Month + "/" + boleto.DataEmissao.AddMonths(-1).Year, Valor = boleto.ValorTitulo * (decimal)0.05 }); boleto.Demonstrativos.Add(grupoDemonstrativo); grupoDemonstrativo = new GrupoDemonstrativo { Descricao = "GRUPO 2" }; grupoDemonstrativo.Itens.Add(new ItemDemonstrativo { Descricao = "Grupo 2, Item 1", Referencia = boleto.DataEmissao.Month + "/" + boleto.DataEmissao.Year, Valor = boleto.ValorTitulo * (decimal)0.20 }); boleto.Demonstrativos.Add(grupoDemonstrativo); grupoDemonstrativo = new GrupoDemonstrativo { Descricao = "GRUPO 3" }; grupoDemonstrativo.Itens.Add(new ItemDemonstrativo { Descricao = "Grupo 3, Item 1", Referencia = boleto.DataEmissao.AddMonths(-1).Month + "/" + boleto.DataEmissao.AddMonths(-1).Year, Valor = boleto.ValorTitulo * (decimal)0.37 }); grupoDemonstrativo.Itens.Add(new ItemDemonstrativo { Descricao = "Grupo 3, Item 2", Referencia = boleto.DataEmissao.Month + "/" + boleto.DataEmissao.Year, Valor = boleto.ValorTitulo * (decimal)0.03 }); grupoDemonstrativo.Itens.Add(new ItemDemonstrativo { Descricao = "Grupo 3, Item 3", Referencia = boleto.DataEmissao.Month + "/" + boleto.DataEmissao.Year, Valor = boleto.ValorTitulo * (decimal)0.12 }); grupoDemonstrativo.Itens.Add(new ItemDemonstrativo { Descricao = "Grupo 3, Item 4", Referencia = boleto.DataEmissao.AddMonths(+1).Month + "/" + boleto.DataEmissao.AddMonths(+1).Year, Valor = boleto.ValorTitulo * (decimal)0.08 }); boleto.Demonstrativos.Add(grupoDemonstrativo); boleto.FormataDados(); _contador++; _proximoNossoNumero++; return(boleto); }
internal static Boleto GerarBoleto(Boleto boleto) { var aceite = boleto.Aceite; if (aceite == "?") { aceite = _contador % 2 == 0 ? "N" : "A"; } // Mensagem - Instruções do Caixa StringBuilder msgCaixa = new StringBuilder(); if (boleto.ValorDesconto > 0) { msgCaixa.AppendLine($"Conceder desconto de {boleto.ValorDesconto.ToString("R$ ##,##0.00")} até {boleto.DataDesconto.ToString("dd/MM/yyyy")}. "); } if (boleto.ValorMulta > 0) { msgCaixa.AppendLine($"Cobrar multa de {boleto.ValorMulta.ToString("R$ ##,##0.00")} após o vencimento. "); } if (boleto.ValorJurosDia > 0) { msgCaixa.AppendLine($"Cobrar juros de {boleto.ValorJurosDia.ToString("R$ ##,##0.00")} por dia de atraso. "); } boleto.MensagemInstrucoesCaixa = msgCaixa.ToString(); // Avalista if (_contador % 3 == 0) { boleto.Avalista = boleto.Sacado; boleto.Avalista.Nome = boleto.Avalista.Nome.Replace("Sacado", "Avalista"); } // Grupo Demonstrativo do Boleto var grupoDemonstrativo = new GrupoDemonstrativo { Descricao = "GRUPO 1" }; grupoDemonstrativo.Itens.Add(new ItemDemonstrativo { Descricao = "Grupo 1, Item 1", Referencia = boleto.DataEmissao.AddMonths(-1).Month + "/" + boleto.DataEmissao.AddMonths(-1).Year, Valor = boleto.ValorTitulo * (decimal)0.15 }); grupoDemonstrativo.Itens.Add(new ItemDemonstrativo { Descricao = "Grupo 1, Item 2", Referencia = boleto.DataEmissao.AddMonths(-1).Month + "/" + boleto.DataEmissao.AddMonths(-1).Year, Valor = boleto.ValorTitulo * (decimal)0.05 }); boleto.Demonstrativos.Add(grupoDemonstrativo); grupoDemonstrativo = new GrupoDemonstrativo { Descricao = "GRUPO 2" }; grupoDemonstrativo.Itens.Add(new ItemDemonstrativo { Descricao = "Grupo 2, Item 1", Referencia = boleto.DataEmissao.Month + "/" + boleto.DataEmissao.Year, Valor = boleto.ValorTitulo * (decimal)0.20 }); boleto.Demonstrativos.Add(grupoDemonstrativo); grupoDemonstrativo = new GrupoDemonstrativo { Descricao = "GRUPO 3" }; grupoDemonstrativo.Itens.Add(new ItemDemonstrativo { Descricao = "Grupo 3, Item 1", Referencia = boleto.DataEmissao.AddMonths(-1).Month + "/" + boleto.DataEmissao.AddMonths(-1).Year, Valor = boleto.ValorTitulo * (decimal)0.37 }); grupoDemonstrativo.Itens.Add(new ItemDemonstrativo { Descricao = "Grupo 3, Item 2", Referencia = boleto.DataEmissao.Month + "/" + boleto.DataEmissao.Year, Valor = boleto.ValorTitulo * (decimal)0.03 }); grupoDemonstrativo.Itens.Add(new ItemDemonstrativo { Descricao = "Grupo 3, Item 3", Referencia = boleto.DataEmissao.Month + "/" + boleto.DataEmissao.Year, Valor = boleto.ValorTitulo * (decimal)0.12 }); grupoDemonstrativo.Itens.Add(new ItemDemonstrativo { Descricao = "Grupo 3, Item 4", Referencia = boleto.DataEmissao.AddMonths(+1).Month + "/" + boleto.DataEmissao.AddMonths(+1).Year, Valor = boleto.ValorTitulo * (decimal)0.08 }); boleto.Demonstrativos.Add(grupoDemonstrativo); boleto.FormataDados(); _contador++; _proximoNossoNumero++; return(boleto); }