- public void PesquisaDiretorios(string NomeDir)
- {
- DirectoryInfo DirInfo = new DirectoryInfo(NomeDir);
- try
- {
- // obtém arquivos do diretório
- FileInfo[] AFileInfo = DirInfo.GetFiles("*.pdf");
- // processa arquivos, adicionando-os na ListView
- foreach (FileInfo FilInfo in AFileInfo)
- {
- nome_arq = FilInfo.FullName;
- string nome_arq_trunk = nome_arq.Substring(nome_arq.LastIndexOf('\\') + 1);
- int id = retornaIdCadastrado(nome_arq_trunk);
- string extensao = nome_arq_trunk.Substring(nome_arq_trunk.LastIndexOf('.'));
- string novoNomeGD = montarFormatoGD(id.ToString(), extensao);
- Versao versao = new Versao();
- versao.CaminhoDoArquivo = Settings.Default.DiretorioPendentesOCR;
- versao.Extensao = extensao;
- versao.NomeDoArquivo = nome_arq_trunk;
- versao.Id = id;
- Indexador indexador = new Indexador();
- indexador.Indexe(versao);
- extraiu = true;
- //File.Move(Settings.Default.DiretorioPendentes + nome_arq_trunk, Settings.Default.DiretorioExtraidos + nome_arq_trunk);
- if (extraiu)
- {
- arquivosExtraidos++;
- }
- else
- {
- arquivosNaoExtraidos++;
- }
- labelTTArquivos.Text = i.ToString() + " de " + progressBarExtracao.Maximum + " arquivos extraídos";
- labelTTArquivos.Visible = true;
- progressBarExtracao.PerformStep();
- Application.DoEvents();
- i++;
- }
- }
- catch (Exception e)
- {
- extraiu = false;
- MessageBox.Show(e.Message);
- }
- }
- public class Indexador
- {
- public void Indexe(Versao versao)
- {
- try
- {
- IGoldenIndex goldenIndex =
- GoldenIndexClient.Instance(Settings.Default.MaquinaGoldenIndex,
- Settings.Default.PortaGoldenIndex,
- Settings.Default.UriGoldenIndex,
- Settings.Default.ProtocoloGoldenIndex);
- User usuarioGoldenIndex = GoldenIndexClient.Authenticate(Settings.Default.UsuarioGoldenIndex,
- Settings.Default.SenhaGoldenIndex, goldenIndex);
- string extensao = versao.Extensao.StartsWith(".") ? versao.Extensao : string.Concat(".", versao.Extensao);
- if (!goldenIndex.IsSupported(usuarioGoldenIndex, extensao))
- {
- // Se não for um arquivo suportado, não faz nada
- return;
- }
- FileData arquivo = new FileData();
- arquivo.Url = Settings.Default.DiretorioPendentesOCR + versao.NomeDoArquivo;
- arquivo.IndexerParameters = new IndexerParameters
- {
- Table = "tcejurisprudencia",
- ContentField = "conteudo_Arquivo",
- IdField = "id",
- IdFieldValue = versao.Id.ToString()
- };
- goldenIndex.SaveFile(usuarioGoldenIndex, arquivo);
- }
- catch (Exception exception)
- {
- string erro = exception.Message;
- }
- }
- }
- public class Versao
- {
- public int? Id { get; set; }
- public string CaminhoDoArquivo { get; set; }
- public string NomeDoArquivo { get; set; }
- public string Extensao { get; set; }
- }