/** * @Route("partidas/") * @Template("YacareMunirgBundle:Importar:importar.html.twig") */ public function importarPartidasAction(Request $request) { $iniciar = (int) $request->query->get('iniciar'); if ($iniciar) { $desde = (int) $request->query->get('desde'); $cantidad = 100; $importador = new ImportadorPartidas($this->container, $this->getDoctrine()->getManager()); $importador->Inicializar(); $resultado = $importador->Importar($desde, $cantidad); return $this->ArrastrarVariables($request, array('importando' => 'partidas', 'url' => 'importarpartidas', 'resultado' => $resultado, 'cantidad' => $cantidad)); } else { return $this->ArrastrarVariables($request, array('importando' => 'partidas', 'url' => 'importarpartidas')); } }
protected function execute(InputInterface $input, OutputInterface $output) { if ($input->getOption('desde')) { $desde = (int) $input->getOption('desde'); } else { $desde = 0; } if ($input->getOption('hasta')) { $hasta = (int) $input->getOption('hasta'); } else { $hasta = 0; } $output->writeln('Importando partidas...'); $cantidad = 100; $progress = null; $importador = new ImportadorPartidas($this->getContainer(), $this->getContainer()->get('doctrine')->getManager()); $importador->Inicializar(); $progress = new ProgressBar($output, $importador->ObtenerCantidadTotal()); $progress->start(); $ResultadoFinal = new ResultadoImportacion($importador); while (true) { $resultado = $importador->Importar($desde, $cantidad); $ResultadoFinal->AgregarContadoresLote($resultado); $progress->setProgress($resultado->PosicionCursor()); if (!$resultado->HayMasRegistros()) { break; } $desde += $cantidad; if ($hasta > 0 && $desde >= $hasta) { break; } } $progress->finish(); $output->writeln(''); $output->writeln(' Se importaron ' . $ResultadoFinal->RegistrosNuevos . ' registros nuevos.'); $output->writeln(' Se actualizaron ' . $ResultadoFinal->RegistrosActualizados . ' registros.'); $output->writeln(' Se ignoraron ' . $ResultadoFinal->RegistrosIgnorados . ' registros.'); $output->writeln('Importación finalizada, se procesaron ' . $ResultadoFinal->TotalRegistrosProcesados() . ' registros.'); }