Exemple #1
0
        public void FormatarNossoNumeroCarteiraRGCaixa()
        {
            var remessa = new Remessa(Remessa.EnumTipoAmbiemte.Homologacao, EnumCodigoOcorrenciaRemessa.Registro, "2");
            var banco   = Fabricas.BancoFactory.ObterBanco("104", "0");
            var contaBancariaCedente = new ContaBancaria("0799", "4", "1679", "9");
            var cedente = new Cedente("657224", 0, "99.999.999/9999-99", "Razão Social X", contaBancariaCedente,
                                      null);

            var sacado = new Sacado("Sacado Fulano de Tal", "999.999.999-99", new Endereco()
            {
                TipoLogradouro = "R",
                Logradouro     = "1",
                Bairro         = "Bairro X",
                Cidade         = "Cidade X",
                SiglaUf        = "XX",
                Cep            = "12345-000",
                Complemento    = "Comp X",
                Numero         = "9"
            });

            var carteira = new CarteiraCobranca {
                Codigo = "RG"
            };

            var boleto = new Boleto(carteira, cedente, sacado, remessa)
            {
                NumeroDocumento            = "528",
                ValorBoleto                = Convert.ToDecimal(491.65),
                IdentificadorInternoBoleto = "528",
                DataVencimento             = new DateTime(2016, 11, 05)
            };

            banco.FormatarBoleto(boleto);

            const string nossoNumeroFormatado = "14000000000000528-3";

            Assert.AreEqual(nossoNumeroFormatado.Length, boleto.NossoNumeroFormatado.Length);
            Assert.AreEqual(nossoNumeroFormatado, boleto.NossoNumeroFormatado);
        }
Exemple #2
0
        public void CalcularCodigoBarrasCarteiraSRCaixa()
        {
            var remessa = new Remessa(Remessa.EnumTipoAmbiemte.Homologacao, EnumCodigoOcorrenciaRemessa.Registro, "2");
            var banco   = Fabricas.BancoFactory.ObterBanco("104", "0");
            var contaBancariaCedente = new ContaBancaria("0799", "4", "001024", "3");
            var cedente = new Cedente("245", 0, "99.999.999/9999-99", "Razão Social X", contaBancariaCedente,
                                      null);

            var sacado = new Sacado("Sacado Fulano de Tal", "999.999.999-99", new Endereco()
            {
                TipoLogradouro = "R",
                Logradouro     = "1",
                Bairro         = "Bairro X",
                Cidade         = "Cidade X",
                SiglaUf        = "XX",
                Cep            = "12345-000",
                Complemento    = "Comp X",
                Numero         = "9"
            });

            var carteira = new CarteiraCobranca {
                Codigo = "SR"
            };

            var boleto = new Boleto(carteira, cedente, sacado, remessa)
            {
                NumeroDocumento            = "83",
                ValorBoleto                = Convert.ToDecimal(478.01),
                IdentificadorInternoBoleto = "83",
                DataVencimento             = new DateTime(2016, 11, 15)
            };

            banco.FormatarBoleto(boleto);

            const string codigoBarras = "10491697900000478010002453000200040000000834";

            Assert.AreEqual(boleto.CodigoBarraBoleto.Length, codigoBarras.Length);
            Assert.AreEqual(codigoBarras, boleto.CodigoBarraBoleto);
        }
Exemple #3
0
        public void CalcularLinhaDigitavelCarteira02Bradesco()
        {
            var remessa = new Remessa(Remessa.EnumTipoAmbiemte.Homologacao, EnumCodigoOcorrenciaRemessa.Registro, "2");
            var banco   = Fabricas.BancoFactory.ObterBanco("237", "2");
            var contaBancariaCedente = new ContaBancaria("0534", "7", "2801", "0");
            var cedente = new Cedente("4879962", 0, "99.999.999/9999-99", "Razão Social X", contaBancariaCedente, null);

            var sacado = new Sacado("Sacado Fulano de Tal", "999.999.999-99", new Endereco()
            {
                TipoLogradouro = "R",
                Logradouro     = "1",
                Bairro         = "Bairro X",
                Cidade         = "Cidade X",
                SiglaUf        = "XX",
                Cep            = "12345-000",
                Complemento    = "Comp X",
                Numero         = "9"
            });

            var carteira = new CarteiraCobranca {
                Codigo = "02", BancoEmiteBoleto = false
            };

            var boleto = new Boleto(carteira, cedente, sacado, remessa)
            {
                NumeroDocumento            = "55617",
                ValorBoleto                = Convert.ToDecimal(501.81),
                IdentificadorInternoBoleto = "55617",
                DataVencimento             = new DateTime(2016, 11, 15),
                Moeda = "9"
            };

            banco.FormatarBoleto(boleto);

            const string linhaDigitavel = "23790.53404 20000.005569 17000.280101 6 69790000050181";

            Assert.AreEqual(linhaDigitavel.Length, boleto.LinhaDigitavelBoleto.Length);
            Assert.AreEqual(linhaDigitavel, boleto.LinhaDigitavelBoleto);
        }
Exemple #4
0
        public void CalcularCodigoBarrasCarteira06Bradesco()
        {
            var remessa = new Remessa(Remessa.EnumTipoAmbiemte.Homologacao, EnumCodigoOcorrenciaRemessa.Registro, "2");
            var banco   = Fabricas.BancoFactory.ObterBanco("237", "2");
            var contaBancariaCedente = new ContaBancaria("2374", "4", "0165199", "4");
            var cedente = new Cedente("9999999", 0, "99.999.999/9999-99", "Razão Social X", contaBancariaCedente, null);

            var sacado = new Sacado("Sacado Fulano de Tal", "999.999.999-99", new Endereco()
            {
                TipoLogradouro = "R",
                Logradouro     = "1",
                Bairro         = "Bairro X",
                Cidade         = "Cidade X",
                SiglaUf        = "XX",
                Cep            = "12345-000",
                Complemento    = "Comp X",
                Numero         = "9"
            });

            var carteira = new CarteiraCobranca {
                Codigo = "06"
            };

            var boleto = new Boleto(carteira, cedente, sacado, remessa)
            {
                NumeroDocumento            = "41636135093",
                ValorBoleto                = Convert.ToDecimal(221.40),
                IdentificadorInternoBoleto = "41636135093",
                DataVencimento             = new DateTime(2014, 07, 10),
                Moeda = "9"
            };

            banco.FormatarBoleto(boleto);

            const string valorEsperado = "23797612000000221402374064163613509301651990";

            Assert.AreEqual(valorEsperado.Length, boleto.CodigoBarraBoleto.Length);
            Assert.AreEqual(valorEsperado, boleto.CodigoBarraBoleto);
        }
