public static void salvar(string nomeArquivo, byte[] buffer)
 {
     if (_arquivo == null)
     {
         _arquivo = DependencyService.Get <IArquivo>();
     }
     _arquivo.salvar(nomeArquivo, buffer);
 }
 public static void salvarTexto(string nomeArquivo)
 {
     if (_arquivo == null)
     {
         _arquivo = DependencyService.Get <IArquivo>();
     }
     _arquivo.salvarTexto(nomeArquivo);
 }
 public static byte[] abrir(string nomeArquivo)
 {
     if (_arquivo == null)
     {
         _arquivo = DependencyService.Get <IArquivo>();
     }
     return(_arquivo.abrir(nomeArquivo));
 }
 public static bool existe(string nomeArquivo)
 {
     if (_arquivo == null)
     {
         _arquivo = DependencyService.Get <IArquivo>();
     }
     return(_arquivo.existe(nomeArquivo));
 }
        public ImportacaoArquivo Convert(IArquivo iArquivo)
        {
            ImportacaoArquivo arquivo = new ImportacaoArquivo();

            arquivo.NomeArquivo   = iArquivo.Nome;
            arquivo.TipoArquivoID = (int)iArquivo.TipoArquivo;
            arquivo.Ano           = iArquivo.Ano;
            arquivo.UF            = iArquivo.UF;
            Convert(arquivo, iArquivo.Registros);

            return(arquivo);
        }
Exemple #6
0
        private void ProcessarArquivo(FileInfo arquivo, eTipoArquivo tipo)
        {
            IArquivo iArquivo = ObterDadosDoNomeDoArquivo(arquivo.Name);

            if (iArquivo != null)
            {
                iArquivo.DataInicioProcessamento = DateTime.Now;

                ProcessarArquivoItens(iArquivo, arquivo);

                if (iArquivo.Registros != null && iArquivo.Registros.Count > 0)
                {
                    ImportacaoArquivoBL.New.Salvar(iArquivo);
                }
            }
        }
Exemple #7
0
        private string GetFileName(IArquivo arquivo)
        {
            /* UFSSSAAMMSTT.VVV
             * UF - uf do emitente dos docs fiscais
             * SSS - serie dos docs fiscais
             * AA - ano do periodo de apuracao dos docs fiscais
             * MM - mes do periodo de apuracao dos docs fiscais
             * ST - indica se o arquivo é normal (N) ou substituto (S)
             * T - Tipo, inicial do tipo do arquivo, podendo assumir :
             *   'M' - Mestre do Documnto Fiscal
             *   'I' - Item de Documnto Fiscal
             *   'D' - Dados cadastrais do destinatario do documento fiscal
             *   'C' - Controle e identificacao
             *   'VVV' - numero sequenciadl do volume, limitado a 100 mil em cada arquivo, iniciando de 001.
             *          (em nosso caso sera sempre 001)
             *          */

            if (!_parametro.Movimentos.Any())
            {
                throw new Exception("Nenhum movimento para gerar o nome do arquivo.");
            }

            var movimento = _parametro.Movimentos.First();

            var uf                 = movimento.ClienteUf;
            var serie              = movimento.Serie.PadLeft(3, ' ');
            var ano                = movimento.DataEmissao.ToString("yy");
            var mes                = movimento.DataEmissao.ToString("MM");
            var tipoArquivo        = "N";
            var tipoInicialArquivo = arquivo.TipoArquivo;
            var volume             = "001";

            var fileName = string.Format("{0}{1}{2}{3}{4}{5}.{6}",
                                         uf, serie, ano, mes, tipoArquivo, tipoInicialArquivo, volume);

            UtilXpo.WriteLog("GetNomeArquivo: " + fileName);

            return(fileName);
        }
        public void Salvar(IArquivo iArquivo)
        {
            ImportacaoArquivo arquivo = Convert(iArquivo);

            using (UnitOfWork UoW = new UnitOfWork())
            {
                ImportacaoArquivo arquivoSalvo = UoW.ImportacaoArquivoRepository.Carregar(c => c.NomeArquivo == iArquivo.Nome, o => o.OrderBy(by => by.ID));

                if (arquivoSalvo == null)
                {
                    UoW.ImportacaoArquivoRepository.Inserir(arquivo);
                    UoW.Save();


                    iArquivo.DataFinalProcessamento = DateTime.Now;
                    Console.WriteLine("O Arquivo [{1}] foi processado com sucesso. Tempo: [{0}] - Foram criados [{2}] registros.", iArquivo.TempoProcessamento, iArquivo.Nome, iArquivo.Registros.Count);
                }
                else
                {
                    Console.WriteLine("O Arquivo [" + arquivo.NomeArquivo + "] já foi processado anteriormente.");
                }
            }
        }
Exemple #9
0
        private void ProcessarArquivoItens(IArquivo iArquivo, FileInfo arquivo)
        {
            using (StreamReader sr = new StreamReader(arquivo.FullName, Encoding.Default))
            {
                iArquivo.Registros = new List <IArquivoItem>();
                IArquivoItem item  = null;
                string       linha = "";

                while ((linha = sr.ReadLine()) != null)
                {
                    string[] linhaPropriedades = linha.Split(new string[] { ";" }, StringSplitOptions.None);

                    item = Novo(iArquivo.TipoArquivo);
                    System.Reflection.PropertyInfo[] lstPropriedades = item.GetType().GetProperties();

                    for (int i = 0; i < linhaPropriedades.Length; i++)
                    {
                        lstPropriedades[i].SetValue(item, linhaPropriedades[i].Replace("\"", string.Empty));
                    }

                    iArquivo.Registros.Add(item);
                }
            }
        }
 public void Adicionar(IArquivo arquivo)
 {
     arquivo.Nivel = Nivel + 1;
     Arquivos.Add(arquivo);
 }
Exemple #11
0
 public void Adicionar(IArquivo arquivo)
 {
     arquivo.Nivel = Nivel + 1;
     Arquivos.Add(arquivo);
 }
Exemple #12
0
 public ServicosAdapter(IArquivo gerenciadorArquivo, IServico gerenciadorServico)
 {
     _gerenciadorArquivo = gerenciadorArquivo;
     _gerenciadorServico = gerenciadorServico;
 }