protected BoletoBancario PreparaBoleto()
    {
        DateTime vencimento = new DateTime(2007, 9, 10);

        Instrucao_Itau item1 = new Instrucao_Itau(9, 5);
        Instrucao_Itau item2 = new Instrucao_Itau(81, 10);
        Cedente c = new Cedente("00.000.000/0000-00", "Empresa de Atacado", "0542", "13000");
        //Na carteira 198 o código do Cedente é a conta bancária
        c.Codigo = "13000";

        Boleto b = new Boleto(vencimento, 1642, "198", "92082835", c);
        b.NumeroDocumento = "1008073";

        b.Sacado = new Sacado("000.000.000-00", "Fulano de Silva");
        b.Sacado.Endereco.End = "SSS 154 Bloco J Casa 23";
        b.Sacado.Endereco.Bairro = "Testando";
        b.Sacado.Endereco.Cidade = "Testelândia";
        b.Sacado.Endereco.CEP = "70000000";
        b.Sacado.Endereco.UF = "DF";

        item2.Descricao += " " + item2.QuantidadeDias.ToString() + " dias corridos do vencimento.";
        b.Instrucoes.Add(item1);
        b.Instrucoes.Add(item2);



        BoletoBancario itau = new BoletoBancario();
        itau.CodigoBanco = 341;
        itau.Boleto = b;

        return itau;
    }
Exemple #2
0
        //
        public void GeraDadosItau()
        {
            DateTime vencimento = new DateTime(2007, 9, 10);

            Instrucao_Itau item1 = new Instrucao_Itau(9, 5);
            Instrucao_Itau item2 = new Instrucao_Itau(81, 10);
            Cedente c = new Cedente("00.000.000/0000-00", "Empresa de Atacado", "0542", "13000");
            //Na carteira 198 o código do Cedente é a conta bancária
            c.Codigo = "13000";

            Boleto b = new Boleto(vencimento, 1642, "198", "92082835", c);
            b.NumeroDocumento = "1008073";

            b.DataVencimento = Convert.ToDateTime("12-12-12");

            b.Sacado = new Sacado("000.000.000-00", "Fulano de Silva");
            b.Sacado.Endereco.End = "SSS 154 Bloco J Casa 23";
            b.Sacado.Endereco.Bairro = "Testando";
            b.Sacado.Endereco.Cidade = "Testelândia";
            b.Sacado.Endereco.CEP = "70000000";
            b.Sacado.Endereco.UF = "DF";

            item2.Descricao += item2.QuantidadeDias.ToString() + " dias corridos do vencimento.";
            b.Instrucoes.Add(item1);
            b.Instrucoes.Add(item2);
            b.Cedente.ContaBancaria.DigitoAgencia = "1";
            b.Cedente.ContaBancaria.DigitoAgencia = "2";

            b.Banco = new Banco(341);

            Boletos boletos = new Boletos();
            boletos.Add(b);

            Boleto b2 = new Boleto(vencimento, 1642, "198", "92082835", c);
            b2.NumeroDocumento = "1008073";

            b2.DataVencimento = Convert.ToDateTime("12-12-12");

            b2.Sacado = new Sacado("000.000.000-00", "Fulano de Silva");
            b2.Sacado.Endereco.End = "SSS 154 Bloco J Casa 23";
            b2.Sacado.Endereco.Bairro = "Testando";
            b2.Sacado.Endereco.Cidade = "Testelândia";
            b2.Sacado.Endereco.CEP = "70000000";
            b2.Sacado.Endereco.UF = "DF";

            item2.Descricao += item2.QuantidadeDias.ToString() + " dias corridos do vencimento.";
            b2.Instrucoes.Add(item1);
            b2.Instrucoes.Add(item2);
            b2.Cedente.ContaBancaria.DigitoAgencia = "1";
            b2.Cedente.ContaBancaria.DigitoAgencia = "2";

            b2.Banco = new Banco(341);

            boletos.Add(b2);

            GeraArquivoCNAB400(b2.Banco, c, boletos);
        }
