You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

59 lines
1.4KB

  1. <?php
  2. namespace Lc\SovBundle\Repository\Site;
  3. use Doctrine\Bundle\DoctrineBundle\Repository\ServiceEntityRepository;
  4. use Doctrine\ORM\QueryBuilder;
  5. use Lc\SovBundle\Doctrine\EntityInterface;
  6. use Lc\SovBundle\Repository\AbstractRepositoryQuery;
  7. interface PageRepositoryQueryInterface
  8. {
  9. public function create();
  10. public function call(callable $fn);
  11. public function count();
  12. public function findOne();
  13. public function find(): array;
  14. public function limit(int $maxResults);
  15. public function paginate(int $page = 1, int $limit = 20);
  16. public function getRepository(): ServiceEntityRepository;
  17. public function getQueryBuilder(): QueryBuilder;
  18. public function groupBy(string $field);
  19. public function orderBy(string $field, string $sort = 'ASC');
  20. public function filterById(int $id);
  21. public function andWhereEqual($field, $value);
  22. public function filterByOldUrl(string $oldUrl);
  23. public function resetRelationsJoin(): void;
  24. public function filterByDevAlias(string $devAlias);
  25. public function filterBySlug(string $slug);
  26. public function filterIsParent();
  27. public function filterIsChildren();
  28. public function filterByParent(EntityInterface $parent = null);
  29. public function filterIsOffline();
  30. public function filterIsOnline();
  31. public function filterIsDeleted();
  32. public function filterIsOnlineAndOffline();
  33. }