<?php namespace Lc\CaracoleBundle\Controller\Config; use EasyCorp\Bundle\EasyAdminBundle\Config\Crud; use EasyCorp\Bundle\EasyAdminBundle\Field\AssociationField; use EasyCorp\Bundle\EasyAdminBundle\Field\IntegerField; use EasyCorp\Bundle\EasyAdminBundle\Field\NumberField; use EasyCorp\Bundle\EasyAdminBundle\Field\TextField; use Lc\CaracoleBundle\Container\Config\UnitContainer; use Lc\CaracoleBundle\Controller\AdminControllerTrait; use Lc\CaracoleBundle\Factory\Config\UnitFactory; use Lc\SovBundle\Controller\AbstractAdminController; use Lc\SovBundle\Repository\RepositoryQueryInterface; abstract class UnitAdminController extends AbstractAdminController { use AdminControllerTrait; public function getRepositoryQuery() :RepositoryQueryInterface { return $this->get(UnitContainer::class)->getRepositoryQuery(); } public function configureFields(string $pageName): iterable { return [ TextField::new('unit'), TextField::new('wording'), TextField::new('wordingUnit'), TextField::new('wordingShort'), IntegerField::new('coefficient'), AssociationField::new('unitReference') ->setCustomOption('filter', false), ]; } public function createEntity(string $entityFqcn) { return $this->get(UnitContainer::class)->getFactory()->create(); } }