Exemple #5
0
        public void CalcularCodigoBarrasCarteira09Bradesco()
        {
            var remessa = new Remessa(Remessa.EnumTipoAmbiemte.Homologacao, EnumCodigoOcorrenciaRemessa.Registro, "2");
            var banco   = Fabricas.BancoFactory.ObterBanco("237", "2");
            var contaBancariaCedente = new ContaBancaria("1923", "2", "31718", "7");
            var cedente = new Cedente("4872529", 0, "99.999.999/9999-99", "Razão Social X", contaBancariaCedente, null);

            var sacado = new Sacado("Sacado Fulano de Tal", "999.999.999-99", new Endereco()
            {
                TipoLogradouro = "R",
                Logradouro     = "1",
                Bairro         = "Bairro X",
                Cidade         = "Cidade X",
                SiglaUf        = "XX",
                Cep            = "12345-000",
                Complemento    = "Comp X",
                Numero         = "9"
            });

            var carteira = new CarteiraCobranca {
                Codigo = "09", BancoEmiteBoleto = false
            };

            var boleto = new Boleto(carteira, cedente, sacado, remessa)
            {
                NumeroDocumento            = "57582",
                ValorBoleto                = Convert.ToDecimal(472.50),
                IdentificadorInternoBoleto = "57582",
                DataVencimento             = new DateTime(2016, 11, 10),
                Moeda = "9"
            };

            banco.FormatarBoleto(boleto);

            const string codigoBarras = "23796697400000472501923090000005758200317180";

            Assert.AreEqual(codigoBarras.Length, boleto.CodigoBarraBoleto.Length);
            Assert.AreEqual(codigoBarras, boleto.CodigoBarraBoleto);
        }
        public void TesteCalculoNossoNumeroCarteira109BoletoItau()
        {
            var remessa = new Remessa(Remessa.EnumTipoAmbiemte.Homologacao, EnumCodigoOcorrenciaRemessa.Registro, "2");

            var banco = Fabricas.BancoFactory.ObterBanco("341", "7");

            var contaBancariaCedente = new ContaBancaria("0057", "", "72192", "");

            var cedente = new Cedente("9999999", 0, "99.999.999/9999-99", "Razão Social X", contaBancariaCedente, null);

            var sacado = new Sacado("Sacado Fulano de Tal", "99.999.999/9999-99", new Endereco()
            {
                TipoLogradouro = "R",
                Logradouro     = "1",
                Bairro         = "Bairro X",
                Cidade         = "Cidade X",
                SiglaUf        = "XX",
                Cep            = "12345-000",
                Complemento    = "Comp X",
                Numero         = "9"
            });

            var carteira = new CarteiraCobranca();

            carteira.Codigo = "109";

            var boleto = new Boleto(carteira, cedente, sacado, remessa);

            boleto.NumeroDocumento            = "12345678";
            boleto.ValorBoleto                = 12345;
            boleto.IdentificadorInternoBoleto = "12345678";
            boleto.DataVencimento             = new DateTime(2014, 11, 14);

            banco.ValidaBoletoComNormasBanco(boleto);
            banco.FormataNossoNumero(boleto);

            Assert.AreEqual("109/12345678-8", boleto.NossoNumeroFormatado);
        }
Exemple #7
0
        public void FomatarNumeroDocumentoCarteira101Santander()
        {
            var remessa = new Remessa(Remessa.EnumTipoAmbiemte.Homologacao, EnumCodigoOcorrenciaRemessa.Registro, "2");
            var banco   = Fabricas.BancoFactory.ObterBanco("033", "7");
            var contaBancariaCedente = new ContaBancaria("0020", "5", "13003695", "9");
            var cedente = new Cedente("6432794", 0, "99.999.999/9999-99", "Razão Social X", contaBancariaCedente,
                                      null);

            var sacado = new Sacado("Sacado Fulano de Tal", "999.999.999-99", new Endereco()
            {
                TipoLogradouro = "R",
                Logradouro     = "1",
                Bairro         = "Bairro X",
                Cidade         = "Cidade X",
                SiglaUf        = "XX",
                Cep            = "12345-000",
                Complemento    = "Comp X",
                Numero         = "9"
            });

            var carteira = new CarteiraCobranca {
                Codigo = "101"
            };

            var boleto = new Boleto(carteira, cedente, sacado, remessa)
            {
                NumeroDocumento            = "14369",
                ValorBoleto                = Convert.ToDecimal(337.00),
                IdentificadorInternoBoleto = "14369",
                DataVencimento             = new DateTime(2016, 11, 10),
                CodigoDeTransmissao        = "00200643279401300369"
            };

            banco.FormatarBoleto(boleto);

            Assert.AreEqual(boleto.NumeroDocumento.Length, 10);
            Assert.AreEqual("0000014369", boleto.NumeroDocumento);
        }
Exemple #8
0
        public void TesteCalculoNossoNumeroCarteiraSrDocumentacaoCef()
        {
            var remessa = new Remessa(Remessa.EnumTipoAmbiemte.Homologacao, EnumCodigoOcorrenciaRemessa.Registro, "2");

            var banco = Fabricas.BancoFactory.ObterBanco("104", "0");

            var contaBancariaCedente = new ContaBancaria("007", "8", "", "");

            var cedente = new Cedente("9999999", 0, "99.999.999/9999-99", "Razão Social X", contaBancariaCedente, null);

            var sacado = new Sacado("Sacado Fulano de Tal", "99.999.999/9999-99", new Endereco()
            {
                TipoLogradouro = "R",
                Logradouro     = "1",
                Bairro         = "Bairro X",
                Cidade         = "Cidade X",
                SiglaUf        = "XX",
                Cep            = "12345-000",
                Complemento    = "Comp X",
                Numero         = "9"
            });

            var carteira = new CarteiraCobranca();

            carteira.Codigo = "SR";

            var boleto = new Boleto(carteira, cedente, sacado, remessa);

            boleto.NumeroDocumento            = "19";
            boleto.ValorBoleto                = 1000;
            boleto.IdentificadorInternoBoleto = "19";
            boleto.DataVencimento             = new DateTime(2014, 06, 30);

            banco.FormataNossoNumero(boleto);

            //Providenciar boleto real para efetuar o teste da Carteira SEM REGISTRO
            Assert.AreEqual("24000000000019", boleto.NossoNumeroFormatado);
        }