Exemple #3
0
    protected void Page_Load(object sender, EventArgs e)
    {
        DateTime vencimento = DateTime.Now.AddDays(1);

        Instrucao_Itau item1 = new Instrucao_Itau(9, 5);
        Instrucao_Itau item2 = new Instrucao_Itau(81, 10);
        Cedente c = new Cedente("10.823.650/0001-90", "SAFIRALIFE", "4406", "22324");
        //Na carteira 198 o código do Cedente é a conta bancária
        c.Codigo = "13000";

        //Mostrar endereço do Cedente
        //c.Endereco = new Endereco();
        //c.Endereco.End = "SQN 416 Bloco M Ap 132";
        //c.Endereco.Bairro = "Asa Norte";
        //c.Endereco.CEP = "70879110";
        //c.Endereco.Cidade = "Brasília";
        //c.Endereco.UF = "DF";

        //boletoBancario.MostrarEnderecoCedente = true;

        Boleto b = new Boleto(vencimento, 0.1m, "176", "00000001", c, new EspecieDocumento(341, "1"));
        b.NumeroDocumento = "00000001";

        b.Sacado = new Sacado("000.000.000-00", "Nome do seu Cliente ");
        b.Sacado.Endereco.End = "Endereço do seu Cliente ";
        b.Sacado.Endereco.Bairro = "Bairro";
        b.Sacado.Endereco.Cidade = "Cidade";
        b.Sacado.Endereco.CEP = "00000000";
        b.Sacado.Endereco.UF = "UF";

        // Exemplo de como adicionar mais informações ao sacado
        b.Sacado.InformacoesSacado.Add(new InfoSacado("TÍTULO: " + "2541245"));

        item2.Descricao += " " + item2.QuantidadeDias.ToString() + " dias corridos do vencimento.";
        b.Instrucoes.Add(item1);
        b.Instrucoes.Add(item2);

        // juros/descontos

        if (b.ValorDesconto == 0)
        {
            Instrucao_Itau item3 = new Instrucao_Itau(999, 1);
            item3.Descricao += ("1,00 por dia de antecipação.");
            b.Instrucoes.Add(item3);
        }


        boletoBancario.Boleto = b;
        boletoBancario.Boleto.Valida();

        //boletoBancario.MostrarCodigoCarteira = true;
        boletoBancario.MostrarComprovanteEntrega = (Request.Url.Query == "?show");
        boletoBancario.FormatoCarne = (Request.Url.Query == "?formatocarne");
    }
        //classe para gerar boleto a partir da grid
        public static BoletoBancario VisualizarBoletoGrid()
        {
            //carregando os dados do banco para geração do boleto
            Morador = BoletoDAL.GerarBoletoGrid(Usuario.NumDocumento,/*Usuario.EmissaoBoleto,Usuario.VencimentoBoleto,*/ Usuario.Bloco, Usuario.Apartamento, Usuario.CodMorador);

            if (Morador != null)
            {
                DateTime DataAtual = DateTime.Today;

                if (DataAtual > Convert.ToDateTime(Morador.VenciBoleto))
                {

                   int diascorridos = BoletoDAL.GetDiasCorridos(Morador.VenciBoleto, DataAtual);

                    //passando os dados do banco para o objeto cedente para criação do boleto
                    Cedente DadosCedente;
                    DadosCedente = new Cedente(Morador.CnpjCondominio, Morador.NomeCondominio, Morador.AgenciaCondominio, Morador.ContaCondominio);
                    DadosCedente.Codigo = Convert.ToString(Morador.CodCondominio);

                    Boleto boleto;
                    //removendo o digito verificado do numerodocumento
                    String NossoNumero = Morador.NumeroDocumento;
                    if (NossoNumero.Length != 8)
                    {
                        NossoNumero = NossoNumero.Remove(8);
                    }

                    //calculando data do novo vencimento . data atual+15dias
                    //String DataVencimento = DateTime.Today.AddDays(15).ToString("dd/MM/yyyy");

                    String DataVencimento = DateTime.Today.ToString("dd/MM/yyyy");
                    //passando os dados do banco para o objeto boleto
                    boleto = new BoletoNet.Boleto(Convert.ToDateTime(DataVencimento), Convert.ToDecimal(Morador.ValorBoleto), "09", NossoNumero, DadosCedente);

                    //correção monetaria + multa + juros
                    Double Correção = BoletoDAL.CorreçãoMonetaria(Morador.ValorBoleto, Morador.VenciBoleto);
                    Morador.ValorBoleto = Morador.ValorBoleto + Correção;
                    int mesescorridos = BoletoDAL.CalcularMesesPassados(DateTime.Today, Morador.VenciBoleto);
                    Decimal JurosMora = Convert.ToDecimal(Morador.ValorBoleto) * 1 / 100;// 1% do valor , divido por 30;
                    Decimal juros = JurosMora / 30 * diascorridos;
                    Decimal juroMultacorrigido = Convert.ToDecimal(Morador.ValorBoleto) * 2 / 100;

                    boleto.ValorBoleto = Convert.ToDecimal(Morador.ValorBoleto) + Convert.ToDecimal(juroMultacorrigido) + Convert.ToDecimal(juros);

                    boleto.Carteira = "175";
                    boleto.Especie = "R$";
                    boleto.NumeroDocumento = NossoNumero;

                    //passando dados sacado para o objeto boleto
                    boleto.Sacado = new Sacado(Morador.CpfMorador, Morador.NomeMorador);
                    boleto.Sacado.Endereco.End = Morador.EndMorador;
                    boleto.Sacado.Endereco.Bairro = Morador.BairroMorador;
                    boleto.Sacado.Endereco.Cidade = Morador.CidadeMorador;
                    boleto.Sacado.Endereco.CEP = Morador.CepMorador;
                    boleto.Sacado.Endereco.UF = Morador.UfMorador;

                    Instrucao_Itau InsBoleto = new Instrucao_Itau();
                    InsBoleto.Descricao = "APÓS O VENCIMENTO COBRAR MULTA DE 2% + 1% DE JUROS AO MÊS." + "<BR>" + "NÃO RECEBER 15 DIAS APOS O VENCIMENTO";
                    boleto.Instrucoes.Add(InsBoleto);

                    //parametros do objeto boleto banco
                    boleto.EspecieDocumento = new EspecieDocumento_Itau("DM");
                    BoletoBancario boletob;
                    boletob = new BoletoBancario();
                    boletob.CodigoBanco = 341;
                    boletob.Boleto = boleto;
                    boletob.GeraImagemCodigoBarras(boleto);
                    boletob.Boleto.Valida();

                    Usuario.NumDocumento = null;
                    Usuario.EmissaoBoleto = null;
                    Usuario.VencimentoBoleto = null;

                    return boletob;

                }
                else
                {

                    //passando os dados do banco para o objeto cedente para criação do boleto
                    Cedente DadosCedente;
                    DadosCedente = new Cedente(Morador.CnpjCondominio, Morador.NomeCondominio, Morador.AgenciaCondominio, Morador.ContaCondominio);
                    DadosCedente.Codigo = Convert.ToString(Morador.CodCondominio);

                    Boleto boleto;
                    //removendo o digito verificado do numerodocumento
                    String NossoNumero = Morador.NumeroDocumento;
                    if (NossoNumero.Length != 8)
                    {
                        NossoNumero = NossoNumero.Remove(8);
                    }

                    //passando os dados do banco para o objeto boleto
                    boleto = new BoletoNet.Boleto(Convert.ToDateTime(Morador.VenciBoleto), Convert.ToDecimal(Morador.ValorBoleto), "09", NossoNumero, DadosCedente);

                    boleto.ValorBoleto = Convert.ToDecimal(Morador.ValorBoleto);
                    boleto.Carteira = "175";
                    boleto.Especie = "R$";
                    boleto.NumeroDocumento = NossoNumero;

                    //passando dados sacado para o objeto boleto
                    boleto.Sacado = new Sacado(Morador.CpfMorador, Morador.NomeMorador);
                    boleto.Sacado.Endereco.End = Morador.EndMorador;
                    boleto.Sacado.Endereco.Bairro = Morador.BairroMorador;
                    boleto.Sacado.Endereco.Cidade = Morador.CidadeMorador;
                    boleto.Sacado.Endereco.CEP = Morador.CepMorador;
                    boleto.Sacado.Endereco.UF = Morador.UfMorador;

                    Instrucao_Itau InsBoleto = new Instrucao_Itau();

                    String DataVencimento = Morador.VenciBoleto.ToString("dd/MM/yyyy");
                    string mensagem = "";

                    if (Morador.DescontoCondominio != 0)
                    {
                        mensagem = "APÓS O VENCIMENTO COBRAR MULTA DE 2% + 1% DE JUROS AO MÊS. <br /> NÃO RECEBER APOS 15 DIAS DO VENCIMENTO.  <br /> ATÉ A DATA DO VENCIMENTO CONCEDER DESCONTO DE " + Morador.DescontoCondominio + " R$ "; /* "<br>" + Morador.Instrucao1 + "<br />" + Morador.Instrucao2 + "<br />" + Morador.Instrucao3 + "<br />" + Morador.Instrucao4 + "<br />" + Morador.Instrucao5 + "<br/>"; */
                    }
                    else
                    {
                        mensagem = "APÓS O VENCIMENTO COBRAR MULTA DE 2% + 1% DE JUROS AO MÊS." + "<br /> NÃO RECEBER APOS 15 DIAS DO VENCIMENTO.";
                    }

                    InsBoleto.Descricao = mensagem;

                    boleto.Instrucoes.Add(InsBoleto);

                    //parametros do objeto boleto banco
                    boleto.EspecieDocumento = new EspecieDocumento_Itau("DM");
                    BoletoBancario boletob;
                    boletob = new BoletoBancario();
                    boletob.CodigoBanco = 341;
                    boletob.Boleto = boleto;
                    boletob.GeraImagemCodigoBarras(boleto);
                    boletob.Boleto.Valida();

                    Usuario.NumDocumento = null;
                    Usuario.EmissaoBoleto = null;
                    Usuario.VencimentoBoleto = null;

                    return boletob;
                }

            }
            else
            {
                return null;
            }
        }
    protected void Button1_Click(object sender, EventArgs e)
    {

        try
        {

            //Remove dígito da Agência.
            int DigAgencia = 0;
            int Agencia = 0;
            if (txtAgenciaCedente.Text.IndexOf("-") > -1)
            {
                int s = txtAgenciaCedente.Text.IndexOf("-") + 1;
                int tam = Strings.Len(txtAgenciaCedente.Text);
                DigAgencia = Convert.ToInt32(Strings.Right(txtAgenciaCedente.Text, tam - s));
                int dif = tam - (s - 1);
                //incluindo o traço.
                Agencia = Convert.ToInt32(Strings.Left(txtAgenciaCedente.Text, tam - dif));
            }
            //txtAgenciaCedente.Text

            //Remove dígito da Conta.
            int DigConta = 0;
            int Conta = 0;
            if (txtContaCedente.Text.IndexOf("-") > -1)
            {
                int s2 = txtContaCedente.Text.IndexOf("-") + 1;
                int tam2 = Strings.Len(txtContaCedente.Text);
                DigConta = Convert.ToInt32(Strings.Right(txtContaCedente.Text, tam2 - s2));
                int dif2 = tam2 - (s2 - 1);
                //incluindo o traço.
                Conta = Convert.ToInt32(Strings.Left(txtContaCedente.Text, tam2 - dif2));
            }
            //txtContaCedente.Text

            //Remove dígito do Cedente.
            if (txtCodigoCedente.Text.IndexOf("-") > -1)
            {
                int s3 = txtCodigoCedente.Text.IndexOf("-") + 1;
                int tam3 = Strings.Len(txtCodigoCedente.Text);
                int dif3 = tam3 - (s3 - 1);
                //incluindo o traço.
                txtCodigoCedente.Text = Strings.Left(txtCodigoCedente.Text, tam3 - dif3);
            }


            //Validação.
            switch (txtBanco.Text)
            {
                case "001":
                    //Banco do Brasil.

                    //Carteira com 2 caracteres.
                    //If Len(txtCarteira.Text) <> 2 Then
                    //Response.Write("A Carteira deve conter 2 dígitos."]
                    //Exit Sub
                    //End If

                    //Agência com 4 caracteres.
                    if (Strings.Len(Agencia) > 4)
                    {
                        Response.Write("A Agência deve conter até 4 dígitos.");
                        return;
                    }


                    //Conta com 8 caracteres.
                    if (Strings.Len(Conta) > 8)
                    {
                        Response.Write("A Conta deve conter até 8 dígitos.");
                        return;
                    }


                    //Cedente com 8 caracteres.
                    if (Strings.Len(txtCodigoCedente.Text) > 8)
                    {
                        Response.Write("O Código do Cedente deve conter até 8 dígitos.");
                        return;
                    }


                    //Nosso Número deve ser 11 ou 17 dígitos.
                    if (Strings.Len(txtNossoNumeroBoleto.Text) != 11 & Strings.Len(txtNossoNumeroBoleto.Text) != 17)
                    {
                        Response.Write("O Nosso Número deve ter 11 ou 17 dígitos dependendo da Carteira.");
                        return;
                    }


                    break;
                //Se Carteira 18 então NossoNumero são 17 dígitos.
                //If txtCarteira.Text = "18" Then
                // If Len(txtNossoNumeroBoleto.Text) <> 17 Then
                // Response.Write("O Nosso Número deve ter 17 dígitos para Carteira 18."]
                // Exit Sub
                // End If
                //Else
                // 'Senão, então NossoNumero 11 dígitos.
                // If Len(txtNossoNumeroBoleto.Text) <> 11 Then
                // Response.Write("O Nosso Número deve ter 11 dígitos para Carteira diferente que 18."]
                // Exit Sub
                // End If
                //End If

                case "033":
                    //Santander.
                    break;

                case "070":
                    //Banco BRB.
                    break;

                case "104":
                    //Caixa Econômica Federal.
                    break;

                case "237":
                    //Banco Bradesco.
                    break;

                case "275":
                    //Banco Real.

                    //Cedente 
                    if (!string.IsNullOrEmpty(Request["CodigoCedente"]))
                    {

                    }

                    //Cobrança registrada 7 dígitos.
                    //Cobrança sem registro até 13 dígitos.
                    if (Strings.Len(txtNossoNumeroBoleto.Text) < 7 & Strings.Len(txtNossoNumeroBoleto.Text) < 13)
                    {
                        Response.Write("O Nosso Número deve ser entre 7 e 13 caracteres.");
                        return;
                    }


                    //Carteira
                    if (txtCarteira.Text != "00" & txtCarteira.Text != "20" & txtCarteira.Text != "31" & txtCarteira.Text != "42" & txtCarteira.Text != "47" & txtCarteira.Text != "85" & txtCarteira.Text != "57")
                    {
                        Response.Write("A Carteira deve ser 00,20,31,42,47,57 ou 85.");
                        return;
                    }

                    //00'- Carteira do convênio
                    //20' - Cobrança Simples
                    //31' - Cobrança Câmbio
                    //42' - Cobrança Caucionada
                    //47' - Cobr. Caucionada Crédito Imobiliário
                    //85' - Cobrança Partilhada
                    //57 - última implementação ?

                    //Agência 4 dígitos.
                    if (Strings.Len(Agencia) > 4)
                    {
                        Response.Write("A Agência deve conter até 4 dígitos.");
                        return;
                    }

                    //Número da conta 6 dígitos.
                    if (Strings.Len(Conta) > 6)
                    {
                        Response.Write("A Conta Corrente deve conter até 6 dígitos.");
                        return;
                    }


                    break;
                case "291":
                    //Banco BCN.
                    break;

                case "341":
                    //Banco Itaú.
                    break;

                case "347":
                    //Banco Sudameris.
                    break;

                case "356":
                    //Banco Real.

                    //Cedente 
                    if (!string.IsNullOrEmpty(Request["CodigoCedente"]))
                    {
                    }
                    //?


                    //Cobrança registrada 7 dígitos.
                    //Cobrança sem registro até 13 dígitos.
                    if (Strings.Len(txtNossoNumeroBoleto.Text) < 7 & Strings.Len(txtNossoNumeroBoleto.Text) < 13)
                    {
                        Response.Write("O Nosso Número deve ser entre 7 e 13 caracteres.");
                        return;
                    }


                    //Carteira
                    if (txtCarteira.Text != "00" & txtCarteira.Text != "20" & txtCarteira.Text != "31" & txtCarteira.Text != "42" & txtCarteira.Text != "47" & txtCarteira.Text != "85" & txtCarteira.Text != "57")
                    {
                        Response.Write("A Carteira deve ser 00,20,31,42,47,57 ou 85.");
                        return;
                    }

                    //00'- Carteira do convênio
                    //20' - Cobrança Simples
                    //31' - Cobrança Câmbio
                    //42' - Cobrança Caucionada
                    //47' - Cobr. Caucionada Crédito Imobiliário
                    //85' - Cobrança Partilhada

                    //Agência 4 dígitos.
                    if (Strings.Len(Agencia) > 4)
                    {
                        Response.Write("A Agência deve conter até 4 dígitos.");
                        return;
                    }

                    //Número da conta 6 dígitos.
                    if (Strings.Len(Conta) > 6)
                    {
                        Response.Write("A Conta Corrente deve conter até 6 dígitos.");
                        return;
                    }


                    break;
                case "409":
                    //Banco Unibanco.
                    break;

                case "422":
                    //Banco Safra.
                    break;

                default:

                    break;
            }


            //Informa os dados do cedente
            Cedente c = new Cedente(txtCPFCNPJ.Text, txtNomeCedente.Text, Agencia.ToString(), DigAgencia.ToString(), Conta.ToString(), DigConta.ToString());

            //Dependendo da carteira, é necessário informar o código do cedente (o banco que fornece)
            c.Codigo = txtCodigoCedente.Text.Trim();

            //Dados para preenchimento do boleto (data de vencimento, valor, carteira e nosso número)
            Boleto b = new Boleto(Convert.ToDateTime(txtVencimento.Text), Convert.ToDecimal(txtValorBoleto.Text), txtCarteira.Text, txtNossoNumeroBoleto.Text, c);
            //"12345678901"

            //b.Carteira = "1"
            //b.Banco.Codigo = "18-019"

            //Dependendo da carteira, é necessário o número do documento
            b.NumeroDocumento = txtNumeroDocumentoBoleto.Text;
            b.ValorCobrado = Convert.ToDecimal(txtValorCobrado.Text);
            //"12345678901"

            //Informa os dados do sacado
            b.Sacado = new Sacado(txtCPFCNPJSacado.Text, txtNomeSacado.Text);
            b.Sacado.Endereco.End = txtEnderecoSacado.Text;
            b.Sacado.Endereco.Bairro = txtBairroSacado.Text;
            b.Sacado.Endereco.Cidade = txtCidadeSacado.Text;
            b.Sacado.Endereco.CEP = txtCEPSacado.Text;
            b.Sacado.Endereco.UF = txtUFSacado.Text;

            //Instrução.
            switch (txtBanco.Text)
            {
                case "001":
                    //Banco do Brasil.
                    Instrucao_BancoBrasil i1 = new Instrucao_BancoBrasil(Convert.ToInt32(txtBanco.Text));
                    i1.Descricao = txtInstrucoes.Text;
                    // "Não Receber após o vencimento"
                    b.Instrucoes.Add(i1);
                    break;
                case "033":
                    //Santander.
                    Instrucao_Santander i2 = new Instrucao_Santander(Convert.ToInt32(txtBanco.Text));
                    i2.Descricao = txtInstrucoes.Text;
                    //"Não Receber após o vencimento"
                    b.Instrucoes.Add(i2);
                    break;
                case "070":
                    //Banco BRB.
                    Instrucao i3 = new Instrucao(Convert.ToInt32(txtBanco.Text));
                    i3.Descricao = txtInstrucoes.Text;
                    //"Não Receber após o vencimento"
                    b.Instrucoes.Add(i3);
                    break;
                case "104":
                    //Caixa Econômica Federal.
                    Instrucao_Caixa i4 = new Instrucao_Caixa(Convert.ToInt32(txtBanco.Text));
                    i4.Descricao = txtInstrucoes.Text;
                    //"Não Receber após o vencimento"
                    b.Instrucoes.Add(i4);
                    break;
                case "237":
                    //Banco Bradesco.
                    Instrucao_Bradesco i5 = new Instrucao_Bradesco(Convert.ToInt32(txtBanco.Text));
                    i5.Descricao = txtInstrucoes.Text;
                    //"Não Receber após o vencimento"
                    b.Instrucoes.Add(i5);
                    break;
                case "275":
                    //Banco Real.
                    Instrucao i6 = new Instrucao(Convert.ToInt32(txtBanco.Text));
                    i6.Descricao = txtInstrucoes.Text;
                    //"Não Receber após o vencimento"
                    b.Instrucoes.Add(i6);
                    break;
                case "291":
                    //Banco BCN.
                    Instrucao i7 = new Instrucao(Convert.ToInt32(txtBanco.Text));
                    i7.Descricao = txtInstrucoes.Text;
                    //"Não Receber após o vencimento"
                    b.Instrucoes.Add(i7);
                    break;
                case "341":
                    //Banco Itaú.
                    Instrucao_Itau i8 = new Instrucao_Itau(Convert.ToInt32(txtBanco.Text));
                    i8.Descricao = txtInstrucoes.Text;
                    //"Não Receber após o vencimento"
                    b.Instrucoes.Add(i8);
                    break;
                case "347":
                    //Banco Sudameris.
                    Instrucao i9 = new Instrucao(Convert.ToInt32(txtBanco.Text));
                    i9.Descricao = txtInstrucoes.Text;
                    //"Não Receber após o vencimento"
                    b.Instrucoes.Add(i9);
                    break;
                case "356":
                    //Banco Real.
                    //Dim i10 As New Instrucao(CInt(txtBanco.Text))
                    Instrucao i10 = new Instrucao(1);
                    i10.Descricao = txtInstrucoes.Text;
                    //"Não Receber após o vencimento"
                    b.Instrucoes.Add(i10);
                    break;
                case "409":
                    //Banco Unibanco.
                    Instrucao i11 = new Instrucao(Convert.ToInt32(txtBanco.Text));
                    i11.Descricao = txtInstrucoes.Text;
                    //"Não Receber após o vencimento"
                    b.Instrucoes.Add(i11);
                    break;
                case "422":
                    //Banco Safra.
                    Instrucao i12 = new Instrucao(Convert.ToInt32(txtBanco.Text));
                    i12.Descricao = txtInstrucoes.Text;
                    //"Não Receber após o vencimento"
                    b.Instrucoes.Add(i12);
                    break;
                default:
                    //Instrução de teste Santander.
                    Instrucao_Santander i13 = new Instrucao_Santander(Convert.ToInt32(txtBanco.Text));
                    i13.Descricao = txtInstrucoes.Text;
                    //"Não Receber após o vencimento"
                    b.Instrucoes.Add(i13);
                    break;
            }


            //Espécie do Documento - [R] Recibo
            switch (txtBanco.Text)
            {
                case "001":
                    //Banco do Brasil.
                    b.EspecieDocumento = new EspecieDocumento_BancoBrasil("2");
                    break;
                //Espécie.
                //Cheque = 1, //CH – CHEQUE
                //DuplicataMercantil = 2, //DM – DUPLICATA MERCANTIL
                //DuplicataMercantilIndicacao = 3, //DMI – DUPLICATA MERCANTIL P/ INDICAÇÃO
                //DuplicataServico = 4, //DS – DUPLICATA DE SERVIÇO
                //DuplicataServicoIndicacao = 5, //DSI – DUPLICATA DE SERVIÇO P/ INDICAÇÃO
                //DuplicataRural = 6, //DR – DUPLICATA RURAL
                //LetraCambio = 7, //LC – LETRA DE CAMBIO
                //NotaCreditoComercial = 8, //NCC – NOTA DE CRÉDITO COMERCIAL
                //NotaCreditoExportacao = 9, //NCE – NOTA DE CRÉDITO A EXPORTAÇÃO
                //NotaCreditoIndustrial = 10, //NCI – NOTA DE CRÉDITO INDUSTRIAL
                //NotaCreditoRural = 11, //NCR – NOTA DE CRÉDITO RURAL
                //NotaPromissoria = 12, //NP – NOTA PROMISSÓRIA
                //NotaPromissoriaRural = 13, //NPR –NOTA PROMISSÓRIA RURAL
                //TriplicataMercantil = 14, //TM – TRIPLICATA MERCANTIL
                //TriplicataServico = 15, //TS – TRIPLICATA DE SERVIÇO
                //NotaSeguro = 16, //NS – NOTA DE SEGURO
                //Recibo = 17, //RC – RECIBO
                //Fatura = 18, //FAT – FATURA
                //NotaDebito = 19, //ND – NOTA DE DÉBITO
                //ApoliceSeguro = 20, //AP – APÓLICE DE SEGURO
                //MensalidadeEscolar = 21, //ME – MENSALIDADE ESCOLAR
                //ParcelaConsorcio = 22, //PC – PARCELA DE CONSÓRCIO
                //Outros = 23 //OUTROS

                case "033":
                    //Santander.
                    b.EspecieDocumento = new EspecieDocumento_Santander("17");
                    break;
                case "070":
                    //Banco BRB.
                    b.EspecieDocumento = new EspecieDocumento(17);
                    break;
                case "104":
                    //Caixa Econômica Federal.
                    b.EspecieDocumento = new EspecieDocumento_Caixa("17");
                    break;
                case "237":
                    //Banco Bradesco.
                    b.EspecieDocumento = new EspecieDocumento(17);
                    break;
                case "275":
                    //Banco Real.
                    b.EspecieDocumento = new EspecieDocumento(17);
                    break;
                case "291":
                    //Banco BCN.
                    b.EspecieDocumento = new EspecieDocumento(17);
                    break;
                case "341":
                    //Banco Itaú.
                    b.EspecieDocumento = new EspecieDocumento_Itau("99");
                    break;
                case "347":
                    //Banco Sudameris.
                    b.EspecieDocumento = new EspecieDocumento_Sudameris("17");
                    break;
                case "356":
                    //Banco Real.
                    break;
                //Não funciona com isso.
                //b.EspecieDocumento = New EspecieDocumento_BancoBrasil(17)
                //b.EspecieDocumento = New EspecieDocumento_Itau(99)
                case "409":
                    //Banco Unibanco.
                    b.EspecieDocumento = new EspecieDocumento(17);
                    break;
                case "422":
                    //Banco Safra.
                    b.EspecieDocumento = new EspecieDocumento(17);
                    break;
                default:
                    //Banco de teste Santander.
                    b.EspecieDocumento = new EspecieDocumento_Santander("17");
                    break;
            }


            BoletoBancario bb = new BoletoBancario();
            bb.CodigoBanco = Convert.ToInt16(txtBanco.Text);
            //33 '-> Referente ao código do Santander
            bb.Boleto = b;
            //bb.MostrarCodigoCarteira = True
            bb.Boleto.Valida();

            //true -> Mostra o compravante de entrega
            //false -> Oculta o comprovante de entrega
            bb.MostrarComprovanteEntrega = false;

            panelDados.Visible = false;
            panelBoleto.Controls.Clear();
            if (panelBoleto.Controls.Count == 0)
            {
                panelBoleto.Controls.Add(bb);
            }

            //03399.08063 49800.000330 32007.101028 8 41680000065640 -> correta
            //03399.08063 49800.000330 32007.101028 8 41680000065640
            //03399.08063 49800.000330 32007.101028 1 41680000065640
            //03399.08063 49800.003334 20071.301012 6 41680000065640
            //03399.08063 49800.000330 32007.101028 1 41680000065640

            //03399.08063 49800.003334 20071.301020 4 41680000065640
            //03399.08063 49800.003334 20071.301020 4 41680000065640

            //Gerar remessa.
            //Dim rdr As System.IO.Stream
            //Dim arquivo As New ArquivoRemessa(TipoArquivo.CNAB400)
            //arquivo.GerarArquivoRemessa(txtCodigoCedente.Text, b.Banco, _
            // b.Cedente, b, rdr, 1)
            //Response.Write(rdr.ToString())



            return;
        }
        catch (Exception ex)
        {

            Response.Write(ex);

        }
    }
