vendor/uvdesk/automation-bundle/Repository/WorkflowRepository.php line 32

Open in your IDE?
  1. <?php
  2. namespace Webkul\UVDesk\AutomationBundle\Repository;
  3. use Doctrine\Common\Collections\Criteria;
  4. use Webkul\UVDesk\AutomationBundle\Entity\Workflow;
  5. /**
  6.  * WorkflowRepository
  7.  *
  8.  * This class was generated by the Doctrine ORM. Add your own custom
  9.  * repository methods below.
  10.  */
  11. class WorkflowRepository extends \Doctrine\ORM\EntityRepository
  12. {
  13.     public $safeFields = array('page','limit','sort','order','direction');
  14.     const LIMIT 10;
  15.     public function getEventWorkflows($eventName$isActive true$isPredefined true)
  16.     {
  17.         return $this->getEntityManager()->createQueryBuilder()
  18.             ->select('workflow')
  19.             ->from(Workflow::class, 'workflow')
  20.             ->leftJoin('workflow.workflowEvents''workflowEvents')
  21.             ->where('workflow.status = :status')->setParameter('status'$isActive)
  22.             ->andWhere('workflow.isPredefind = :isPredefined')->setParameter('isPredefined'$isPredefined)
  23.             ->andWhere('workflowEvents.event = :eventType')->setParameter('eventType'$eventName)
  24.             ->orderBy('workflow.sortOrder'Criteria::ASC)
  25.             ->getQuery()->getResult();
  26.     }
  27.     public function getWorkflows(\Symfony\Component\HttpFoundation\ParameterBag $obj null$container) {
  28.         $qb $this->getEntityManager()->createQueryBuilder();
  29.         $qb->select('w.id, w.name, w.status')->from($this->getEntityName(), 'w')
  30.             ->orderBy('w.sortOrder'Criteria::ASC);
  31.         
  32.         return ['workflows' => $qb->getQuery()->getArrayResult()];
  33.     }
  34. }