Exemple #9
0
        public void FormatarNossoNumeroCarteira102Santander()
        {
            var remessa = new Remessa(Remessa.EnumTipoAmbiemte.Homologacao, EnumCodigoOcorrenciaRemessa.Registro, "2");
            var banco   = Fabricas.BancoFactory.ObterBanco("033", "7");
            var contaBancariaCedente = new ContaBancaria("4165", "", "", "");
            var cedente = new Cedente("6545424", "1", 0, "99.999.999/9999-99", "Razao Social X", contaBancariaCedente, null);

            var sacado = new Sacado("Sacado Fulano de Tal", "99.999.999/9999-99", new Endereco()
            {
                TipoLogradouro = "R",
                Logradouro     = "1",
                Bairro         = "Bairro X",
                Cidade         = "Cidade X",
                SiglaUf        = "XX",
                Cep            = "12345-000",
                Complemento    = "Comp X",
                Numero         = "9"
            });

            var carteira = new CarteiraCobranca {
                Codigo = "102"
            };

            var boleto = new Boleto(carteira, cedente, sacado, remessa)
            {
                NumeroDocumento            = "0000000014070",
                ValorBoleto                = Convert.ToDecimal(252.00),
                IdentificadorInternoBoleto = "14070",
                DataVencimento             = new DateTime(2014, 07, 07)
            };

            banco.FormataNossoNumero(boleto);

            const string valorEsperado = "0000000140708";

            Assert.AreEqual(valorEsperado.Length, boleto.NossoNumeroFormatado.Length);
            Assert.AreEqual(valorEsperado, boleto.NossoNumeroFormatado);
        }
        public void FomatarNossoNumeroSicredi()
        {
            var remessa = new Remessa(Remessa.EnumTipoAmbiemte.Homologacao, EnumCodigoOcorrenciaRemessa.Registro, "2");
            var banco   = Fabricas.BancoFactory.ObterBanco("748");
            var contaBancariaCedente = new ContaBancaria("0136", "30", "20553", "5");
            var cedente = new Cedente("20553", 0, "13.562.237/0001-08", "NATIONAL - CONSTRUTORA E INCORPORADORA LTDA", contaBancariaCedente, null);

            var sacado = new Sacado("Sacado Fulano de Tal", "999.999.999-99", new Endereco()
            {
                TipoLogradouro = "R",
                Logradouro     = "1",
                Bairro         = "Bairro X",
                Cidade         = "Cidade X",
                SiglaUf        = "XX",
                Cep            = "12345-000",
                Complemento    = "Comp X",
                Numero         = "9"
            });

            var carteira = new CarteiraCobranca {
                Codigo = "1"
            };

            var boleto = new Boleto(carteira, cedente, sacado, remessa)
            {
                NumeroDocumento            = "14369",
                ValorBoleto                = Convert.ToDecimal(337.00),
                IdentificadorInternoBoleto = "00052",
                DataVencimento             = new DateTime(2021, 11, 10)
            };

            banco.FormatarBoleto(boleto);

            Assert.IsTrue(boleto.NossoNumeroFormatado.Length == 11);
            Assert.IsTrue(boleto.NossoNumeroFormatado[3].ToString() != "1");
            Assert.IsTrue(boleto.NossoNumeroFormatado[2].ToString() == "/" &&
                          boleto.NossoNumeroFormatado[9].ToString() == "-");
        }
        public void CalculoNossoNumeroCarteira17BancoDoBrasil()
        {
            var remessa = new Remessa(Remessa.EnumTipoAmbiemte.Homologacao, EnumCodigoOcorrenciaRemessa.Registro, "2");

            var banco = Fabricas.BancoFactory.ObterBanco("001", "9");

            var contaBancariaCedente = new ContaBancaria("2374", "4", "0165199", "4");

            var cedente = new Cedente("9999999", 0, "99.999.999/9999-99", "Razão Social X", contaBancariaCedente, null);

            var sacado = new Sacado("Sacado Fulano de Tal", "999.999.999-99", new Endereco()
            {
                TipoLogradouro = "R",
                Logradouro     = "1",
                Bairro         = "Bairro X",
                Cidade         = "Cidade X",
                SiglaUf        = "XX",
                Cep            = "12345-000",
                Complemento    = "Comp X",
                Numero         = "9"
            });

            var carteira = new CarteiraCobranca {
                Codigo = "16"
            };

            var boleto = new Boleto(carteira, cedente, sacado, remessa)
            {
                NumeroDocumento            = "1",
                ValorBoleto                = Convert.ToDecimal(221.40),
                IdentificadorInternoBoleto = "1",
                DataVencimento             = new DateTime(2014, 07, 10)
            };

            banco.FormataNossoNumero(boleto);

            Assert.AreEqual("06/41636135093-P", boleto.NossoNumeroFormatado);
        }
Exemple #12
0
        public void TesteGerarNumeroBoletoSemFatorVencimento()
        {
            var remessa = new Remessa(Remessa.EnumTipoAmbiemte.Homologacao, EnumCodigoOcorrenciaRemessa.Registro, "1");

            var banco = Fabricas.BancoFactory.ObterBanco("070");

            var contaBancariaCedente = new ContaBancaria("058", "", "600200", "6");
            var cedente = new Cedente("9999999", 0, "99.999.999/9999-99", "Razão Social X", contaBancariaCedente, null);
            var sacado  = new Sacado("Sacado Fulano de Tal", "99.999.999/9999-99", new Endereco()
            {
                TipoLogradouro = "R",
                Logradouro     = "1",
                Bairro         = "Bairro X",
                Cidade         = "Cidade X",
                SiglaUf        = "XX",
                Cep            = "12345-000",
                Complemento    = "Comp X",
                Numero         = "9"
            });

            var carteira = new CarteiraCobranca
            {
                Codigo = "1",
                Tipo   = "1"
            };

            var boleto = new Boleto(carteira, cedente, sacado, remessa)
            {
                NumeroDocumento            = "1",
                ValorBoleto                = Convert.ToDecimal(1.00),
                IdentificadorInternoBoleto = "1"
            };

            banco.FormataNossoNumero(boleto);
            banco.FormataCodigoBarra(boleto);

            Assert.AreEqual("07096000000000001000000586002006100000107045", boleto.CodigoBarraBoleto);
        }
Exemple #13
0
        public void TesteGerarLinhaDigitavelBoletoComFatorVencimento()
        {
            var remessa = new Remessa(Remessa.EnumTipoAmbiemte.Homologacao, EnumCodigoOcorrenciaRemessa.Registro, "1");

            var banco = Fabricas.BancoFactory.ObterBanco("070");

            var contaBancariaCedente = new ContaBancaria("201", "", "19316", "9");
            var cedente = new Cedente("9999999", 0, "99.999.999/9999-99", "Razão Social X", contaBancariaCedente, null);
            var sacado  = new Sacado("Sacado Fulano de Tal", "99.999.999/9999-99", new Endereco()
            {
                TipoLogradouro = "R",
                Logradouro     = "1",
                Bairro         = "Bairro X",
                Cidade         = "Cidade X",
                SiglaUf        = "XX",
                Cep            = "12345-000",
                Complemento    = "Comp X",
                Numero         = "9"
            });

            var carteira = new CarteiraCobranca();

            carteira.Codigo = "1";
            carteira.Tipo   = "1";

            var boleto = new Boleto(carteira, cedente, sacado, remessa);

            boleto.NumeroDocumento            = "37018";
            boleto.ValorBoleto                = Convert.ToDecimal(510.35);
            boleto.IdentificadorInternoBoleto = "37018";
            boleto.DataVencimento             = new DateTime(2015, 07, 08);

            banco.FormataNossoNumero(boleto);
            banco.FormataCodigoBarra(boleto);
            banco.FormataLinhaDigitavel(boleto);

            Assert.AreEqual("07090.00202 10193.169108 37018.070104 6 64830000051035", boleto.LinhaDigitavelBoleto);
        }