Exemple #6
0
        public byte[] ItauPDF()
        {
            DateTime vencimento = DateTime.Now.AddDays(1);

            Instrucao_Itau item1 = new Instrucao_Itau(9, 5);
            Instrucao_Itau item2 = new Instrucao_Itau(81, 10);
            Cedente c = new Cedente("10.823.650/0001-90", "SAFIRALIFE", "4406", "22324");
            //Na carteira 198 o código do Cedente é a conta bancária
            c.Codigo = "13000";

            BoletoNet.Boleto b = new BoletoNet.Boleto(vencimento, 0.1m, "176", "00000001", c, new EspecieDocumento(341, "1"));
            b.NumeroDocumento = "00000001";

            b.Sacado = new Sacado("000.000.000-00", "Nome do seu Cliente ");
            b.Sacado.Endereco.End = "Endereço do seu Cliente ";
            b.Sacado.Endereco.Bairro = "Bairro";
            b.Sacado.Endereco.Cidade = "Cidade";
            b.Sacado.Endereco.CEP = "00000000";
            b.Sacado.Endereco.UF = "UF";

            // Exemplo de como adicionar mais informações ao sacado
            b.Sacado.InformacoesSacado.Add(new InfoSacado("TÍTULO: " + "2541245"));

            item2.Descricao += " " + item2.QuantidadeDias.ToString() + " dias corridos do vencimento.";
            b.Instrucoes.Add(item1);
            b.Instrucoes.Add(item2);

            // juros/descontos

            if (b.ValorDesconto == 0)
            {
                Instrucao_Itau item3 = new Instrucao_Itau(999, 1);
                item3.Descricao += ("1,00 por dia de antecipação.");
                b.Instrucoes.Add(item3);
            }

            boletoBancario.Boleto = b;
            boletoBancario.Boleto.Valida();

            return boletoBancario.MontaBytesPDF();
        }
