Nevar pievienot vairāk kā 25 tēmas Tēmai ir jāsākas ar burtu vai ciparu, tā var saturēt domu zīmes ('-') un var būt līdz 35 simboliem gara.

76 rindas
1.9KB

  1. <?php
  2. namespace Lc\SovBundle\Repository\Ticket;
  3. use App\Entity\Ticket\Ticket;
  4. use Lc\SovBundle\Model\Ticket\TicketInterface;
  5. use Lc\SovBundle\Repository\AbstractStore;
  6. class TicketStore extends AbstractStore implements TicketStoreInterface
  7. {
  8. protected TicketRepositoryQueryInterface $query;
  9. public function __construct(TicketRepositoryQueryInterface $query)
  10. {
  11. $this->query = $query;
  12. }
  13. // getTicketsByUser
  14. public function getByUser($user, $query = null): array
  15. {
  16. if (is_null($query)) {
  17. $query = $this->query->create();
  18. }
  19. $query->filterByUser($user);
  20. return $query->find();
  21. }
  22. // findAllOpen
  23. public function getAllOpen(int $limit = 0, $query = null): array
  24. {
  25. if (is_null($query)) {
  26. $query = $this->query->create();
  27. }
  28. $query
  29. ->filterByStatus(Ticket::TICKET_STATUS_OPEN)
  30. ->limit($limit)
  31. ->orderBy('r.id', 'DESC');
  32. return $query->find();
  33. }
  34. // public function findAllOpen($limit = 0)
  35. // {
  36. // $query = $this->findByMerchantQuery();
  37. // $this->filterStatus($query, [Ticket::TICKET_STATUS_OPEN]);
  38. // $query->addOrderBy('e.id', 'DESC');
  39. // $query->setMaxResults($limit);
  40. // return $query->getQuery()->getResult();
  41. // }
  42. //countAllOpen
  43. public function countAllOpen($query = null)
  44. {
  45. if (is_null($query)) {
  46. $query = $this->query->create();
  47. }
  48. $query
  49. ->selectCount()
  50. ->filterByStatus(Ticket::TICKET_STATUS_OPEN);
  51. return $query->count();
  52. }
  53. // public function countAllOpen()
  54. // {
  55. // $query = $this->findByMerchantQuery();
  56. // $query->select('count(e.id)');
  57. // $this->filterStatus($query, [Ticket::TICKET_STATUS_OPEN]);
  58. // return $query->getQuery()->getSingleScalarResult();
  59. // }
  60. }