Exemple #14
0
        public void TestGeracaoArquivoRemessa()
        {
            var remessa = new Remessa(Remessa.EnumTipoAmbiemte.Homologacao, EnumCodigoOcorrenciaRemessa.Registro, "2");

            var banco = Fabricas.BancoFactory.ObterBanco("104", "0");

            var contaBancariaCedente = new ContaBancaria("007", "8", "1234", "0");

            var cedente = new Cedente("999999", 0, "99.999.999/9999-99", "Razão Social X", contaBancariaCedente, null);

            var sacado = new Sacado("Sacado Fulano de Tal", "99.999.999/9999-99", new Endereco
            {
                TipoLogradouro = "R",
                Logradouro     = "1",
                Bairro         = "Bairro X",
                Cidade         = "Cidade X",
                SiglaUf        = "XX",
                Cep            = "12345-000",
                Complemento    = "Comp X",
                Numero         = "9"
            });

            var carteira = new CarteiraCobranca {
                Codigo = "SR"
            };

            var boleto = new Boleto(carteira, cedente, sacado, remessa)
            {
                NumeroDocumento            = "19",
                ValorBoleto                = (decimal)1000.51,
                IdentificadorInternoBoleto = "19",
                DataVencimento             = new DateTime(2014, 06, 30),
                Especie = banco.ObtemEspecieDocumento(EnumEspecieDocumento.DuplicataMercantil)
            };

            banco.FormatarBoleto(boleto);
        }
Exemple #15
0
        public void FomatarNumeroDocumentoCarteiraCnrHsbc()
        {
            var remessa = new Remessa(Remessa.EnumTipoAmbiemte.Homologacao, EnumCodigoOcorrenciaRemessa.Registro, "2");
            var banco   = Fabricas.BancoFactory.ObterBanco("399", "9");
            var contaBancariaCedente = new ContaBancaria("1740", "0", "00135", "97");
            var cedente = new Cedente("4295579", 0, "99.999.999/9999-99", "Razão Social X", contaBancariaCedente,
                                      null);

            var sacado = new Sacado("Sacado Fulano de Tal", "999.999.999-99", new Endereco()
            {
                TipoLogradouro = "R",
                Logradouro     = "1",
                Bairro         = "Bairro X",
                Cidade         = "Cidade X",
                SiglaUf        = "XX",
                Cep            = "12345-000",
                Complemento    = "Comp X",
                Numero         = "9"
            });

            var carteira = new CarteiraCobranca {
                Codigo = "CNR"
            };

            var boleto = new Boleto(carteira, cedente, sacado, remessa)
            {
                NumeroDocumento            = "130741",
                ValorBoleto                = Convert.ToDecimal(185.33),
                IdentificadorInternoBoleto = "130741",
                DataVencimento             = new DateTime(2016, 11, 15)
            };

            banco.FormatarBoleto(boleto);

            Assert.AreEqual(boleto.NumeroDocumento.Length, 13);
            Assert.AreEqual("0000000130741", boleto.NumeroDocumento);
        }
        public void FormatarNossoNumeroCarteira11019BbConvenio7Digitos()
        {
            var remessa = new Remessa(Remessa.EnumTipoAmbiemte.Homologacao, EnumCodigoOcorrenciaRemessa.Registro, "2");
            var banco   = Fabricas.BancoFactory.ObterBanco("001", "9");
            var contaBancariaCedente = new ContaBancaria("165", "1", "32473", "6");
            var cedente = new Cedente("", "2749885", 0, "99.999.999/9999-99", "Razão Social X", contaBancariaCedente,
                                      null);

            var sacado = new Sacado("Sacado Fulano de Tal", "999.999.999-99", new Endereco()
            {
                TipoLogradouro = "R",
                Logradouro     = "1",
                Bairro         = "Bairro X",
                Cidade         = "Cidade X",
                SiglaUf        = "XX",
                Cep            = "12345-000",
                Complemento    = "Comp X",
                Numero         = "9"
            });

            var carteira = new CarteiraCobranca {
                Codigo = "11", Variacao = "019"
            };

            var boleto = new Boleto(carteira, cedente, sacado, remessa)
            {
                NumeroDocumento            = "16282",
                ValorBoleto                = Convert.ToDecimal(792.44),
                IdentificadorInternoBoleto = "16282",
                DataVencimento             = new DateTime(2016, 11, 15)
            };

            banco.FormatarBoleto(boleto);

            Assert.AreEqual(boleto.NossoNumeroFormatado.Length, 17);
            Assert.AreEqual("27498850000016282", boleto.NossoNumeroFormatado);
        }
Exemple #17
0
        public void TesteCalculoNossoNumeroBoletoReal()
        {
            var remessa = new Remessa(Remessa.EnumTipoAmbiemte.Homologacao, EnumCodigoOcorrenciaRemessa.Registro, "2");

            var banco = Fabricas.BancoFactory.ObterBanco("399", "9");

            var contaBancariaCedente = new ContaBancaria("", "", "", "");

            var cedente = new Cedente("4295579", 0, "99.999.999/9999-99", "Razão Social Teste Cálculo Nosso Número Ltda", contaBancariaCedente, null);

            var sacado = new Sacado("Sacado Fulano de Tal", "99.999.999/9999-99", new Endereco()
            {
                TipoLogradouro = "R",
                Logradouro     = "1",
                Bairro         = "Bairro X",
                Cidade         = "Cidade X",
                SiglaUf        = "XX",
                Cep            = "12345-000",
                Complemento    = "Comp X",
                Numero         = "9"
            });

            var carteira = new CarteiraCobranca();

            carteira.Codigo = "CNR";

            var boleto = new Boleto(carteira, cedente, sacado, remessa);

            boleto.NumeroDocumento            = "40156";
            boleto.ValorBoleto                = 200;
            boleto.IdentificadorInternoBoleto = "40156";
            boleto.DataVencimento             = new DateTime(2012, 11, 15);

            banco.FormataNossoNumero(boleto);

            Assert.AreEqual("0000000040156044", boleto.NossoNumeroFormatado);
        }
Exemple #18
0
        public void TesteCalculoNossoNumeroBoleto()
        {
            var remessa = new Remessa(Remessa.EnumTipoAmbiemte.Homologacao, EnumCodigoOcorrenciaRemessa.Registro, "1");

            var banco = Fabricas.BancoFactory.ObterBanco("070", "");

            var contaBancariaCedente = new ContaBancaria("201", "", "19316", "9");
            var cedente = new Cedente("9999999", 0, "99.999.999/9999-99", "Razão Social X", contaBancariaCedente, null);
            var sacado  = new Sacado("Sacado Fulano de Tal", "99.999.999/9999-99", new Endereco()
            {
                TipoLogradouro = "R",
                Logradouro     = "1",
                Bairro         = "Bairro X",
                Cidade         = "Cidade X",
                SiglaUf        = "XX",
                Cep            = "12345-000",
                Complemento    = "Comp X",
                Numero         = "9"
            });

            var carteira = new CarteiraCobranca();

            carteira.Codigo = "1";
            carteira.Tipo   = "1";

            var boleto = new Boleto(carteira, cedente, sacado, remessa);

            boleto.NumeroDocumento            = "37018";
            boleto.ValorBoleto                = Convert.ToDecimal(1.00);
            boleto.IdentificadorInternoBoleto = "37018";
            boleto.DataVencimento             = new DateTime(2008, 06, 27);

            banco.FormataNossoNumero(boleto);

            Assert.AreEqual("103701807010", boleto.NossoNumeroFormatado);
        }