Exemple #7
0
        public Instrucao CarregaInstrucao(int codigoBanco, int codigoInstrucao, int quantidadeDias)
        {
            IInstrucao _IInstrucao = null;

            //Instrucao instrucao;
            try
            {
                switch (codigoBanco)
                {
                //399 - HSBC
                case 399:
                    _IInstrucao = new Instrucao_HSBC(codigoInstrucao, quantidadeDias);
                    break;

                //104 - Caixa
                case 104:
                    _IInstrucao = new Instrucao_Caixa(codigoInstrucao, quantidadeDias);
                    break;

                //341 - Itaú
                case 341:
                    _IInstrucao = new Instrucao_Itau(codigoInstrucao, quantidadeDias);
                    break;

                //1 - Banco do Brasil
                case 1:
                    _IInstrucao = new Instrucao_BancoBrasil(codigoInstrucao, quantidadeDias);
                    break;

                //356 - Real
                case 356:
                    _IInstrucao = new Instrucao_Real(codigoInstrucao, quantidadeDias);
                    break;

                //422 - Safra
                case 422:
                    _IInstrucao = new Instrucao_Safra(codigoInstrucao, quantidadeDias);
                    break;

                //237 - Bradesco
                //707 - Daycoval
                case 237:
                case 707:
                    _IInstrucao = new Instrucao_Bradesco(codigoInstrucao, quantidadeDias);
                    break;

                //347 - Sudameris
                case 347:
                    _IInstrucao = new Instrucao_Sudameris(codigoInstrucao, quantidadeDias);
                    break;

                //353 - Santander
                case 353:
                case 33:
                case 8:
                    //case 8:
                    _IInstrucao = new Instrucao_Santander(codigoInstrucao, quantidadeDias);
                    break;

                //070 - BRB
                case 70:
                    _IInstrucao = new Instrucao_BRB(codigoInstrucao, quantidadeDias);
                    break;

                //479 - BankBoston
                case 479:
                    _IInstrucao = new Instrucao_BankBoston(codigoInstrucao, quantidadeDias);
                    break;

                //41 - Banrisul
                case 41:
                    _IInstrucao = new Instrucao_Banrisul(codigoInstrucao, quantidadeDias);
                    break;

                //756 - Sicoob
                case 756:
                    _IInstrucao = new Instrucao_Sicoob(codigoInstrucao, quantidadeDias);
                    break;

                //85 - CECRED
                case 85:
                    _IInstrucao = new Instrucao_Cecred(codigoInstrucao, quantidadeDias);
                    break;

                //748 - Sicredi
                case 748:
                    _IInstrucao = new Instrucao_Sicredi(codigoInstrucao, quantidadeDias);
                    break;

                //655 - Votorantim
                case 655:
                    //_IInstrucao = new Instrucao_Votorantim();
                    break;

                case 136:
                    _IInstrucao = new Instrucao_Unicred(codigoInstrucao, quantidadeDias);
                    break;

                default:
                    throw new Exception("Código do banco não implementando: " + codigoBanco);
                }
            }
            catch (Exception ex)
            {
                throw new Exception("Erro durante a execução da transação.", ex);
            }
            Instrucao instrucao = new Instrucao(codigoBanco);

            instrucao.Codigo         = codigoInstrucao;
            instrucao.Descricao      = _IInstrucao.Descricao;
            instrucao.QuantidadeDias = _IInstrucao.QuantidadeDias;

            return(instrucao);
        }
