public void MetodoIncluir() { //Arrange var service = new ContribuinteService(_mapper, _contribuinteRepository, _mediator); var contribuinteDTO = new ContribuinteDTO(); //Act service.Incluir(contribuinteDTO); }
public void SplitPdf(ArquivoDTO arquivoImportado, LoteDTO lote) { var parametro = (lote.TipoContribuinte == TipoContribuinte.FuncionarioCassi ? Funcionarios : Prestadores); string caminho = string.Format(@"{0}\{1}\{2}\{3}", CaminhoDiretorio, lote.AnoExercicio, Processados, parametro); using (var reader = new PdfReader(arquivoImportado.CaminhoArquivo)) { int total = reader.NumberOfPages; for (int pagina = 1; pagina <= total; pagina++) { var textoPag = PdfTextExtractor.GetTextFromPage(reader, pagina, new SimpleTextExtractionStrategy()); var cpfsCnpjs = IdentificarCpfCnpjPdf(textoPag); if (cpfsCnpjs.Count() < 0) { continue; } ContribuinteDTO contribuinte = null; foreach (var cpfCnpj in cpfsCnpjs) { contribuinte = lote.ContribuintesArquivoTxt.FirstOrDefault(c => c.CpfCnpj == cpfCnpj); if (contribuinte != null) { break; } } if (contribuinte != null) { //Contribuinte encontrado no txt e pdf! contribuinte.Arquivo.CaminhoArquivo = caminho; contribuinte.Arquivo.CaminhoArquivoBanco = String.Format(@"\{0}\{1}\{2}", lote.AnoExercicio, Processados, parametro); if (GerarArquivo(reader, contribuinte, pagina)) { contribuinte.Status = StatusContribuinte.Sucesso; contribuinte.TipoSituacao = TipoSituacao.Processado; } } } } }
private bool GerarArquivo(PdfReader reader, ContribuinteDTO contribuinte, int pagina) { var cpfCnpj = contribuinte.CpfCnpj.Replace(".", String.Empty). Replace("-", String.Empty).Replace("/", String.Empty); contribuinte.Arquivo.NomeArquivo = cpfCnpj; contribuinte.Arquivo.ExtensaoArquivo = ".pdf"; var pathArquivo = String.Format(@"{0}\{1}_TASK{2}{3}", contribuinte.Arquivo.CaminhoArquivo, cpfCnpj, Task.CurrentId, ".pdf"); if (File.Exists(pathArquivo)) { int i = 1; pathArquivo = String.Format(@"{0}\{1}_TASK{2}_{3}{4}", contribuinte.Arquivo.CaminhoArquivo, cpfCnpj, Task.CurrentId, i, ".pdf"); while (File.Exists(pathArquivo)) { i++; pathArquivo = String.Format(@"{0}\{1}_TASK{2}_{3}{4}", contribuinte.Arquivo.CaminhoArquivo, cpfCnpj, Task.CurrentId, i, ".pdf"); } } var document = new Document(reader.GetPageSizeWithRotation(pagina)); var provider = new PdfCopy(document, new FileStream(pathArquivo, FileMode.Create)); var importedPage = provider.GetImportedPage(reader, pagina); document.Open(); provider.AddPage(importedPage); document.Close(); provider.Close(); return(true); }
public IActionResult Incluir([FromBody] ContribuinteDTO contribuinteDTO) { _contribuinteService.Incluir(contribuinteDTO); return(Response()); }
public void Incluir(ContribuinteDTO contribuinteDTO) { var command = _mapper.Map <IncluirContribuinteCommand>(contribuinteDTO); _mediator.Send(command); }