Exemple #19
0
 public ActionResult Home(Remessa arq)
 {
     try
     {
         string nomeArquivo     = "";
         string arquivoEnviados = "";
         foreach (var arquivo in arq.Arquivos)
         {
             if (arquivo.ContentLength > 0)
             {
                 nomeArquivo = Path.GetFileName(arquivo.FileName);
                 var caminho = Path.Combine(Server.MapPath("~/Imagens"), nomeArquivo);
                 arquivo.SaveAs(caminho);
             }
             arquivoEnviados = arquivoEnviados + " , " + nomeArquivo;
         }
         ViewBag.Mensagem = "Arquivo enviados : " + arquivoEnviados + " , com sucesso.";
     }
     catch (Exception ex)
     {
         ViewBag.Mensagem = "Erro : " + ex.Message;
     }
     return(View());
 }
        public void FormatarExibicaoCodigoCedenteCarteira17035BbConvenio7Digitos()
        {
            var remessa = new Remessa(Remessa.EnumTipoAmbiemte.Homologacao, EnumCodigoOcorrenciaRemessa.Registro, "2");
            var banco   = Fabricas.BancoFactory.ObterBanco("001", "9");
            var contaBancariaCedente = new ContaBancaria("3391", "X", "16954", "4");
            var cedente = new Cedente("", "2791531", 0, "99.999.999/9999-99", "Razão Social X", contaBancariaCedente,
                                      null);

            var sacado = new Sacado("Sacado Fulano de Tal", "999.999.999-99", new Endereco()
            {
                TipoLogradouro = "R",
                Logradouro     = "1",
                Bairro         = "Bairro X",
                Cidade         = "Cidade X",
                SiglaUf        = "XX",
                Cep            = "12345-000",
                Complemento    = "Comp X",
                Numero         = "9"
            });

            var carteira = new CarteiraCobranca {
                Codigo = "17", Variacao = "035"
            };

            var boleto = new Boleto(carteira, cedente, sacado, remessa)
            {
                NumeroDocumento            = "11257",
                ValorBoleto                = Convert.ToDecimal(1041.50),
                IdentificadorInternoBoleto = "11257",
                DataVencimento             = new DateTime(2016, 11, 01)
            };

            banco.FormatarBoleto(boleto);

            Assert.AreEqual("3391-X/00016954-4", boleto.CedenteBoleto.CodigoCedenteFormatado);
        }
Exemple #21
0
        public void FormatarExibicaoCodigoCedenteCarteira112Itau()
        {
            var remessa = new Remessa(Remessa.EnumTipoAmbiemte.Homologacao, EnumCodigoOcorrenciaRemessa.Registro, "2");
            var banco   = Fabricas.BancoFactory.ObterBanco("341", "7");
            var contaBancariaCedente = new ContaBancaria("0507", "0", "23333", "6");
            var cedente = new Cedente("23333", 6, "99.999.999/9999-99", "Razão Social X", contaBancariaCedente,
                                      null);

            var sacado = new Sacado("Sacado Fulano de Tal", "999.999.999-99", new Endereco()
            {
                TipoLogradouro = "R",
                Logradouro     = "1",
                Bairro         = "Bairro X",
                Cidade         = "Cidade X",
                SiglaUf        = "XX",
                Cep            = "12345-000",
                Complemento    = "Comp X",
                Numero         = "9"
            });

            var carteira = new CarteiraCobranca {
                Codigo = "112"
            };

            var boleto = new Boleto(carteira, cedente, sacado, remessa)
            {
                NumeroDocumento            = "34598460",
                ValorBoleto                = Convert.ToDecimal(501.81),
                IdentificadorInternoBoleto = "34598460",
                DataVencimento             = new DateTime(2016, 08, 15)
            };

            banco.FormatarBoleto(boleto);

            Assert.AreEqual("0507/23333-6", boleto.CedenteBoleto.CodigoCedenteFormatado);
        }
Exemple #22
0
        public void FormatarExibicaoCodigoCedenteCarteira101Sicoob()
        {
            var remessa = new Remessa(Remessa.EnumTipoAmbiemte.Homologacao, EnumCodigoOcorrenciaRemessa.Registro, "2");
            var banco   = Fabricas.BancoFactory.ObterBanco("756", "0");
            var contaBancariaCedente = new ContaBancaria("5004", "0", "107228", "5");
            var cedente = new Cedente("28796", 2, "99.999.999/9999-99", "Razão Social X", contaBancariaCedente,
                                      null);

            var sacado = new Sacado("Sacado Fulano de Tal", "999.999.999-99", new Endereco()
            {
                TipoLogradouro = "R",
                Logradouro     = "1",
                Bairro         = "Bairro X",
                Cidade         = "Cidade X",
                SiglaUf        = "XX",
                Cep            = "12345-000",
                Complemento    = "Comp X",
                Numero         = "9"
            });

            var carteira = new CarteiraCobranca {
                Codigo = "1/01"
            };

            var boleto = new Boleto(carteira, cedente, sacado, remessa)
            {
                NumeroDocumento            = "106",
                ValorBoleto                = Convert.ToDecimal(465.82),
                IdentificadorInternoBoleto = "106",
                DataVencimento             = new DateTime(2016, 11, 30)
            };

            banco.FormatarBoleto(boleto);

            Assert.AreEqual("5004/01072285", boleto.CedenteBoleto.CodigoCedenteFormatado);
        }