Exemple #8
0
        private void GeraBoletoItau(int qtde)
        {
            // Cria o boleto, e passa os parâmetros usuais
            BoletoBancario bb;

            List<BoletoBancario> boletos = new List<BoletoBancario>();
            for (int i = 0; i < qtde; i++)
            {

                bb = new BoletoBancario();
                bb.CodigoBanco = _codigoBanco;

                DateTime vencimento = DateTime.Now.AddDays(10);

                Instrucao_Itau item1 = new Instrucao_Itau(9, 5);
                Instrucao_Itau item2 = new Instrucao_Itau(81, 10);
                Cedente c = new Cedente("00.000.000/0000-00", "Empresa de Atacado", "0542", "13000");
                //Na carteira 198 o código do Cedente é a conta bancária
                c.Codigo = "13000";

                Boleto b = new Boleto(vencimento, 1642, "198", "92082835", c, new EspecieDocumento(341, "1"));
                b.NumeroDocumento = Convert.ToString(10000 + i);

                b.Sacado = new Sacado("000.000.000-00", "Fulano de Silva");
                b.Sacado.Endereco.End = "SSS 154 Bloco J Casa 23";
                b.Sacado.Endereco.Bairro = "Testando";
                b.Sacado.Endereco.Cidade = "Testelândia";
                b.Sacado.Endereco.CEP = "70000000";
                b.Sacado.Endereco.UF = "DF";

                item2.Descricao += " " + item2.QuantidadeDias.ToString() + " dias corridos do vencimento.";
                b.Instrucoes.Add(item1);
                b.Instrucoes.Add(item2);

                // juros/descontos

                if (b.ValorDesconto == 0)
                {
                    Instrucao_Itau item3 = new Instrucao_Itau(999, 1);
                    item3.Descricao += ("1,00 por dia de antecipação.");
                    b.Instrucoes.Add(item3);
                }

                bb.Boleto = b;
                bb.Boleto.Valida();

                boletos.Add(bb);
            }

            GeraLayout(boletos);
        }