From 7bb17acd4062a25108a22b1a039dcaaa9693ed59 Mon Sep 17 00:00:00 2001 From: Thomas Beaujean Date: Sat, 21 Mar 2015 00:28:42 +0100 Subject: [PATCH] Add the getNewQueryBuilder and the getQueryBuilderResult functions --- Generator/RepositoryGenerator.php | 6 ++-- .../Generator/TopRepositoryTemplate.html.twig | 28 +++++++++++++++++++ 2 files changed, 32 insertions(+), 2 deletions(-) diff --git a/Generator/RepositoryGenerator.php b/Generator/RepositoryGenerator.php index e255620..8af79d8 100644 --- a/Generator/RepositoryGenerator.php +++ b/Generator/RepositoryGenerator.php @@ -81,13 +81,15 @@ public function generateFiles($directory) $tableNames = $description['tableNames']; foreach ($tableNames as $tableIndex => $tableName) { - $renderedTemplate = $twig->render($this->topRepositoryTemple, array('tableName' => $tableName, 'bundleName' => $bundleName)); + $entityDql = lcfirst($tableName); + + $renderedTemplate = $twig->render($this->topRepositoryTemple, array('tableName' => $tableName, 'bundleName' => $bundleName, 'entityDql' => $entityDql)); //parse the columns foreach ($fieldNames[$tableIndex] as $columnName) { $parameters = array( 'entity' => $tableName, - 'entityDql' => lcfirst($tableName), + 'entityDql' => $entityDql, 'column' => ucfirst($columnName), 'columnDql' => $columnName ); diff --git a/Resources/views/Generator/TopRepositoryTemplate.html.twig b/Resources/views/Generator/TopRepositoryTemplate.html.twig index cf20848..799fe6e 100644 --- a/Resources/views/Generator/TopRepositoryTemplate.html.twig +++ b/Resources/views/Generator/TopRepositoryTemplate.html.twig @@ -28,3 +28,31 @@ class {{ tableName }}Repository extends EntityRepository return self::$parameterIndex; } + + /** + * Get a new query builder + * + * @return integer The index + */ + public function getNewQueryBuilder() + { + $qb = $this->createQueryBuilder('{{ entityDql }}'); + + return $qb; + } + + /** + * Get the result of the query builder + * + * @return unknown The results + */ + public static function getQueryBuilderResult(QueryBuilder $qb) + { + $query = $qb->getQuery(); + $results = $query->getResult(); + + return $results; + } + + +