Exemple #23
0
        public void TestGeracaoArquivoRemessaSicoob()
        {
            var database  = 2010;
            var dataatual = 2012;
            var periodo   = 2;
            var resultado = (dataatual - dataatual) % periodo;



            var dadosRemessa = new Remessa(Remessa.EnumTipoAmbiemte.Homologacao, EnumCodigoOcorrenciaRemessa.Registro, "2");

            var banco = Fabricas.BancoFactory.ObterBanco("756", "0");

            var contaBancariaCedente = new ContaBancaria("3249", "2", "7341", "5");

            var cedente = new Cedente("999999", "123456", 0, "99.999.999/9999-99", "Razão Social X", contaBancariaCedente, null);

            var sacado = new Sacado("Sacado Fulano de Tal", "99.999.999/9999-98", new Endereco
            {
                TipoLogradouro = "R",
                Logradouro     = "1",
                Bairro         = "Bairro X",
                Cidade         = "Cidade X",
                SiglaUf        = "XX",
                Cep            = "12345-000",
                Complemento    = "Comp X",
                Numero         = "9",
            });

            var carteira = new CarteiraCobranca {
                Codigo = "1/01"
            };

            var boleto = new Boleto(carteira, cedente, sacado, dadosRemessa)
            {
                BancoBoleto                = banco,
                NumeroDocumento            = "19",
                ValorBoleto                = (decimal)1000.51,
                IdentificadorInternoBoleto = "19",
                DataVencimento             = new DateTime(2014, 06, 30),
                Especie = banco.ObtemEspecieDocumento(EnumEspecieDocumento.DuplicataMercantil),
            };

            var listaBoleto = new List <Boleto>();

            listaBoleto.Add(boleto);

            banco.FormatarBoleto(boleto);

            #region GERAÇÃO 1

            var remessa = new RemessaCnab240();

            //var listaDetalhes = new List<DetalheRemessaCnab240>();

            remessa.Header = new HeaderRemessaCnab240(listaBoleto.FirstOrDefault(), 1);

            //var detalheSegmentoP = new DetalheSegmentoPRemessaCnab240(boleto)
            //{
            //    CodigoCedente = "123456",
            //    NossoNumero = "123456",
            //    NumeroDocumento = "123456",
            //    CodigoOcorrencia = new CodigoOcorrencia(01),
            //    Especie = banco.ObtemEspecieDocumento(EnumEspecieDocumento.DuplicataMercantil),
            //    Aceite = "N",
            //    DataVencimento = new DateTime(2014, 10, 01),
            //    ValorBoleto = (decimal)100.51,
            //};

            remessa.Lotes = new List <LoteRemessaCnab240> {
            };

            var loteAdd = new LoteRemessaCnab240();
            loteAdd.HeaderLote = new HeaderLoteRemessaCnab240(listaBoleto.FirstOrDefault(), 1);

            loteAdd.TrailerLote = new TrailerLoteRemessaCnab240(1);

            //loteAdd.RegistrosDetalheSegmentos = new List<DetalheRemessaCnab240>();
            //var detalheRemessaAdd = new DetalheRemessaCnab240();
            //detalheRemessaAdd.SegmentoP = detalheSegmentoP;
            //loteAdd.RegistrosDetalheSegmentos.Add(detalheRemessaAdd);

            remessa.Lotes.Add(loteAdd);

            remessa.Trailer = new TrailerRemessaCnab240(1, 1);

            #endregion GERAÇÃO 1

            var fabricaRemessa = new RemessaFactory();

            var remessaPronta = fabricaRemessa.GerarRemessa(remessa.Header, loteAdd.HeaderLote, listaBoleto, loteAdd.TrailerLote, remessa.Trailer);

            var escritor = EscritorArquivoRemessaFactory.ObterEscritorRemessa(remessa);

            var linhasEscrever = escritor.EscreverTexto(remessaPronta);

            var path = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);

            var data = String.Format("{0}_{1}", DateTime.Now.ToString("ddMMyyyy"), DateTime.Now.ToString("HHmmss"));

            var nomeArquivo = string.Format("{0}{1}{2}{3}", banco.CodigoBanco, @"_REMESSA_", data, ".txt");

            StringBuilder sb = new StringBuilder();
            foreach (var linha in linhasEscrever)
            {
                sb.AppendLine(linha);
            }
            //Assert.Equals(1, 1);
            File.WriteAllLines($@"{path}\\{nomeArquivo}", linhasEscrever.ToArray());
            var esperadoHeader = "75600000         299999999999999                    0324920000009999990 RAZÃO SOCIAL X                SICOOB                                  10902201808483100000108100000                                                                     ";
            Assert.IsTrue(linhasEscrever[0].Length == 240 && linhasEscrever[0].Substring(0, 143) == esperadoHeader.Substring(0, 143) && esperadoHeader.Substring(157, esperadoHeader.Length - 157) == linhasEscrever[0].Substring(157, esperadoHeader.Length - 157));
            Assert.IsTrue(linhasEscrever[1].Length == 240 && linhasEscrever[1] == "75600011R01  040 2099999999999999                    0324920000009999990 Razão Social X                                                                                                000000011202201800000000                                 ");
            Assert.IsTrue(linhasEscrever[2].Length == 240 && linhasEscrever[2] == "7560001300001P 010324920000009999990 00000019-401014     10 220000000000000193006201400000000010005100000 02N12022018030062014000000000000000000000000000000000000000000000000000000000000000000000DOC0000019-4             0000   090000000000 ");
            Assert.IsTrue(linhasEscrever[3].Length == 240 && linhasEscrever[3] == "7560001300002Q 012099999999999998SACADO FULANO DE TAL                    1,9,COMP X                              BAIRRO X       12345000CIDADE X       XX0000000000000000                                        000                            ");
            Assert.IsTrue(linhasEscrever[4].Length == 240 && linhasEscrever[4] == "75600015         00000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000                                                                                                                             ");
            Assert.IsTrue(linhasEscrever[5].Length == 240 && linhasEscrever[5] == "75699999         000001000001000000                                                                                                                                                                                                             ");
        }
Exemple #24
0
        public Boleto(CarteiraCobranca carteiraCobranca, Cedente cedente, Sacado sacado, Remessa remessa)
        {
            Inicializa();

            this.CarteiraCobranca = carteiraCobranca;
            this.CedenteBoleto    = cedente;
            this.SacadoBoleto     = sacado;
            this.Remessa          = remessa;
        }
