public void Executar(Pagina pagina, Veros.Paperless.Model.Entidades.Imagem imagem) { this.reconheceImagem = IoC.Current.Resolve <IReconheceImagem>(); var tipoDocumento = pagina.Documento.TipoDocumento; if (tipoDocumento.PodeSerReconhecido() == false) { return; } var tipoReconhecivel = this.ObterTipoReconhecivel(tipoDocumento); var resultadoReconhecimento = this.reconheceImagem .Reconhecer(imagem.Caminho, tipoReconhecivel); ////this.postaImagemReconhecidaServico //// .Executar(pagina.Id, imagem, resultadoReconhecimento.CaminhoImagemProcessada); this.salvarReconhecimentoPaginaServico .Executar(pagina, resultadoReconhecimento); this.adicionaQuantidadeLicencaConsumida .Executar(pagina, resultadoReconhecimento.LicencasUtilizadas); }
public OrdenarPaginasPacServico( IPaginaRepositorio paginaRepositorio, IBaixaArquivoFileTransferServico baixarArquivoFileTransfer, IReconheceImagem reconheceImagem) { this.paginaRepositorio = paginaRepositorio; this.baixarArquivoFileTransfer = baixarArquivoFileTransfer; this.reconheceImagem = reconheceImagem; }
public void Executar(Documento documentoPac) { if (documentoPac.TipoDocumento.TipoDocumentoEhMestre == false) { Log.Application.DebugFormat("Documento #{0} não é uma pac", documentoPac.Id); return; } this.gravaLogDocumentoServico.Executar( LogDocumento.AcaoDocumentoOcr, documentoPac.Id, string.Format("Documento processado no ocr pela máquina {0}", Environment.MachineName)); Log.Application.DebugFormat("Iniciando ordenação das paginas da pac #{0} ", documentoPac.Id); var recortesPac = new List <string>(); var paginasPac = documentoPac.Paginas.ToList(); if (paginasPac.Count == 0) { Log.Application.Error("Documento mestre sem páginas"); return; } foreach (var pagina in paginasPac) { var recortesPagina = this.ObterRecortesDaPagina(documentoPac, pagina); if (recortesPagina == null) { return; } recortesPac.AddRange(recortesPagina); } var imagemJuntada = this.juntaImagensDeCabecalhoRodapePac .Executar(recortesPac.ToArray()); ResultadoReconhecimento resultadoReconhecimento; try { this.reconheceImagem = IoC.Current.Resolve <IReconheceImagem>(); resultadoReconhecimento = this.reconheceImagem .Reconhecer(imagemJuntada, Image.TipoDocumentoReconhecivel.CabecalhoRodapePac); } catch (System.Exception exception) { Log.Application.Error("Não foi possível ordenar paginas da pac.", exception); return; } ////this.ordenarPaginasPacServico.Executar(paginasPac, resultadoReconhecimento); }
public ReconhecePaginaPac( IBaixaArquivoFileTransferServico baixarArquivoFileTransfer, ISalvarReconhecimentoPaginaServico salvarReconhecimentoPaginaServico, IAdicionaQuantidadeLicencaConsumida adicionaQuantidadeLicencaConsumida, IReconheceImagem reconheceImagem) { this.baixarArquivoFileTransfer = baixarArquivoFileTransfer; this.salvarReconhecimentoPaginaServico = salvarReconhecimentoPaginaServico; this.adicionaQuantidadeLicencaConsumida = adicionaQuantidadeLicencaConsumida; this.reconheceImagem = reconheceImagem; }