src/Controller/Admin/DashboardController.php line 27

Open in your IDE?
  1. <?php
  2. namespace App\Controller\Admin;
  3. use App\Entity\Equipo;
  4. use App\Entity\Evento;
  5. use App\Entity\Grupo;
  6. use App\Entity\Grupomenu;
  7. use App\Entity\GrupomenuMenu;
  8. use App\Entity\Menu;
  9. use App\Entity\Persona;
  10. use App\Entity\Portico;
  11. use App\Entity\Puerta;
  12. use App\Entity\User;
  13. use EasyCorp\Bundle\EasyAdminBundle\Config\Dashboard;
  14. use EasyCorp\Bundle\EasyAdminBundle\Config\MenuItem;
  15. use EasyCorp\Bundle\EasyAdminBundle\Controller\AbstractDashboardController;
  16. use EasyCorp\Bundle\EasyAdminBundle\Router\CrudUrlGenerator;
  17. use Symfony\Component\HttpFoundation\Response;
  18. use Symfony\Component\Routing\Annotation\Route;
  19. class DashboardController extends AbstractDashboardController
  20. {
  21.     /**
  22.      * @Route("/admin", name="admin")
  23.      */
  24.     public function index(): Response
  25.     {
  26.         $routeBuilder $this->get(CrudUrlGenerator::class)->build();
  27.         return $this->redirect($routeBuilder->setController(PersonaCrudController::class)->generateUrl());
  28.         return parent::index();
  29.     }
  30.     public function configureDashboard(): Dashboard
  31.     {
  32.         return Dashboard::new()
  33.             ->setTitle('Administración de pórticos');
  34.     }
  35.     public function configureMenuItems(): iterable
  36.     {
  37.         yield MenuItem::linkToRoute('Reportes','fa fa-chart-bar','persona_consultar');
  38.         yield MenuItem::linktoDashboard('Dashboard''fa fa-home')->setPermission('ROLE_ADMIN');
  39.         // yield MenuItem::linkToCrud('The Label', 'icon class', EntityClass::class);
  40.         yield MenuItem::subMenu('BETA''fa fa-users')->setSubItems([
  41.             MenuItem::linkToRoute('Personas por dia''fa fa-dashboard''personas_pordia'),
  42.             MenuItem::linkToRoute('Personas en planta''fa fa-dashboard''personas_planta')
  43.         ])->setPermission('ROLE_ADMIN');
  44.         yield MenuItem::subMenu('Personas''fa fa-users')->setSubItems([
  45.             MenuItem::linkToCrud('Listado''fa fa-users'Persona::class),
  46.             MenuItem::linkToRoute('Carga masiva''fa fa-upload''carga_personas_masiva'),
  47.             MenuItem::linkToRoute('Descarga personas''fa fa-download''descarga_personas')])->setPermission('ROLE_ADMIN');
  48.         yield MenuItem::linkToCrud('Grupos''fa fa-sitemap'Grupo::class)->setPermission('ROLE_ADMIN');
  49.         yield MenuItem::subMenu('Casino''fa fa-utensils')->setSubItems([
  50.             MenuItem::linkToCrud('Menús''fa fa-list'Menu::class),
  51.             MenuItem::linkToCrud('Grupo menú - Menú''fa fa-list'GrupomenuMenu::class),
  52.             MenuItem::linkToCrud('Grupo menú''fa fa-list'Grupomenu::class)])->setPermission('ROLE_ADMIN');
  53.         yield MenuItem::subMenu('Eventos''fa fa-tasks')->setSubItems([
  54.             MenuItem::linkToCrud('Listado Eventos''fa fa-tasks'Evento::class),
  55.             MenuItem::linkToRoute('Descargar últimos eventos''fa fa-download''descarga_eventos'),
  56.             MenuItem::linkToRoute('Descargar por fecha','','descarga_eventos_por_fecha'),
  57.             MenuItem::linkToRoute('Carga masiva eventos''fa fa-upload''carga_eventos_masiva'),
  58.         ])->setPermission('ROLE_ADMIN');
  59.         yield MenuItem::linkToCrud('Porticos''fa fa-door-open'Portico::class)->setPermission('ROLE_ADMIN');
  60.         yield MenuItem::linkToCrud('Puertas''fa fa-door-open'Puerta::class)->setPermission('ROLE_ADMIN');
  61.         yield MenuItem::linkToCrud('Equipos''fa fa-microchip'Equipo::class)->setPermission('ROLE_ADMIN');
  62.         yield MenuItem::linkToCrud('Usuarios''fa fa-users-cog'User::class)->setPermission('ROLE_ADMIN');
  63.         yield MenuItem::linkToCrud('Ingreso','fa fa-user'Persona::class);
  64.     }
  65. }