/// <summary>
        /// Metodo para ler e processar o arquivo de retorno
        /// </summary>
        /// <param name="b"><see cref="Model.Banco"/> vinculado ao arquivo</param>
        /// <param name="s">stream do arquivo a ser lido</param>
        /// <param name="tipo">informa o tipo do cnab a ser lido</param>
        /// <returns></returns>
        public bool lerArquivoRetorno(Model.Banco b, Stream s, TipoArquivo tipo)
        {
            try
            {
                IArquivoRetorno cnab  = null;
                var             banco = new BoletoNet.Banco(b.Numero);

                switch (tipo)
                {
                case TipoArquivo.CNAB400:
                    cnab = new ArquivoRetornoCNAB400();
                    cnab.LerArquivoRetorno(banco, s);
                    return(salvarArquivo400(b, (ArquivoRetornoCNAB400)cnab, s));

                    break;

                case TipoArquivo.CNAB240:
                    cnab = new ArquivoRetornoCNAB240();
                    cnab.LerArquivoRetorno(banco, s);
                    return(salvarArquivo240(b, (ArquivoRetornoCNAB240)cnab));

                    break;

                default:
                    break;
                }
                return(false);
            }
            catch (Exception ex)
            {
                throw new Exception("Erro ao ler o arquivo de retorno.", ex.InnerException);
            }
        }
 public AbstractArquivoRetorno(TipoArquivo tipoArquivo)
 {
     switch (tipoArquivo)
     {
         case TipoArquivo.CNAB240:
             _arquivoRetorno = new ArquivoRetornoCNAB240();
             _arquivoRetorno.LinhaDeArquivoLida += new EventHandler<LinhaDeArquivoLidaArgs>(ArquivoRemessa_LinhaDeArquivoLidaCNAB240);
             break;
         case TipoArquivo.CNAB400:
             _arquivoRetorno = new ArquivoRetornoCNAB400();
             _arquivoRetorno.LinhaDeArquivoLida += new EventHandler<LinhaDeArquivoLidaArgs>(ArquivoRemessa_LinhaDeArquivoLidaCNAB400);
             break;
         default:
             throw new NotImplementedException("Arquivo não implementado.");
     }
 }
예제 #3
0
        public AbstractArquivoRetorno(TipoArquivo tipoArquivo)
        {
            switch (tipoArquivo)
            {
            case TipoArquivo.CNAB240:
                _arquivoRetorno = new ArquivoRetornoCNAB240();
                _arquivoRetorno.LinhaDeArquivoLida += new EventHandler <LinhaDeArquivoLidaArgs>(ArquivoRemessa_LinhaDeArquivoLidaCNAB240);
                break;

            case TipoArquivo.CNAB400:
                _arquivoRetorno = new ArquivoRetornoCNAB400();
                _arquivoRetorno.LinhaDeArquivoLida += new EventHandler <LinhaDeArquivoLidaArgs>(ArquivoRemessa_LinhaDeArquivoLidaCNAB400);
                break;

            default:
                throw new NotImplementedException("Arquivo não implementado.");
            }
        }
 public AbstractArquivoRetorno(TipoArquivo tipoArquivo)
 {
     switch (tipoArquivo)
     {
         case TipoArquivo.CNAB240:
             _arquivoRetorno = new ArquivoRetornoCNAB240();
             _arquivoRetorno.LinhaDeArquivoLida += ArquivoRemessa_LinhaDeArquivoLidaCNAB240;
             break;
         case TipoArquivo.CNAB400:
             _arquivoRetorno = new ArquivoRetornoCNAB400();
             _arquivoRetorno.LinhaDeArquivoLida += ArquivoRemessa_LinhaDeArquivoLidaCNAB400;
             break;
         case TipoArquivo.CBR643:
             _arquivoRetorno = new ArquivoRetornoCrb643();
             break;
         default:
             throw new NotImplementedException("Arquivo não implementado.");
     }
 }
        public AbstractArquivoRetorno(TipoArquivo tipoArquivo)
        {
            switch (tipoArquivo)
            {
            case TipoArquivo.CNAB240:
                _arquivoRetorno = new ArquivoRetornoCNAB240();
                _arquivoRetorno.LinhaDeArquivoLida += ArquivoRemessa_LinhaDeArquivoLidaCNAB240;
                break;

            case TipoArquivo.CNAB400:
                _arquivoRetorno = new ArquivoRetornoCNAB400();
                _arquivoRetorno.LinhaDeArquivoLida += ArquivoRemessa_LinhaDeArquivoLidaCNAB400;
                break;

            case TipoArquivo.CBR643:
                _arquivoRetorno = new ArquivoRetornoCrb643();
                break;

            default:
                throw new NotImplementedException("Arquivo não implementado.");
            }
        }