Beispiel #1
0
    protected void Page_Load(object sender, EventArgs e)
    {
        DateTime vencimento = DateTime.Now.AddDays(5);

        Instrucao_Bradesco item = new Instrucao_Bradesco(9, 5);

        Cedente c = new Cedente("00.000.000/0000-00", "Empresa de Atacado", "1234", "5", "123456", "7");
        c.Codigo = "13000";


        //Carteiras 
        Boleto b = new Boleto(vencimento, 1.01m, "09", "01000000001", c);
        b.NumeroDocumento = "01000000001";

        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";     

        item.Descricao += " após " + item.QuantidadeDias.ToString() + " dias corridos do vencimento.";
        b.Instrucoes.Add(item); //"Não Receber após o vencimento");

        Instrucao i = new Instrucao(237);
        i.Descricao = "Nova Instrução";
        b.Instrucoes.Add(i);

        /* 
         * A data de vencimento não é usada
         * Usado para mostrar no lugar da data de vencimento o termo "Contra Apresentação";
         * Usado na carteira 06
         */
        boletoBancario.MostrarContraApresentacaoNaDataVencimento = true;

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

        boletoBancario.MostrarComprovanteEntrega = (Request.Url.Query == "?show");
    }
        //Classe para gerar novo boleto
        public static BoletoBancario VisualizarBoleto()
        {
            Atributos Acessando = BoletoDAL.CarregarDadosBoleto(Usuario.Bloco, Usuario.Apartamento, Usuario.CodMorador);

                Acessando.Pago = 0;
                Acessando.VenciBoleto = DateTime.Now.Date.AddDays(15);
                Acessando.EmissaoBoleto = DateTime.Now.Date;

                String DataBlt = Convert.ToString(DateTime.Now.ToShortDateString());
                Random aleatorio = new Random();

                //int oi = aleatorio.Next(9);
                //int digito =
                int digito = DigitoVerificador.DigitoModulo11(aleatorio.Next(9));
                Acessando.NumeroDocumento = DataBlt.Replace("/", "") + Usuario.Apartamento + Usuario.Bloco + digito;

                //###############################################

                //Informa os dados do cedente
                Cedente DadosCedente;

                //DadosCedente = new Cedente(txtCPFCNPJ.Text, txtNomeCedente.Text, txtAgenciaCendente.Text, txtContaCedente.Text);
                DadosCedente = new Cedente(Acessando.CnpjCondominio, Acessando.NomeCondominio, Acessando.AgenciaCondominio, Acessando.ContaCondominio);

                //Dependendo da carteira, é necessário informar o código do cedente (o banco que fornece)
                DadosCedente.Codigo = Convert.ToString(Acessando.CodCondominio);

                //'Dados para preenchimento do boleto (data de vencimento, valor, carteira e nosso número)
                Boleto boleto;
                boleto = new BoletoNet.Boleto(Convert.ToDateTime(Acessando.VenciBoleto), Convert.ToDecimal(Acessando.ValorBoleto), "09", Acessando.NossoNumero, DadosCedente);

                // 'Dependendo da carteira, é necessário o número do documento
                boleto.NumeroDocumento = Acessando.NumeroDocumento;

                //Informa os dados do sacado
                boleto.Sacado = new Sacado(Acessando.CpfMorador, Acessando.NomeMorador);
                boleto.Sacado.Endereco.End = Acessando.EndMorador;
                boleto.Sacado.Endereco.Bairro = Acessando.BairroMorador;
                boleto.Sacado.Endereco.Cidade = Acessando.CidadeMorador;
                boleto.Sacado.Endereco.CEP = Acessando.CepMorador;
                boleto.Sacado.Endereco.UF = Acessando.UfMorador;

                /*
                 Dim i As New Instrucao_Bradesco()
                i.Descricao = "Não Receber após o vencimento"
                b.Instrucoes.Add(i)
                 */

                Instrucao_Bradesco insBoleto;
                insBoleto = new Instrucao_Bradesco();

                insBoleto.Descricao = Acessando.Instrucao1 + "<br />" + Acessando.Instrucao2 + "<br />" + Acessando.Instrucao3 + "<br />" + Acessando.Instrucao4 + "<br />" + Acessando.Instrucao5 + "<br/>";

                boleto.Instrucoes.Add(insBoleto);

                /*
                  'Espécie do Documento - [R] Recibo
                   b.EspecieDocumento = New EspecieDocumento_Bradesco(17)

                  Dim bb As New BoletoBancario()
                  bb.CodigoBanco = 237 '-> Referente ao código do Santander
                  bb.Boleto = b
                ' bb.GeraImagemCodigoBarras(b)
                */

                boleto.EspecieDocumento = new EspecieDocumento_Bradesco("17");

                BoletoBancario boletob;

                boletob = new BoletoBancario();

                boletob.CodigoBanco = 237; // CODIGO DO BANCO

                boletob.Boleto = boleto;

                boletob.GeraImagemCodigoBarras(boleto);

                //bb.Boleto.Valida()

                boletob.Boleto.Valida();

                BoletoDAL.GravarTbFatura();

                //true -> Mostra o compravante de entrega
                //false -> Oculta o comprovante de entrega

                //teste.testandopanel.Visible = true;
                //teste.testandopanel.Controls.Add(boletob);

                return boletob;
                //boletob.MostrarComprovanteEntrega = true;

                //b.panelBoleto.Visible = true;

                //if (panelBoleto.Controls.Count == 0)
                //{
                //b.panelBoleto.Controls.Add(boletob);
                //};
        }
    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);

        }
    }
        protected void Page_Load(object sender, EventArgs e)
        {
            int quantidadeDeParcelas = 4;
            bool flagCarne = true;

            if (flagCarne == false)
            {
                /*
                *  Datas do boleto
                */
                DateTime dataDeVencimento = new DateTime(2015, 09, 30);
                DateTime dataDoDocumeto = new DateTime(2015, 09, 24);
                DateTime DataDoProcessamento = new DateTime(2015, 09, 24);

                BoletoBancario boletoBancario = new BoletoBancario();
                boletoBancario.CodigoBanco = (short)237;

                Cedente cedente = new Cedente("00.000.000/0000-00", "Empresa Teste", "2413", "1232916");
                cedente.Codigo = "13000";

                //Carteiras
                Boleto boleto = new Boleto(dataDeVencimento, 5.01m, "06", "12970171092", cedente);
                boleto.NumeroDocumento = "970171092";
                boleto.DataDocumento = dataDoDocumeto;
                boleto.DataProcessamento = DataDoProcessamento;

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

                Instrucao_Bradesco item = new Instrucao_Bradesco(9, 5);
                item.Descricao += " após " + item.QuantidadeDias.ToString() + " dias corridos do vencimento.";
                boleto.Instrucoes.Add(item); //"Não Receber após o vencimento");

                Instrucao i = new Instrucao(237);
                i.Descricao = "Nova Instrução";
                boleto.Instrucoes.Add(i);

                /*
                 * A data de vencimento não é usada
                 * Usado para mostrar no lugar da data de vencimento o termo "Contra Apresentação";
                 * Usado na carteira 06
                 */
                boletoBancario.MostrarContraApresentacaoNaDataVencimento = true;

                boletoBancario.Boleto = boleto;
                boletoBancario.MostrarContraApresentacaoNaDataVencimento = false;
                boletoBancario.MostrarCodigoCarteira = false;
                boletoBancario.MostrarComprovanteEntrega = true;

                boletoBancario.FormatoCarne = false;
                boletoBancario.Boleto.Valida();
                Panel1.Controls.Add(boletoBancario);

            }
            else
            {

                BoletoBancario[] arrayDeBoletos = new BoletoBancario[quantidadeDeParcelas];
                DateTime dataDeVencimento = new DateTime(2015, 09, 30);

                for (int j = 0; j < arrayDeBoletos.Length; j++)
                {
                    /*
                 *  Datas do boleto
                 */

                    DateTime dataDoDocumeto = new DateTime(2015, 09, 24);
                    DateTime DataDoProcessamento = new DateTime(2015, 09, 24);

                    BoletoBancario boletoBancario = new BoletoBancario();
                    boletoBancario.CodigoBanco = (short)237;

                    Cedente cedente = new Cedente("00.000.000/0000-00", "Empresa Teste", "2413", "1232916"); ;
                    cedente.Codigo = "13000";

                    //Carteiras
                    Boleto boleto = new Boleto(dataDeVencimento, 5.01m, "06", "12970171092", cedente);
                    boleto.NumeroDocumento = "970171092";
                    boleto.DataDocumento = dataDoDocumeto;
                    boleto.DataProcessamento = DataDoProcessamento;

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

                    Instrucao_Bradesco item = new Instrucao_Bradesco(9, 5);
                    item.Descricao += " após " + item.QuantidadeDias.ToString() + " dias corridos do vencimento.";
                    boleto.Instrucoes.Add(item); //"Não Receber após o vencimento");

                    Instrucao i = new Instrucao(237);
                    i.Descricao = "Nova Instrução";
                    boleto.Instrucoes.Add(i);

                    /*
                     * A data de vencimento não é usada
                     * Usado para mostrar no lugar da data de vencimento o termo "Contra Apresentação";
                     * Usado na carteira 06
                     */
                    boletoBancario.MostrarContraApresentacaoNaDataVencimento = true;

                    boletoBancario.Boleto = boleto;
                    boletoBancario.MostrarContraApresentacaoNaDataVencimento = false;
                    boletoBancario.MostrarCodigoCarteira = false;
                    boletoBancario.MostrarComprovanteEntrega = true;

                    boletoBancario.FormatoCarne = true;
                    boletoBancario.Boleto.Valida();

                    arrayDeBoletos[j] = boletoBancario;

                    dataDeVencimento = dataDeVencimento.AddMonths(1);

                }

                for (int k = 0; k < arrayDeBoletos.Length; k++)
                {
                    Panel1.Controls.Add(arrayDeBoletos[k]);
                }
            }
        }
