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(); }
public static IEscritorArquivoRemessaCnab400 ObterEscritorRemessa(RemessaCnab400 remessaEscrever) { try { switch (remessaEscrever.Header.CodigoBanco.PadLeft(3, '0')) { /* 001 - Banco do Brasil */ case "001": return new Bancos.Brasil.EscritorRemessaCnab400BancoDoBrasil(remessaEscrever); break; /* 003 - Banco da Amazônia */ case "003": throw new NotImplementedException("Banco " + remessaEscrever.Header.CodigoBanco + " ainda não foi implementado."); break; case "033": return new Bancos.Santander.EscritorRemessaCnab400Santander(remessaEscrever); /* 104 - Caixa */ case "104": throw new NotImplementedException("Banco " + remessaEscrever.Header.CodigoBanco + " ainda não foi implementado."); break; /* 237 - Bradesco */ case "237": return new Bancos.Bradesco.EscritorRemessaCnab400Bradesco(remessaEscrever); break; /* 341 - Itaú */ case "341": return new Bancos.Itau.EscritorRemessaCnab400Itau(remessaEscrever); break; /* 399 - HSBC */ case "399": throw new NotImplementedException("Banco " + remessaEscrever.Header.CodigoBanco + " ainda não foi implementado."); break; /* 070 - BRB */ case "070": return new Bancos.BRB.EscritorRemessaCnab400BRB(remessaEscrever); break; default: throw new NotImplementedException("Banco " + remessaEscrever.Header.CodigoBanco + " ainda não foi implementado."); } } catch (Exception ex) { throw new Exception("Erro durante a execução da transação.", ex); } }
public RemessaCnab400 GerarRemessa(HeaderRemessaCnab400 header, List<Boleto> boletos, List<DetalheRemessaCnab400> detalhes, TrailerRemessaCnab400 trailer) { //var contadorSequencialRegistro = 1; var objReturn = new RemessaCnab400(); objReturn.RegistrosDetalhe = new List<DetalheRemessaCnab400>(); objReturn.Header = header; foreach (var detalhe in detalhes) { objReturn.RegistrosDetalhe.Add(detalhe); //objReturn.AdicionarBoleto(boletoAddRemessa, contadorSequencialRegistro); //contadorSequencialRegistro++; } objReturn.Trailer = trailer; return objReturn; }
public RemessaCnab400 GerarArquivoRemessaCnab400(RemessaCnab400 remessaCnab400, List<Boleto> boletos) { throw new NotImplementedException(); }
public void ValidarRemessa(RemessaCnab400 remessaValidar) { throw new NotImplementedException(); }
public List<string> EscreverTexto(RemessaCnab400 remessaEscrever) { List<string> listaRetornar = new List<string>(); listaRetornar.Add(EscreverHeader(remessaEscrever.Header)); foreach (var detalheAdicionar in remessaEscrever.RegistrosDetalhe) { listaRetornar.AddRange(new[] {EscreverDetalhe(detalheAdicionar)}); } listaRetornar.Add(EscreverTrailer(remessaEscrever.Trailer)); return listaRetornar; }
public EscritorRemessaCnab400Bradesco(RemessaCnab400 remessaEscrever) { _remessaEscrever = remessaEscrever; }
public EscritorRemessaCnab400Itau(RemessaCnab400 remessaEscrever) { _remessaEscrever = remessaEscrever; }
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) }; 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); } File.WriteAllLines(path, linhasEscrever.ToArray()); }
public List<string> EscreverTexto(RemessaCnab400 remessaEscrever) { throw new NotImplementedException(); }
public EscritorRemessaCnab400BancoDoBrasil(RemessaCnab400 remessaEscrever) { _remessaEscrever = remessaEscrever; }
public List<string> EscreverTexto(RemessaCnab400 remessaEscrever) { var listaRetornar = new List<string> {EscreverHeader(remessaEscrever.Header)}; foreach (var detalheAdicionar in remessaEscrever.RegistrosDetalhe) { listaRetornar.AddRange(new[] {EscreverDetalhe(detalheAdicionar)}); } if (listaRetornar.Count > 0) { listaRetornar[0] = listaRetornar[0].PreencherValorNaLinha(34, 39, listaRetornar.Count.ToString().PadLeft(6, '0')); } listaRetornar.Add(Environment.NewLine); return listaRetornar; }
public void TestGerarDetalheArquivoRemessaBancoBrasilCnab400() { 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", "000123", 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), Especie = banco.ObtemEspecieDocumento(EnumEspecieDocumento.DuplicataMercantil), TipoModalidade = "21", CodigoOcorrenciaRemessa = new CodigoOcorrencia(01), BancoBoleto = banco }; banco.FormatarBoleto(boleto); var remessaEscrever = new RemessaCnab400(); remessaEscrever.Header = new HeaderRemessaCnab400(boleto, 1, 1, DateTime.Now); var detalheIndividual = new DetalheRemessaCnab400(boleto, 1); remessaEscrever.RegistrosDetalhe = new List<DetalheRemessaCnab400> { detalheIndividual }; var escritor = new EscritorRemessaCnab400BancoDoBrasil(remessaEscrever); var linhasEscrever = escritor.EscreverTexto(remessaEscrever); //const int numeroRegistro = 1; //var escritor = new EscritorRemessaCnab400BancoDoBrasil(); //var linhasEscrever = escritor.EscreverDetalhe(boleto, numeroRegistro); //var path = Environment.GetFolderPath(Environment.SpecialFolder.Desktop); //var data = DateTime.Now.ToString("ddMMyyyy"); //var nomeArquivo = string.Format("{0}{1}{2}{3}{4}{5}{6}", banco.CodigoBanco, "-", banco.NomeBanco, "_", data, @"_REGISTRO_DETALHE", ".txt"); //var arquivo = new System.IO.StreamWriter(path + @"\" + nomeArquivo, true); //arquivo.WriteLine(linhasEscrever); //arquivo.Close(); }
public EscritorRemessaCnab400Santander(RemessaCnab400 remessaEscrever) { _remessaEscrever = remessaEscrever; }