src/Admin/VatAdmin.php line 18

Open in your IDE?
  1. <?php
  2. declare(strict_types=1);
  3. namespace App\Admin;
  4. use App\Admin\TabMenu\ModuloMaestrosTabMenuAdmin;
  5. use Knp\Menu\ItemInterface;
  6. use Sonata\AdminBundle\Admin\AbstractAdmin;
  7. use Sonata\AdminBundle\Admin\AdminInterface;
  8. use Sonata\AdminBundle\Datagrid\ListMapper;
  9. use Sonata\AdminBundle\Form\FormMapper;
  10. use Sonata\AdminBundle\Route\RouteCollectionInterface;
  11. use Symfony\Component\Form\Extension\Core\Type\CountryType;
  12. final class VatAdmin extends AbstractAdmin
  13. {
  14.     public function __construct(?string $code null, ?string $class null, ?string $baseControllerName null,
  15.         private ModuloMaestrosTabMenuAdmin $moduloMaestrosTabMenuAdmin
  16.     )
  17.     {
  18.         parent::__construct($code$class$baseControllerName);
  19.     }
  20.     protected function configureRoutes(RouteCollectionInterface $collection): void
  21.     {
  22.         $collection->add('activate');
  23.         $collection->add('deactivate');
  24.         parent::configureRoutes($collection);
  25.     }
  26.     protected function configureTabMenu(ItemInterface $menustring $action, ?AdminInterface $childAdmin null): void
  27.     {
  28.         $this->moduloMaestrosTabMenuAdmin->configureTabMenu($this$menu$action$childAdmin);
  29.         parent::configureTabMenu($menu$action$childAdmin); // TODO: Change the autogenerated stub
  30.     }
  31.     protected function configureListFields(ListMapper $list): void
  32.     {
  33.         $this->setTranslationDomain('vatAdmin');
  34.         $list
  35.             ->add('pais'null, [
  36.                 'label' => 'list.vat.label.pais',
  37.                 'identifier' => true,
  38.                 'route' => [
  39.                     'name' => 'edit'
  40.                 ]
  41.             ])
  42.             ->add('vat'null, [
  43.                 'label' => 'list.vat.label.vat',
  44.                 'template' => 'admin/CRUD/list_field_percent.html.twig'
  45.             ])
  46.             ->add('active'null, [
  47.                 'label' => 'list.vat.label.active',
  48.             ])
  49. //            ->add(ListMapper::NAME_ACTIONS, null, [
  50. //                'actions' => [
  51. //                    'show' => [],
  52. //                    'edit' => [],
  53. //                    'delete' => [],
  54. //                ],
  55. //            ]);
  56.         ;
  57.     }
  58.     protected function configureFormFields(FormMapper $form): void
  59.     {
  60.         $this->setTranslationDomain('vatAdmin');
  61.         $form
  62.             ->add('pais'CountryType::class, [
  63.                 'label' => false,
  64.                 'placeholder' => 'form.vat.placeholder.pais',
  65.                 'translation_domain' => 'vatAdmin',
  66.             ])
  67.             ->add('vat'null, [
  68.                 'label' => false,
  69.                 'attr' => [
  70.                     'class' => 'numeric percents',
  71.                     'placeholder' => 'form.vat.placeholder.vat',
  72.                 ],
  73.                 'translation_domain' => 'vatAdmin',
  74.             ])
  75.             ->add('active'null, [
  76.                 'label' => 'form.vat.label.active',
  77.                 'translation_domain' => 'vatAdmin',
  78.             ])
  79.         ;
  80.     }
  81. }