Beispiel #5
0
        public string Bradesco()
        {
            DateTime vencimento = new DateTime(2009, 12, 17);

            Instrucao_Bradesco item = new Instrucao_Bradesco(9, 5);

            Cedente c = new Cedente("00.000.000/0000-00", "Empresa de Atacado", "1234", "5", "123456", "7");
            c.Codigo = "13000";


            //Carteiras 
            BoletoNet.Boleto b = new BoletoNet.Boleto(vencimento, 1.01m, "09", "01000000001", c);
            b.NumeroDocumento = "01000000001";
            b.DataVencimento = new DateTime(2015, 09, 12);

            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";

            item.Descricao += " após " + item.QuantidadeDias.ToString() + " dias corridos do vencimento.";
            b.Instrucoes.Add(item); //"Não Receber após o vencimento");

            Instrucao i = new Instrucao(237);
            i.Descricao = "Nova Instrução";
            b.Instrucoes.Add(i);

            /* 
             * A data de vencimento não é usada
             * Usado para mostrar no lugar da data de vencimento o termo "Contra Apresentação";
             * Usado na carteira 06
             */
            boletoBancario.MostrarContraApresentacaoNaDataVencimento = true;

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

            return boletoBancario.MontaHtmlEmbedded();
        }
Beispiel #6
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);
        }
