src/Repository/ProcesoRepository.php line 143

Open in your IDE?
  1. <?php
  2. namespace App\Repository;
  3. use App\Entity\Proceso;
  4. use App\Utils\CustomPaginator;
  5. use Doctrine\Bundle\DoctrineBundle\Repository\ServiceEntityRepository;
  6. use Doctrine\Persistence\ManagerRegistry;
  7. /**
  8.  * @method null|Proceso find($id, $lockMode = null, $lockVersion = null)
  9.  * @method null|Proceso findOneBy(array $criteria, array $orderBy = null)
  10.  * @method Proceso[]    findAll()
  11.  * @method Proceso[]    findBy(array $criteria, array $orderBy = null, $limit = null, $offset = null)
  12.  */
  13. class ProcesoRepository extends ServiceEntityRepository
  14. {
  15.     public function __construct(ManagerRegistry $registry)
  16.     {
  17.         parent::__construct($registryProceso::class);
  18.     }
  19.     // /**
  20.     //  * @return Proceso[] Returns an array of Proceso objects
  21.     //  */
  22.     /*
  23.     public function findByExampleField($value)
  24.     {
  25.         return $this->createQueryBuilder('p')
  26.             ->andWhere('p.exampleField = :val')
  27.             ->setParameter('val', $value)
  28.             ->orderBy('p.id', 'ASC')
  29.             ->setMaxResults(10)
  30.             ->getQuery()
  31.             ->getResult()
  32.         ;
  33.     }
  34.     */
  35.     /*
  36.     public function findOneBySomeField($value): ?Proceso
  37.     {
  38.         return $this->createQueryBuilder('p')
  39.             ->andWhere('p.exampleField = :val')
  40.             ->setParameter('val', $value)
  41.             ->getQuery()
  42.             ->getOneOrNullResult()
  43.         ;
  44.     }
  45.     */
  46.     public function getAllProcesos($data$currentPage 1$limit 12$sort$order)
  47.     {
  48.         $parameters = [];
  49.         $query $this->createQueryBuilder('Proceso')
  50.             ->leftJoin('Proceso.procOferta''Oferta')
  51.             ->leftJoin('Proceso.procMolde''Molde')
  52.             ->leftJoin('Proceso.procTipo''Tipo')
  53.             ->leftJoin('Oferta.OfPresupuesto''Presupuesto');
  54.         if (isset($data['value']) && '' != $data['value']) {
  55.             $query->andWhere('( Proceso.ProcNombre like :where1
  56.             )');
  57.             $parameters[':where1'] = '%' $data['value'] . '%';
  58.         }
  59.         if (isset($data['Referencia']) && '' != $data['Referencia']) {
  60.             $query
  61.                 ->andWhere('Proceso.ProcReferencia like :Referencia')
  62.                 ->andWhere('Proceso.ProcReferencia is not null
  63.             ');
  64.             $parameters[':Referencia'] = '%' $data['Referencia'] . '%';
  65.         }
  66.         if (isset($data['nombre']) && '' != $data['nombre']) {
  67.             $query
  68.                 ->andWhere('Proceso.ProcNombre like :nombre')
  69.                 ->andWhere('Proceso.ProcNombre is not null
  70.             ');
  71.             $parameters[':nombre'] = '%' $data['nombre'] . '%';
  72.         }
  73.         if (isset($data['oferta']) && '' != $data['oferta']) {
  74.             $query
  75.                 ->andWhere('Oferta.OfNombre like :oferta')
  76.                 ->andWhere('Oferta.OfNombre is not null
  77.             ');
  78.             $parameters[':oferta'] = '%' $data['oferta'] . '%';
  79.         }
  80.         if (isset($data['presupuesto']) && '' != $data['presupuesto']) {
  81.             $query
  82.                 ->andWhere('Presupuesto.PresuReferencia like :presupuesto')
  83.                 ->andWhere('Presupuesto.PresuReferencia is not null
  84.             ');
  85.             $parameters[':presupuesto'] = '%' $data['presupuesto'] . '%';
  86.         }
  87.         if (isset($data['molde']) && '' != $data['molde']) {
  88.             $query
  89.                 ->andWhere('Molde.moldReferencia like :molde')
  90.                 ->andWhere('Molde.moldReferencia is not null
  91.             ');
  92.             $parameters[':molde'] = '%' $data['molde'] . '%';
  93.         }
  94.         if (isset($data['tipo']) && '' != $data['tipo']) {
  95.             $query
  96.                 ->andWhere('Tipo.PTipoNombre like :tipo')
  97.                 ->andWhere('Tipo.PTipoNombre is not null
  98.             ');
  99.             $parameters[':tipo'] = '%' $data['tipo'] . '%';
  100.         }
  101.         if (isset($data['estado']) && '' != $data['estado']) {
  102.             $query
  103.                 ->andWhere('Proceso.ProcEstado like :estado')
  104.                 ->andWhere('Proceso.ProcEstado is not null
  105.             ');
  106.             $parameters[':estado'] = '%' $data['estado'] . '%';
  107.         }
  108.         $query->andWhere('(
  109.             Proceso.ProcesoSchneider = 0 or
  110.             Proceso.ProcesoSchneider is null
  111.         )');
  112.         if (!empty($parameters)) {
  113.             $query->setParameters($parameters);
  114.         }
  115.         $query->addOrderBy($sort$order);
  116.         $query->getQuery();
  117.         $paginator = new CustomPaginator($query);
  118.         $result $paginator->paginate($currentPage$limit);
  119.         if ($result['count'] > && $result['maxPages'] < $result['thisPage']) {
  120.             $result $paginator->paginate(1$limit);
  121.         }
  122.         return $result;
  123.     }
  124.     public function getAllProcesosByCliente($data$currentPage 1$limit 12$sort$order$cliente_id)
  125.     {
  126.         $parameters = [];
  127.         $query $this->createQueryBuilder('Proceso')
  128.             ->leftJoin('Proceso.procOferta''Oferta')
  129.             ->leftJoin('Proceso.procMolde''Molde')
  130.             ->leftJoin('Proceso.procTipo''Tipo')
  131.             ->leftJoin('Proceso.ProcCliente''Cliente')
  132.             ->leftJoin('Oferta.OfPresupuesto''Presupuesto');
  133.         if (isset($data['value']) && '' != $data['value']) {
  134.             $query->andWhere('( Proceso.ProcNombre like :where1
  135.             )');
  136.             $parameters[':where1'] = '%' $data['value'] . '%';
  137.         }
  138.         if (isset($data['Referencia']) && '' != $data['Referencia']) {
  139.             $query
  140.                 ->andWhere('Proceso.ProcReferencia like :Referencia')
  141.                 ->andWhere('Proceso.ProcReferencia is not null
  142.             ');
  143.             $parameters[':Referencia'] = '%' $data['Referencia'] . '%';
  144.         }
  145.         if (isset($data['nombre']) && '' != $data['nombre']) {
  146.             $query
  147.                 ->andWhere('Proceso.ProcNombre like :nombre')
  148.                 ->andWhere('Proceso.ProcNombre is not null
  149.             ');
  150.             $parameters[':nombre'] = '%' $data['nombre'] . '%';
  151.         }
  152.         if (isset($data['oferta']) && '' != $data['oferta']) {
  153.             $query
  154.                 ->andWhere('Oferta.OfNombre like :oferta')
  155.                 ->andWhere('Oferta.OfNombre is not null
  156.             ');
  157.             $parameters[':oferta'] = '%' $data['oferta'] . '%';
  158.         }
  159.         if (isset($data['presupuesto']) && '' != $data['presupuesto']) {
  160.             $query
  161.                 ->andWhere('Presupuesto.PresuReferencia like :presupuesto')
  162.                 ->andWhere('Presupuesto.PresuReferencia is not null
  163.             ');
  164.             $parameters[':presupuesto'] = '%' $data['presupuesto'] . '%';
  165.         }
  166.         if (isset($data['molde']) && '' != $data['molde']) {
  167.             $query
  168.                 ->andWhere('Molde.moldReferencia like :molde')
  169.                 ->andWhere('Molde.moldReferencia is not null
  170.             ');
  171.             $parameters[':molde'] = '%' $data['molde'] . '%';
  172.         }
  173.         if (isset($data['tipo']) && '' != $data['tipo']) {
  174.             $query
  175.                 ->andWhere('Tipo.PTipoNombre like :tipo')
  176.                 ->andWhere('Tipo.PTipoNombre is not null
  177.             ');
  178.             $parameters[':tipo'] = '%' $data['tipo'] . '%';
  179.         }
  180.         if (isset($data['estado']) && '' != $data['estado']) {
  181.             $query
  182.                 ->andWhere('Proceso.ProcEstado like :estado')
  183.                 ->andWhere('Proceso.ProcEstado is not null
  184.             ');
  185.             $parameters[':estado'] = '%' $data['estado'] . '%';
  186.         }
  187.         $query->andWhere('(
  188.             Cliente.id = :cliente_id
  189.         )');
  190.         $parameters[':cliente_id'] = $cliente_id;
  191.         if (!empty($parameters)) {
  192.             $query->setParameters($parameters);
  193.         }
  194.         $query->addOrderBy($sort$order);
  195.         $query->getQuery();
  196.         $paginator = new CustomPaginator($query);
  197.         $result $paginator->paginate($currentPage$limit);
  198.         if ($result['count'] > && $result['maxPages'] < $result['thisPage']) {
  199.             $result $paginator->paginate(1$limit);
  200.         }
  201.         return $result;
  202.     }
  203.     public function getAllProcesosByMolde($data$currentPage 1$limit 12$sort$order$molde_id)
  204.     {
  205.         $parameters = [];
  206.         $query $this->createQueryBuilder('Proceso')
  207.             ->leftJoin('Proceso.procOferta''Oferta')
  208.             ->leftJoin('Proceso.procMolde''Molde')
  209.             ->leftJoin('Proceso.procTipo''Tipo')
  210.             ->leftJoin('Proceso.ProcCliente''Cliente')
  211.             ->leftJoin('Oferta.OfPresupuesto''Presupuesto');
  212.         if (isset($data['value']) && '' != $data['value']) {
  213.             $query->andWhere('( Proceso.ProcNombre like :where1
  214.             )');
  215.             $parameters[':where1'] = '%' $data['value'] . '%';
  216.         }
  217.         if (isset($data['Referencia']) && '' != $data['Referencia']) {
  218.             $query
  219.                 ->andWhere('Proceso.ProcReferencia like :Referencia')
  220.                 ->andWhere('Proceso.ProcReferencia is not null
  221.             ');
  222.             $parameters[':Referencia'] = '%' $data['Referencia'] . '%';
  223.         }
  224.         if (isset($data['nombre']) && '' != $data['nombre']) {
  225.             $query
  226.                 ->andWhere('Proceso.ProcNombre like :nombre')
  227.                 ->andWhere('Proceso.ProcNombre is not null
  228.             ');
  229.             $parameters[':nombre'] = '%' $data['nombre'] . '%';
  230.         }
  231.         if (isset($data['oferta']) && '' != $data['oferta']) {
  232.             $query
  233.                 ->andWhere('Oferta.OfNombre like :oferta')
  234.                 ->andWhere('Oferta.OfNombre is not null
  235.             ');
  236.             $parameters[':oferta'] = '%' $data['oferta'] . '%';
  237.         }
  238.         if (isset($data['presupuesto']) && '' != $data['presupuesto']) {
  239.             $query
  240.                 ->andWhere('Presupuesto.PresuReferencia like :presupuesto')
  241.                 ->andWhere('Presupuesto.PresuReferencia is not null
  242.             ');
  243.             $parameters[':presupuesto'] = '%' $data['presupuesto'] . '%';
  244.         }
  245.         if (isset($data['molde']) && '' != $data['molde']) {
  246.             $query
  247.                 ->andWhere('Molde.moldReferencia like :molde')
  248.                 ->andWhere('Molde.moldReferencia is not null
  249.             ');
  250.             $parameters[':molde'] = '%' $data['molde'] . '%';
  251.         }
  252.         if (isset($data['tipo']) && '' != $data['tipo']) {
  253.             $query
  254.                 ->andWhere('Tipo.PTipoNombre like :tipo')
  255.                 ->andWhere('Tipo.PTipoNombre is not null
  256.             ');
  257.             $parameters[':tipo'] = '%' $data['tipo'] . '%';
  258.         }
  259.         if (isset($data['estado']) && '' != $data['estado']) {
  260.             $query
  261.                 ->andWhere('Proceso.ProcEstado like :estado')
  262.                 ->andWhere('Proceso.ProcEstado is not null
  263.             ');
  264.             $parameters[':estado'] = '%' $data['estado'] . '%';
  265.         }
  266.         $query->andWhere('(
  267.             Molde.id = :molde_id
  268.         )');
  269.         $parameters[':molde_id'] = $molde_id;
  270.         if (!empty($parameters)) {
  271.             $query->setParameters($parameters);
  272.         }
  273.         $query->addOrderBy($sort$order);
  274.         $query->getQuery();
  275.         $paginator = new CustomPaginator($query);
  276.         $result $paginator->paginate($currentPage$limit);
  277.         if ($result['count'] > && $result['maxPages'] < $result['thisPage']) {
  278.             $result $paginator->paginate(1$limit);
  279.         }
  280.         return $result;
  281.     }
  282.     public function getAllActivos($data$currentPage 1$limit 12$sort$order)
  283.     {
  284.         $parameters = [];
  285.         $query $this->createQueryBuilder('Proceso')
  286.             ->leftJoin('Proceso.procOferta''Oferta')
  287.             ->leftJoin('Proceso.procMolde''Molde')
  288.             ->leftJoin('Proceso.procTipo''Tipo')
  289.             ->leftJoin('Oferta.OfPresupuesto''Presupuesto')
  290.             ->andWhere('Proceso.ProcEstado = 1');
  291.         if (isset($data['value']) && '' != $data['value']) {
  292.             $query->andWhere('( Proceso.ProcNombre like :where1
  293.             )');
  294.             $parameters[':where1'] = '%' $data['value'] . '%';
  295.         }
  296.         if (isset($data['Referencia']) && '' != $data['Referencia']) {
  297.             $query
  298.                 ->andWhere('Proceso.ProcReferencia like :Referencia')
  299.                 ->andWhere('Proceso.ProcReferencia is not null
  300.             ');
  301.             $parameters[':Referencia'] = '%' $data['Referencia'] . '%';
  302.         }
  303.         if (isset($data['nombre']) && '' != $data['nombre']) {
  304.             $query
  305.                 ->andWhere('Proceso.ProcNombre like :nombre')
  306.                 ->andWhere('Proceso.ProcNombre is not null
  307.             ');
  308.             $parameters[':nombre'] = '%' $data['nombre'] . '%';
  309.         }
  310.         if (isset($data['oferta']) && '' != $data['oferta']) {
  311.             $query
  312.                 ->andWhere('Oferta.OfNombre like :oferta')
  313.                 ->andWhere('Oferta.OfNombre is not null
  314.             ');
  315.             $parameters[':oferta'] = '%' $data['oferta'] . '%';
  316.         }
  317.         if (isset($data['presupuesto']) && '' != $data['presupuesto']) {
  318.             $query
  319.                 ->andWhere('Presupuesto.PresuCodigo like :presupuesto')
  320.                 ->andWhere('Presupuesto.PresuCodigo is not null
  321.             ');
  322.             $parameters[':presupuesto'] = '%' $data['presupuesto'] . '%';
  323.         }
  324.         if (isset($data['molde']) && '' != $data['molde']) {
  325.             $query
  326.                 ->andWhere('Molde.moldReferencia like :molde')
  327.                 ->andWhere('Molde.moldReferencia is not null
  328.             ');
  329.             $parameters[':molde'] = '%' $data['molde'] . '%';
  330.         }
  331.         if (isset($data['tipo']) && '' != $data['tipo']) {
  332.             $query
  333.                 ->andWhere('Tipo.PTipoNombre like :tipo')
  334.                 ->andWhere('Tipo.PTipoNombre is not null
  335.             ');
  336.             $parameters[':tipo'] = '%' $data['tipo'] . '%';
  337.         }
  338.         if (isset($data['estado']) && '' != $data['estado']) {
  339.             $query
  340.                 ->andWhere('Proceso.ProcEstado like :estado')
  341.                 ->andWhere('Proceso.ProcEstado is not null
  342.             ');
  343.             $parameters[':estado'] = '%' $data['estado'] . '%';
  344.         }
  345.         if (!empty($parameters)) {
  346.             $query->setParameters($parameters);
  347.         }
  348.         $query->addOrderBy($sort$order);
  349.         $query->getQuery();
  350.         $paginator = new CustomPaginator($query);
  351.         $result $paginator->paginate($currentPage$limit);
  352.         if ($result['count'] > && $result['maxPages'] < $result['thisPage']) {
  353.             $result $paginator->paginate(1$limit);
  354.         }
  355.         return $result;
  356.     }
  357.     public function getAllFinalizados($data$currentPage 1$limit 12$sort$order)
  358.     {
  359.         $parameters = [];
  360.         $query $this->createQueryBuilder('Proceso')
  361.             ->leftJoin('Proceso.procOferta''Oferta')
  362.             ->leftJoin('Proceso.procMolde''Molde')
  363.             ->leftJoin('Proceso.procTipo''Tipo')
  364.             ->leftJoin('Oferta.OfPresupuesto''Presupuesto')
  365.             ->andWhere('Proceso.ProcEstado = 0');
  366.         if (isset($data['value']) && '' != $data['value']) {
  367.             $query->andWhere('( Proceso.ProcNombre like :where1
  368.             )');
  369.             $parameters[':where1'] = '%' $data['value'] . '%';
  370.         }
  371.         if (isset($data['Referencia']) && '' != $data['Referencia']) {
  372.             $query
  373.                 ->andWhere('Proceso.ProcReferencia like :Referencia')
  374.                 ->andWhere('Proceso.ProcReferencia is not null
  375.             ');
  376.             $parameters[':Referencia'] = '%' $data['Referencia'] . '%';
  377.         }
  378.         if (isset($data['nombre']) && '' != $data['nombre']) {
  379.             $query
  380.                 ->andWhere('Proceso.ProcNombre like :nombre')
  381.                 ->andWhere('Proceso.ProcNombre is not null
  382.             ');
  383.             $parameters[':nombre'] = '%' $data['nombre'] . '%';
  384.         }
  385.         if (isset($data['oferta']) && '' != $data['oferta']) {
  386.             $query
  387.                 ->andWhere('Oferta.OfNombre like :oferta')
  388.                 ->andWhere('Oferta.OfNombre is not null
  389.             ');
  390.             $parameters[':oferta'] = '%' $data['oferta'] . '%';
  391.         }
  392.         if (isset($data['presupuesto']) && '' != $data['presupuesto']) {
  393.             $query
  394.                 ->andWhere('Presupuesto.PresuCodigo like :presupuesto')
  395.                 ->andWhere('Presupuesto.PresuCodigo is not null
  396.             ');
  397.             $parameters[':presupuesto'] = '%' $data['presupuesto'] . '%';
  398.         }
  399.         if (isset($data['molde']) && '' != $data['molde']) {
  400.             $query
  401.                 ->andWhere('Molde.moldReferencia like :molde')
  402.                 ->andWhere('Molde.moldReferencia is not null
  403.             ');
  404.             $parameters[':molde'] = '%' $data['molde'] . '%';
  405.         }
  406.         if (isset($data['tipo']) && '' != $data['tipo']) {
  407.             $query
  408.                 ->andWhere('Tipo.PTipoNombre like :tipo')
  409.                 ->andWhere('Tipo.PTipoNombre is not null
  410.             ');
  411.             $parameters[':tipo'] = '%' $data['tipo'] . '%';
  412.         }
  413.         if (isset($data['estado']) && '' != $data['estado']) {
  414.             $query
  415.                 ->andWhere('Proceso.ProcEstado like :estado')
  416.                 ->andWhere('Proceso.ProcEstado is not null
  417.             ');
  418.             $parameters[':estado'] = '%' $data['estado'] . '%';
  419.         }
  420.         if (!empty($parameters)) {
  421.             $query->setParameters($parameters);
  422.         }
  423.         $query->addOrderBy($sort$order);
  424.         $query->getQuery();
  425.         $paginator = new CustomPaginator($query);
  426.         $result $paginator->paginate($currentPage$limit);
  427.         if ($result['count'] > && $result['maxPages'] < $result['thisPage']) {
  428.             $result $paginator->paginate(1$limit);
  429.         }
  430.         return $result;
  431.     }
  432.     public function getAllProcesosSchneider($data$currentPage 1$limit 12$sort$order)
  433.     {
  434.         $parameters = [];
  435.         $query $this->createQueryBuilder('Proceso');
  436.         if (isset($data['value']) && '' != $data['value']) {
  437.             $query->andWhere('(
  438.             )');
  439.             $parameters[':where1'] = '%' $data['value'] . '%';
  440.         }
  441.         $query->andWhere('(
  442.             Proceso.ProcesoSchneider = 1
  443.         )');
  444.         if (!empty($parameters)) {
  445.             $query->setParameters($parameters);
  446.         }
  447.         $query->addOrderBy($sort$order);
  448.         $query->getQuery();
  449.         $paginator = new CustomPaginator($query);
  450.         $result $paginator->paginate($currentPage$limit);
  451.         if ($result['count'] > && $result['maxPages'] < $result['thisPage']) {
  452.             $result $paginator->paginate(1$limit);
  453.         }
  454.         return $result;
  455.     }
  456.     public function getAllProcesoSelect($data$currentPage 1$limit 12$sort$order "DESC")
  457.     {
  458.         $parameters = [];
  459.         $query $this->createQueryBuilder('Proceso')
  460.             ->leftJoin('Proceso.ProcCliente''cliente');
  461.         if (isset($data['texto']) && '' != $data['texto']) {
  462.             $query->andWhere('(
  463.                 Proceso.ProcNombre like :where1
  464.             )');
  465.             $parameters[':texto'] = '%' $data['texto'] . '%';
  466.         }
  467.         if (isset($data['idCliente']) && '' != $data['idCliente']) {
  468.             $query->andWhere('(
  469.                 cliente.id = :idCliente
  470.             )');
  471.             $parameters[':idCliente'] = $data['idCliente'];
  472.         }
  473.         $query->andWhere('(
  474.             Proceso.ProcEstado = :estado
  475.         )');
  476.         $parameters[':estado'] = Proceso::ESTADO['ACTIVO'];
  477.         if (!empty($parameters)) {
  478.             $query->setParameters($parameters);
  479.         }
  480.         $query->addOrderBy($sort$order);
  481.         $query->getQuery();
  482.         $paginator  = new CustomPaginator($query);
  483.         $result     $paginator->paginate($currentPage$limit);
  484.         if ($result['count'] > && $result['maxPages'] < $result['thisPage']) {
  485.             $result $paginator->paginate(1$limit);
  486.         }
  487.         return $result;
  488.     }
  489.     public function getLast()
  490.     {
  491.         $query $this->createQueryBuilder('Proceso');
  492.         $query->addOrderBy('Proceso.id''DESC');
  493.         $query->setMaxResults(1);
  494.         return $query->getQuery()->getOneOrNullResult();
  495.     }
  496.     public function getInformeData($data$currentPage 1$limit 12$sort$order)
  497.     {
  498.         $query $this
  499.             ->createQueryBuilder('Proceso')
  500.             ->leftJoin('Proceso.ProcCliente''cliente')
  501.             ->leftJoin('Proceso.ProcesoFases''fase')
  502.             ->leftJoin('Proceso.procesoBloqFasesCliente''faseCliente')
  503.             ->leftJoin('Proceso.procArticulos''articulo')
  504.             ->leftJoin('Proceso.procArticulosCliente''articuloCliente')
  505.             ->select(
  506.                 'Proceso',
  507.                 'Proceso.ProcFecha, 
  508.             YEAR(Proceso.ProcFecha) as year,
  509.             MONTH(Proceso.ProcFecha) AS month, 
  510.             SUM(articulo.proArtPrecioTotal) as totalArticulo ,
  511.             SUM(articuloCliente.proArtPrecioTotal) as totalArticuloCliente , 
  512.             SUM(fase.ProcesoBloqFasTotalVenta) as totalFase, 
  513.             SUM(faseCliente.ProcesoBloqFasTotalVenta) as totalFaseCliente
  514.             '
  515.             )
  516.             ->addGroupBy('year')
  517.             ->addGroupBy('month');
  518.         if ($sort == "fecha") {
  519.             $query
  520.                 ->addOrderBy('year'$order)
  521.                 ->addOrderBy('month'$order);
  522.         } else {
  523.             $query->addOrderBy($sort$order);
  524.         }
  525.         if (isset($data['desde']) && $data['desde'] != null) {
  526.             $query
  527.                 ->andWhere("Proceso.ProcFecha >= :desde");
  528.             $parameters[':desde'] = $data['desde'];
  529.         }
  530.         if (isset($data['hasta']) && $data['hasta'] != null) {
  531.             $query
  532.                 ->andWhere("Proceso.ProcFecha <= :hasta");
  533.             $parameters[':hasta'] = $data['hasta'];
  534.         }
  535.         if (!empty($parameters)) {
  536.             $query->setParameters($parameters);
  537.         }
  538.         return $query->getQuery()->getResult();
  539.     }
  540.     public function getNumActivos()
  541.     {
  542.         $parameters = [];
  543.         $query $this->createQueryBuilder('Proceso');
  544.         $query
  545.             ->select('COUNT(Proceso.id)')
  546.             ->andWhere('(
  547.                 Proceso.ProcEstado = 1
  548.         )')
  549.             ->andWhere('(
  550.                 Proceso.ProcesoSchneider = 0 or
  551.             Proceso.ProcesoSchneider is null
  552.         )');
  553.         $resultado $query->getQuery()->getOneOrNullResult();
  554.         $total 0;
  555.         if ($resultado) {
  556.             $total $resultado[1];
  557.         }
  558.         return $total;
  559.     }
  560.     public function getNumActivosSchneider()
  561.     {
  562.         $parameters = [];
  563.         $query $this->createQueryBuilder('Proceso');
  564.         $query
  565.             ->select('COUNT(Proceso.id)')
  566.             ->andWhere('(
  567.                 Proceso.ProcEstado = 1
  568.         )')
  569.             ->andWhere('(
  570.                 Proceso.ProcesoSchneider = 1
  571.         )');
  572.         $resultado $query->getQuery()->getOneOrNullResult();
  573.         $total 0;
  574.         if ($resultado) {
  575.             $total $resultado[1];
  576.         }
  577.         return $total;
  578.     }
  579. }