Revert "Add a bit more typing to help future development and customizations."

This reverts commit 32ce244de551c437d8eef08edeb1fd1906036827.
This commit is contained in:
Pol Dellaiera 2021-06-30 08:33:11 +02:00
parent 401659748c
commit d50d3e0e4b
2 changed files with 18 additions and 16 deletions

View File

@ -10,7 +10,6 @@ use Chill\MainBundle\Pagination\PaginatorFactory;
use Chill\MainBundle\Pagination\PaginatorInterface;
use Chill\MainBundle\Security\Authorization\AuthorizationHelper;
use Chill\MainBundle\CRUD\Resolver\Resolver;
use Doctrine\ORM\QueryBuilder;
use Symfony\Component\EventDispatcher\EventDispatcherInterface;
use Symfony\Component\Serializer\SerializerInterface;
use Symfony\Component\Translation\TranslatorInterface;
@ -70,7 +69,7 @@ class AbstractCRUDController extends AbstractController
* @param Request $request
* @return int
*/
protected function countEntities(string $action, Request $request, string $_format): int
protected function countEntities(string $action, Request $request, $_format): int
{
return $this->buildQueryEntities($action, $request)
->select('COUNT(e)')
@ -90,23 +89,23 @@ class AbstractCRUDController extends AbstractController
* It returns, by default, a query builder.
*
*/
protected function queryEntities(string $action, Request $request, string $_format, PaginatorInterface $paginator): QueryBuilder
protected function queryEntities(string $action, Request $request, string $_format, PaginatorInterface $paginator)
{
$queryBuilder = $this->buildQueryEntities($action, $request)
$query = $this->buildQueryEntities($action, $request)
->setFirstResult($paginator->getCurrentPage()->getFirstItemNumber())
->setMaxResults($paginator->getItemsPerPage());
// allow to order queries and return the new query
return $this->orderQuery($action, $queryBuilder, $request, $paginator, $_format);
return $this->orderQuery($action, $query, $request, $paginator, $_format);
}
/**
* Add ordering fields in the query build by self::queryEntities
*
*/
protected function orderQuery(string $action, QueryBuilder $queryBuilder, Request $request, PaginatorInterface $paginator, string $_format): QueryBuilder
protected function orderQuery(string $action, $query, Request $request, PaginatorInterface $paginator, $_format)
{
return $queryBuilder;
return $query;
}
/**
@ -118,8 +117,12 @@ class AbstractCRUDController extends AbstractController
* can add some by using the method `customizeQuery`.
*
* The alias for the entity is "e".
*
* @param string $action
* @param Request $request
* @return QueryBuilder
*/
protected function buildQueryEntities(string $action, Request $request): QueryBuilder
protected function buildQueryEntities(string $action, Request $request)
{
$qb = $this->getDoctrine()->getManager()
->createQueryBuilder()
@ -132,14 +135,14 @@ class AbstractCRUDController extends AbstractController
return $qb;
}
protected function customizeQuery(string $action, Request $request, QueryBuilder $queryBuilder): void {}
protected function customizeQuery(string $action, Request $request, $query): void {}
/**
* Get the result of the query
*/
protected function getQueryResult(string $action, Request $request, string $_format, int $totalItems, PaginatorInterface $paginator, QueryBuilder $queryBuilder): array
protected function getQueryResult(string $action, Request $request, string $_format, int $totalItems, PaginatorInterface $paginator, $query)
{
return $queryBuilder->getQuery()->getResult();
return $query->getQuery()->getResult();
}
protected function onPreIndex(string $action, Request $request, string $_format): ?Response
@ -158,7 +161,7 @@ class AbstractCRUDController extends AbstractController
/**
* method used by indexAction
*/
protected function onPostIndexBuildQuery(string $action, Request $request, string $_format, int $totalItems, PaginatorInterface $paginator, QueryBuilder $queryBuilder): ?Response
protected function onPostIndexBuildQuery(string $action, Request $request, string $_format, int $totalItems, PaginatorInterface $paginator, $query): ?Response
{
return null;
}
@ -166,7 +169,7 @@ class AbstractCRUDController extends AbstractController
/**
* method used by indexAction
*/
protected function onPostIndexFetchQuery(string $action, Request $request, string $_format, int $totalItems, PaginatorInterface $paginator, array $entities): ?Response
protected function onPostIndexFetchQuery(string $action, Request $request, string $_format, int $totalItems, PaginatorInterface $paginator, $entities): ?Response
{
return null;
}
@ -185,7 +188,7 @@ class AbstractCRUDController extends AbstractController
/**
* called on post fetch entity
*/
protected function onPostFetchEntity(string $action, Request $request, $entity, string $_format): ?Response
protected function onPostFetchEntity(string $action, Request $request, $entity, $_format): ?Response
{
return null;
}

View File

@ -305,8 +305,7 @@ class ApiController extends AbstractCRUDController
if ($response instanceof Response) {
return $response;
}
// TODO: $entity is never set before
if (!isset($entity)) {
$entity = '';
}