Exemple #25
0
        public void TestGeracaoArquivoRemessaSicoob()
        {
            var database  = 2010;
            var dataatual = 2012;
            var periodo   = 2;
            var resultado = (dataatual - dataatual) % periodo;


            var tiporemessa          = new Remessa(Remessa.EnumTipoAmbiemte.Homologacao, EnumCodigoOcorrenciaRemessa.Registro, "2");
            var banco                = Fabricas.BancoFactory.ObterBanco("246", "0");
            var contaBancariaCedente = new ContaBancaria("0001", "9", "107228", "5");
            var cedente              = new Cedente("28796", "1234", 2, "99.999.999/9999-99", "Razão Social X", contaBancariaCedente,
                                                   null);

            var sacado = new Sacado("Sacado Fulano de Tal", "999.999.999-99", new Endereco()
            {
                TipoLogradouro = "R",
                Logradouro     = "1",
                Bairro         = "Bairro X",
                Cidade         = "Cidade X",
                SiglaUf        = "XX",
                Cep            = "12345-000",
                Complemento    = "Comp X",
                Numero         = "9"
            });

            var carteira = new CarteiraCobranca {
                Codigo = "110"
            };

            var boleto = new Boleto(carteira, cedente, sacado, tiporemessa)
            {
                NumeroDocumento            = "106",
                ValorBoleto                = Convert.ToDecimal(465.82),
                IdentificadorInternoBoleto = "0004309540",
                DataVencimento             = new DateTime(2016, 11, 30),
                BancoBoleto                = banco,
                Especie       = banco.ObtemEspecieDocumento(EnumEspecieDocumento.DuplicataMercantil),
                JurosMora     = 2.5M,
                DataJurosMora = DateTime.Now
            };

            boleto.PercentualJurosMora = decimal.Round(boleto.PercentualJurosMora.GetValueOrDefault(), 4);
            var listaBoleto = new List <Boleto>();

            listaBoleto.Add(boleto);

            banco.FormatarBoleto(boleto);

            #region GERAÇÃO 1

            var remessa = new RemessaCnab240();

            //var listaDetalhes = new List<DetalheRemessaCnab240>();

            remessa.Header = new HeaderRemessaCnab240(listaBoleto.FirstOrDefault(), 1);

            //var detalheSegmentoP = new DetalheSegmentoPRemessaCnab240(boleto)
            //{
            //    CodigoCedente = "123456",
            //    NossoNumero = "123456",
            //    NumeroDocumento = "123456",
            //    CodigoOcorrencia = new CodigoOcorrencia(01),
            //    Especie = banco.ObtemEspecieDocumento(EnumEspecieDocumento.DuplicataMercantil),
            //    Aceite = "N",
            //    DataVencimento = new DateTime(2014, 10, 01),
            //    ValorBoleto = (decimal)100.51,
            //};

            remessa.Lotes = new List <LoteRemessaCnab240> {
            };

            var loteAdd = new LoteRemessaCnab240();
            loteAdd.HeaderLote = new HeaderLoteRemessaCnab240(listaBoleto.FirstOrDefault(), 1);

            loteAdd.TrailerLote = new TrailerLoteRemessaCnab240(1);

            //loteAdd.RegistrosDetalheSegmentos = new List<DetalheRemessaCnab240>();
            //var detalheRemessaAdd = new DetalheRemessaCnab240();
            //detalheRemessaAdd.SegmentoP = detalheSegmentoP;
            //loteAdd.RegistrosDetalheSegmentos.Add(detalheRemessaAdd);

            remessa.Lotes.Add(loteAdd);

            remessa.Trailer = new TrailerRemessaCnab240(1, 1);

            #endregion GERAÇÃO 1

            var fabricaRemessa = new RemessaFactory();

            var remessaPronta = fabricaRemessa.GerarRemessa(remessa.Header, loteAdd.HeaderLote, listaBoleto, loteAdd.TrailerLote, remessa.Trailer);

            var escritor = EscritorArquivoRemessaFactory.ObterEscritorRemessa(remessa);

            var linhasEscrever = escritor.EscreverTexto(remessaPronta);

            var path = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);

            var data = String.Format("{0}_{1}", DateTime.Now.ToString("ddMMyyyy"), DateTime.Now.ToString("HHmmss"));

            var nomeArquivo = string.Format("{0}{1}{2}{3}", banco.CodigoBanco, @"_REMESSA_", data, ".txt");

            StringBuilder sb = new StringBuilder();
            foreach (var linha in linhasEscrever)
            {
                sb.AppendLine(linha);
            }

            File.WriteAllLines($@"{path}\\{nomeArquivo}", linhasEscrever.ToArray());
        }
        public void TestGerarHeaderArquivoRemessaDaycovalCnab400()
        {
            var dadosRemessa = new Remessa(Remessa.EnumTipoAmbiemte.Homologacao, EnumCodigoOcorrenciaRemessa.Registro,
                                           "2");

            var banco = Fabricas.BancoFactory.ObterBanco("707", "2");
            var contaBancariaCedente = new ContaBancaria("1001", "1", "2002", "1");
            var cedente = new Cedente("", "190658906300", 0, "99.999.999/9999-99", "Razao Social X",
                                      contaBancariaCedente,
                                      null);

            var sacado = new Sacado("Sacado Fulano de Tal", "99.999.999/9999-99", new Endereco()
            {
                TipoLogradouro = "R",
                Logradouro     = "1",
                Bairro         = "Bairro X",
                Cidade         = "Cidade X",
                SiglaUf        = "XX",
                Cep            = "12345-000",
                Complemento    = "Comp X",
                Numero         = "9"
            });

            var carteira = new CarteiraCobranca {
                Codigo = "3"
            };
            var boleto = new Boleto(carteira, cedente, sacado, dadosRemessa)
            {
                NumeroDocumento            = "1001",
                ValorBoleto                = Convert.ToDecimal(255),
                IdentificadorInternoBoleto = "1001",
                DataVencimento             = new DateTime(2017, 10, 20),
                Especie                 = banco.ObtemEspecieDocumento(EnumEspecieDocumento.DuplicataMercantil),
                BancoBoleto             = banco,
                CodigoOcorrenciaRemessa = new CodigoOcorrencia(01)
            };

            banco.FormatarBoleto(boleto);

            var remessa = new RemessaCnab400();

            remessa.Header = new HeaderRemessaCnab400(boleto, 1, 1);
            var detalheIndividual = new DetalheRemessaCnab400(boleto, 1);

            remessa.RegistrosDetalhe = new List <DetalheRemessaCnab400>
            {
                detalheIndividual
            };

            remessa.Trailer = new TrailerRemessaCnab400(1, 1);

            var escritor       = new EscritorRemessaCnab400Daycoval(remessa);
            var linhasEscrever = escritor.EscreverTexto(remessa);
            var path           = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
            var data           = String.Format("{0}_{1}", DateTime.Now.ToString("ddMMyyyy"), DateTime.Now.ToString("HHmmss"));
            var nomeArquivo    = string.Format("{0}{1}{2}{3}", banco.CodigoBanco, @"_REMESSA_", data, ".txt");

            StringBuilder sb = new StringBuilder();

            foreach (var linha in linhasEscrever)
            {
                sb.AppendLine(linha);
            }

            Assert.AreEqual(linhasEscrever[0],
                            "01REMESSA01COBRANÇA       190658906300        Razao Social X                707BANCO DAYCOVAL 201017                                                                                                                                                                                                                                                                                                      000001");
        }