Beispiel #7
0
        public void GeraBoletoBradesco(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_Bradesco item = new Instrucao_Bradesco(9, 5);

                Cedente c = new Cedente("00.000.000/0000-00", "Empresa de Atacado", "1234", "5", "123456", "7");
                c.Codigo = "13000";

                Endereco end = new Endereco();
                end.Bairro = "Lago Sul";
                end.CEP = "71666660";
                end.Cidade = "Brasília- DF";
                end.Complemento = "Quadra XX Conjunto XX Casa XX";
                end.End = "Condominio de Brasilia - Quadra XX Conjunto XX Casa XX";
                end.Logradouro = "Cond. Brasilia";
                end.Numero = "55";
                end.UF = "DF";

                Boleto b = new Boleto(vencimento, 1.01m, "02", "01000000001", c);
                b.NumeroDocumento = "01000000001";

                b.Sacado = new Sacado("000.000.000-00", "Eduardo Frare");
                b.Sacado.Endereco = end;

                item.Descricao += " após " + item.QuantidadeDias.ToString() + " dias corridos do vencimento.";
                b.Instrucoes.Add(item); //"Não Receber após o vencimento");

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

                boletos.Add(bb);
            }

            GeraLayout(boletos);
        }
        public static BoletoBancario VisualizarBoleto()
        {
            Morador = BoletoDAL.CarregarDadosBoletoFatura(Usuario.Bloco, Usuario.Apartamento, Usuario.CodMorador);

            if (Morador != null)
            {
                int diascorridos;

                DateTime DataAtual = DateTime.Today;

                if (DataAtual > Convert.ToDateTime(Morador.VenciBoleto))
                {
                    diascorridos = BoletoDAL.GetDiasCorridos(Morador.VenciBoleto, DataAtual);

                    Cedente DadosCedente;

                    DadosCedente = new Cedente(Morador.CnpjCondominio, Morador.NomeCondominio, Morador.AgenciaCondominio, Morador.ContaCondominio);

                    DadosCedente.Codigo = Convert.ToString(Morador.CodCondominio);

                    Boleto boleto;

                    boleto = new BoletoNet.Boleto(Convert.ToDateTime(Morador.VenciBoleto), Convert.ToDecimal(Morador.ValorBoleto), "09", Morador.NossoNumero, DadosCedente);

                    BoletoDAL.CorreçãoMonetaria(Morador.ValorBoleto, Morador.VenciBoleto);

                    boleto.JurosMora = Convert.ToDecimal(Morador.ValorBoleto * 1 / 100); // 1% do valor , divido por 30;
                    boleto.ValorMulta = Convert.ToDecimal(Morador.ValorBoleto * 2 / 100);

                    boleto.ValorCobrado = Convert.ToDecimal(Morador.ValorBoleto) + diascorridos * boleto.JurosMora + boleto.ValorMulta;

                    //*******
                    boleto.Carteira = "06";
                    boleto.Especie = "R$";
                    //*******

                    // 'Dependendo da carteira, é necessário o número do documento
                    boleto.NumeroDocumento = Morador.NumeroDocumento;

                    //Informa os dados do sacado
                    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_Bradesco insBoleto;
                    insBoleto = new Instrucao_Bradesco();

                    insBoleto.Descricao = "MULTA POR ATRASO R$ "+Convert.ToString(boleto.ValorMulta)+"<br>"+"JUROS POR DIA R$ "+Convert.ToString(boleto.JurosMora)+"<br>"+Morador.Instrucao1 + "<br />" + Morador.Instrucao2 + "<br />" + Morador.Instrucao3 + "<br />" + Morador.Instrucao4 + "<br />" + Morador.Instrucao5 + "<br/>";

                    boleto.Instrucoes.Add(insBoleto);

                    boleto.EspecieDocumento = new EspecieDocumento_Bradesco("17");

                    BoletoBancario boletob;

                    boletob = new BoletoBancario();

                    boletob.CodigoBanco = 237; // CODIGO DO BANCO

                    boletob.Boleto = boleto;

                    boletob.GeraImagemCodigoBarras(boleto);
                    boletob.Boleto.Valida();

                    return boletob;

                }
                else
                {

                    //Informa os dados do cedente
                    Cedente DadosCedente;

                    //DadosCedente = new Cedente(txtCPFCNPJ.Text, txtNomeCedente.Text, txtAgenciaCendente.Text, txtContaCedente.Text);
                    DadosCedente = new Cedente(Morador.CnpjCondominio, Morador.NomeCondominio, Morador.AgenciaCondominio, Morador.ContaCondominio);

                    //Dependendo da carteira, é necessário informar o código do cedente (o banco que fornece)
                    DadosCedente.Codigo = Convert.ToString(Morador.CodCondominio);

                    //'Dados para preenchimento do boleto (data de vencimento, valor, carteira e nosso número)
                    Boleto boleto;

                    boleto = new BoletoNet.Boleto(Convert.ToDateTime(Morador.VenciBoleto), Convert.ToDecimal(Morador.ValorBoleto), "09", Morador.NossoNumero, DadosCedente);

                    /*
                     boleto.JurosMora = Convert.ToDecimal(1.00);
                     boleto.ValorMulta = Convert.ToDecimal(2.00);
                     boleto.ValorCobrado = Convert.ToDecimal(Morador.ValorBoleto) + resultado * boleto.ValorMulta + boleto.JurosMora;
                    */

                    //*******
                    boleto.Carteira = "06";
                    boleto.Especie = "R$";
                    //*******

                    // 'Dependendo da carteira, é necessário o número do documento
                    boleto.NumeroDocumento = Morador.NumeroDocumento;

                    //Informa os dados do sacado
                    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_Bradesco insBoleto;
                    insBoleto = new Instrucao_Bradesco();

                    insBoleto.Descricao = Morador.Instrucao1 + "<br />" + Morador.Instrucao2 + "<br />" + Morador.Instrucao3 + "<br />" + Morador.Instrucao4 + "<br />" + Morador.Instrucao5 + "<br/>";

                    boleto.Instrucoes.Add(insBoleto);

                    boleto.EspecieDocumento = new EspecieDocumento_Bradesco("17");

                    BoletoBancario boletob;

                    boletob = new BoletoBancario();

                    boletob.CodigoBanco = 237; // CODIGO DO BANCO

                    boletob.Boleto = boleto;

                    boletob.GeraImagemCodigoBarras(boleto);
                    boletob.Boleto.Valida();

                    return boletob;

                }

            }
            else
            {
                return null;
            }
        }