<?php
namespace Plugin\VariationSwatches42\Repository;
use Eccube\Repository\AbstractRepository;
use Plugin\VariationSwatches42\Entity\VariationSwatchClassConfig;
use Doctrine\Persistence\ManagerRegistry;
class ClassConfigRepository extends AbstractRepository
{
/**
* @param ManagerRegistry $registry
*/
public function __construct(ManagerRegistry $registry)
{
parent::__construct($registry, VariationSwatchClassConfig::class);
}
/**
* @return VariationSwatchClassConfig[] indexed by class_name_id
*/
public function findAllIndexed()
{
$list = $this->createQueryBuilder('c')
->leftJoin('c.className', 'cn')
->addSelect('cn')
->getQuery()->getResult();
$indexed = [];
foreach ($list as $cfg) {
$indexed[$cfg->getClassName()->getId()] = $cfg;
}
return $indexed;
}
}