Exemple #27
0
        public void TestGerarHeaderArquivoRemessaBRBCnab400()
        {
            var dadosRemessa = new Remessa(Remessa.EnumTipoAmbiemte.Homologacao, EnumCodigoOcorrenciaRemessa.Registro,
                                           "");
            var banco = Fabricas.BancoFactory.ObterBanco("070");
            var contaBancariaCedente = new ContaBancaria("201", "", "29088", "1");
            var cedente = new Cedente("99999", 0, "99.999.999/9999-99", "Razão Social X", contaBancariaCedente, null);
            var sacado  = new Sacado("Sacado Fulano de Tal", "99.999.999/9999-99", new Endereco()
            {
                TipoLogradouro = "R",
                Logradouro     = "1",
                Bairro         = "Bairro X",
                Cidade         = "Cidade X",
                SiglaUf        = "XX",
                Cep            = "12345-000",
                Complemento    = "Comp X",
                Numero         = "9"
            });

            var carteira = new CarteiraCobranca {
                Codigo = "1", Tipo = "1"
            };

            var boleto = new Boleto(carteira, cedente, sacado, dadosRemessa)
            {
                NumeroDocumento            = "279141",
                ValorBoleto                = Convert.ToDecimal(222.75),
                IdentificadorInternoBoleto = "279141",
                DataVencimento             = new DateTime(2015, 03, 16),
                Especie = banco.ObtemEspecieDocumento(EnumEspecieDocumento.Diversos),
                CodigoOcorrenciaRemessa = new CodigoOcorrencia(01),
                BancoBoleto             = banco,
                TipoCobrancaJuro        = TipoCobrancaJuro.JurosDiario
            };

            banco.FormatarBoleto(boleto);

            var remessa = new RemessaCnab400();

            remessa.Header = new HeaderRemessaCnab400(boleto, 1, 1, DateTime.Now);
            var detalheIndividual = new DetalheRemessaCnab400(boleto, 1);

            remessa.RegistrosDetalhe = new List <DetalheRemessaCnab400>
            {
                detalheIndividual
            };
            var escritor = new EscritorRemessaCnab400BRB(remessa);

            var linhasEscrever = escritor.EscreverTexto(remessa);
            var path           = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
            var data           = String.Format("{0}_{1}", DateTime.Now.ToString("ddMMyyyy"), DateTime.Now.ToString("HHmmss"));

            var nomeArquivo = string.Format("{0}{1}{2}{3}", banco.CodigoBanco, @"_REMESSA_", data, ".txt");
            var arquivo     = new System.IO.StreamWriter(path + @"\" + nomeArquivo, true);

            foreach (var linha in linhasEscrever)
            {
                arquivo.WriteLine(linha);
            }
            arquivo.Close();
        }
 // Regra de validação do layout 4.4
 public Task <bool> ValidarAsync(Remessa entidade)
 => Task.FromResult(true);
        public void TestGeracaoArquivoRemessa()
        {
            var dadosRemessa = new Remessa(Remessa.EnumTipoAmbiemte.Homologacao, EnumCodigoOcorrenciaRemessa.Registro,
                                           "2");

            var banco = Fabricas.BancoFactory.ObterBanco("237", "2");

            var contaBancariaCedente = new ContaBancaria("1234", "8", "12345", "6");

            var cedente = new Cedente("99999", "1", 0, "99.999.999/9999-99", "Razao Social X", contaBancariaCedente,
                                      null);

            var sacado = new Sacado("Sacado Fulano de Tal", "99.999.999/9999-99", new Endereco()
            {
                TipoLogradouro = "R",
                Logradouro     = "1",
                Bairro         = "Bairro X",
                Cidade         = "Cidade X",
                SiglaUf        = "XX",
                Cep            = "12345-000",
                Complemento    = "Comp X",
                Numero         = "9"
            });

            var carteira = new CarteiraCobranca {
                Codigo = "06"
            };
            var boleto = new Boleto(carteira, cedente, sacado, dadosRemessa)
            {
                NumeroDocumento            = "3242",
                ValorBoleto                = Convert.ToDecimal(275),
                IdentificadorInternoBoleto = "3242",
                DataVencimento             = new DateTime(2014, 08, 04),
                Especie     = banco.ObtemEspecieDocumento(EnumEspecieDocumento.DuplicataMercantil),
                BancoBoleto = banco
            };

            banco.FormatarBoleto(boleto);

            var remessa = new RemessaCnab400();

            remessa.Header = new HeaderRemessaCnab400(boleto, 1, 1);

            var detalheIndividual = new DetalheRemessaCnab400(boleto, 1);

            remessa.RegistrosDetalhe = new List <DetalheRemessaCnab400>
            {
                detalheIndividual
            };

            remessa.Trailer = new TrailerRemessaCnab400(1, 1);

            var escritor = new EscritorRemessaCnab400Bradesco(remessa);

            var linhasEscrever = escritor.EscreverTexto(remessa);

            var path = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);

            var data = String.Format("{0}_{1}", DateTime.Now.ToString("ddMMyyyy"), DateTime.Now.ToString("HHmmss"));

            var nomeArquivo = string.Format("{0}{1}{2}{3}", banco.CodigoBanco, @"_REMESSA_", data, ".txt");

            StringBuilder sb = new StringBuilder();

            foreach (var linha in linhasEscrever)
            {
                sb.AppendLine(linha);
            }

            Assert.AreEqual(linhasEscrever[0], "01REMESSA01COBRANCA       00000000000000099999RAZAO SOCIAL X                237BRADESCO       300517        MX0000001                                                                                                                                                                                                                                                                                     000001");
            Assert.AreEqual(linhasEscrever[1], "1000000000000000000000060123400123456DOC06/00000003242-7      0000    00000003242700000000002S           2  01000000324204081400000000275000000000001N300517000000000000000000000000000000000000000000000000000000000000000299999999999999SACADO FULANO DE TAL                    1,9,COMP X                                          12345000                                                            000002");
            Assert.AreEqual(linhasEscrever[2], "9                                                                                                                                                                                                                                                                                                                                                                                                         000003");
        }
Exemple #30
0
        public void TestGerarArquivoRemessaSicrediCnab400()
        {
            var remessa = new Remessa(Remessa.EnumTipoAmbiemte.Homologacao, EnumCodigoOcorrenciaRemessa.Registro, "2");
            var banco   = Fabricas.BancoFactory.ObterBanco("748");
            var contaBancariaCedente = new ContaBancaria("0136", "30", "00623", "9");
            var cedente = new Cedente("12345", 0, "99.999.999/9999-99", "Razão Social X", contaBancariaCedente, null);

            var sacado = new Sacado("Sacado Fulano de Tal", "999.999.999-99", new Endereco()
            {
                TipoLogradouro = "R",
                Logradouro     = "1",
                Bairro         = "Bairro X",
                Cidade         = "Cidade X",
                SiglaUf        = "XX",
                Cep            = "12345-000",
                Complemento    = "Comp X",
                Numero         = "9"
            });

            var carteira = new CarteiraCobranca {
                Codigo = "1"
            };

            var boleto = new Boleto(carteira, cedente, sacado, remessa)
            {
                NumeroDocumento            = "14369",
                ValorBoleto                = Convert.ToDecimal(337.00),
                IdentificadorInternoBoleto = "00003",
                DataVencimento             = DateTime.Now.AddDays(10),
                CodigoDeTransmissao        = "00200643279401300369",
                BancoBoleto                = banco,
                CedenteBoleto              = cedente,
                CarteiraCobranca           = carteira,
                Especie = banco.ObtemEspecieDocumento(EnumEspecieDocumento.NotaPromissoria),
                Aceite  = "S"
            };

            banco.FormatarBoleto(boleto);

            var cnab400 = new RemessaCnab400()
            {
                Header           = new HeaderRemessaCnab400(boleto, 1, 1),
                RegistrosDetalhe = new List <DetalheRemessaCnab400>()
                {
                    new DetalheRemessaCnab400(boleto, 2)
                },
                Trailer = new TrailerRemessaCnab400(12345, 3)
            };

            var escritor = new EscritorRemessaCnab400Sicredi(cnab400);

            var linhasEscrever = escritor.EscreverTexto(cnab400);

            var path = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);

            var data = DateTime.Now.ToString("d").Replace("/", "");

            var nomeArquivo = string.Format("{0}{1}{2}{3}{4}{5}{6}", banco.CodigoBanco, "-", banco.NomeBanco, "_", data, @"_REMESSA", ".txt");

            var arquivo = new System.IO.StreamWriter(path + @"\" + nomeArquivo, true);

            arquivo.Write(string.Join(Environment.NewLine, linhasEscrever));

            arquivo.Close();
        }