Esempio n. 1
0
 /**
  * @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.');
 }