您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

156 行
9.1KB

  1. <?php
  2. namespace App\Controller\Dashboard;
  3. use App\Entity\Config\TaxRate;
  4. use App\Entity\Config\Unit;
  5. use App\Entity\Merchant\Merchant;
  6. use App\Entity\Section\Section;
  7. use App\Entity\Site\Page;
  8. use App\Entity\Ticket\Ticket;
  9. use App\Entity\User\GroupUser;
  10. use App\Entity\User\User;
  11. use App\Entity\User\UserMerchant;
  12. use EasyCorp\Bundle\EasyAdminBundle\Config\MenuItem;
  13. use Lc\CaracoleBundle\Controller\Dashboard\DashboardAdminAdminController as CaracDashboardController;
  14. use Symfony\Component\HttpFoundation\Response;
  15. class DashboardAdminController extends CaracDashboardController
  16. {
  17. public function configureMenuItems(): iterable
  18. {
  19. yield MenuItem::linkToDashboard('dashboard', 'far fa-circle');
  20. yield MenuItem::linkToCrud('tickets', 'far fa-copy', Ticket::class);
  21. yield MenuItem::linkToCrud('page', 'far fa-copy', Page::class);
  22. yield MenuItem::subMenu('user', 'far fa-user')->setSubItems(
  23. [
  24. MenuItem::linkToCrud('user_merchant_index', '', UserMerchant::class),
  25. MenuItem::linkToCrud('group_user_index', '', GroupUser::class),
  26. ]
  27. );
  28. yield MenuItem::subMenu('setting', 'far fa-circle')->setSubItems(
  29. [
  30. MenuItem::linkToRoute('setting_merchant', '', 'carac_admin_setting_merchant'),
  31. MenuItem::linkToRoute('setting_section', '', 'carac_admin_setting_section'),
  32. MenuItem::linkToRoute('setting_global', '', 'carac_admin_setting_global'),
  33. ]
  34. );
  35. yield MenuItem::subMenu('admin', 'far fa-circle')->setSubItems(
  36. [
  37. MenuItem::linkToCrud('admin_merchant', '', Merchant::class),
  38. MenuItem::linkToCrud('admin_section', '', Section::class),
  39. MenuItem::linkToCrud('admin_tva', '', TaxRate::class),
  40. MenuItem::linkToCrud('admin_unit', '', Unit::class),
  41. ]
  42. );
  43. yield MenuItem::subMenu('account', 'far fa-user')->setSubItems(
  44. [
  45. MenuItem::linkToRoute('account_profile', '', 'sov_admin_account_profile'),
  46. MenuItem::linkToRoute('account_password', '', 'sov_admin_account_password'),
  47. ]
  48. );
  49. }
  50. public function index(): Response
  51. {
  52. return $this->render('admin/dashboard/dashboard.html.twig');
  53. }
  54. /*public function configureMenuItems(): iterable
  55. {
  56. $submenu1 = [
  57. MenuItem::linkToCrud('Zones', 'fas fa-map-marked-alt', DeliveryAvailabilityZone::class),
  58. MenuItem::linkToCrud('Ambassades', 'fas fa-store-alt', DeliveryAvailabilityZone::class),
  59. ];
  60. $submenu2 = [
  61. MenuItem::linkToCrud('Produits', 'fas fa-carrot', ProductFamily::class),
  62. MenuItem::linkToCrud('Produits (édition avancée)', 'fas fa-carrot', ProductFamily::class),
  63. MenuItem::linkToCrud('Renouvelement des stocks', 'fas fa-layer-group', ProductFamily::class),
  64. MenuItem::linkToCrud('Catégories', 'fas fa-store', ProductCategory::class)->setPermission('ROLE_ADMIN'),
  65. MenuItem::linkToCrud('Producteurs', 'fas fa-tractor', Supplier::class)->setPermission('ROLE_ADMIN'),
  66. MenuItem::linkToCrud('Zones de dépôt', 'fas fa-cubes', DepositoryZone::class)->setPermission('ROLE_ADMIN'),
  67. ];
  68. $submenu3 = [
  69. MenuItem::linkToCrud('Paniers', 'fas fa-shopping-basket', OrderShop::class),
  70. MenuItem::linkToCrud('Commandes ', 'fas fa-shopping-cart', OrderShop::class),
  71. MenuItem::linkToCrud('Relivraisons', 'fas fa-undo', OrderProduct::class),
  72. ];
  73. $submenu4 = [
  74. MenuItem::linkToCrud('Commandes du jour', 'fas fa-calendar-day', OrderShop::class),
  75. MenuItem::linkToCrud('Toutes les commandes', 'fas fa-utensils', OrderShop::class),
  76. ];
  77. $submenu5 = [
  78. MenuItem::linkToCrud('Utilisateurs', 'fas fa-user', User::class),
  79. MenuItem::linkToCrud('Groupes d\'utilisateurs', 'fas fa-users', GroupUser::class),
  80. MenuItem::linkToCrud('Comptes prépayés', 'fas fa-cash-register', UserMerchant::class),
  81. MenuItem::linkToCrud('Parrainages', 'fas fa-user-plus', Sponsor::class),
  82. ];
  83. $submenu6 = [
  84. MenuItem::linkToCrud('Réductions sur catalogues', 'fas fa-book', ReductionCatalog::class),
  85. MenuItem::linkToCrud('Réductions paniers', 'fas fa-shopping-basket', ReductionCart::class),
  86. MenuItem::linkToCrud('Avoirs', 'fas fa-backspace', ReductionCredit::class),
  87. MenuItem::linkToCrud('Bons cadeaux', 'fas fa-gift', ReductionCredit::class),
  88. ];
  89. $submenu7 = [
  90. MenuItem::linkToCrud('Zones', 'fas fa-map-marked-alt', DeliveryZone::class),
  91. MenuItem::linkToCrud('Ambassades', 'fas fa-map-marker-alt', PointSale::class),
  92. MenuItem::linkToCrud('Créneaux horaires', 'fas fa-clock', DeliverySlot::class),
  93. MenuItem::linkToCrud('Tarifs', 'fas fa-euro-sign', DeliveryPrice::class),
  94. MenuItem::linkToCrud('Dispo zones (par défaut)', 'fas fa-calendar-check', DeliveryAvailabilityZone::class),
  95. MenuItem::linkToCrud('Dispo ambassades (par défaut)', 'fas fa-calendar-check', DeliveryAvailabilityZone::class),
  96. MenuItem::linktoRoute('Livraison à vélo', 'fas fa-bicycle', 'admin_bike_delivery'),
  97. ];
  98. $submenu8 = [
  99. MenuItem::linkToCrud('Bons de commandes', 'fas fa-tractor', Supplier::class),
  100. MenuItem::linktoRoute('Exports', 'fas fa-download', 'admin_exports'),
  101. MenuItem::linktoRoute('Pesées', 'fas fa-truck-loading', 'admin_export_weighing'),
  102. MenuItem::linkToCrud('Comptabilité', 'fas fa-euro-sign', OrderShop::class),
  103. ];
  104. $submenu9 = [
  105. MenuItem::linkToCrud('Notifications activées', 'fas fa-check', NotificationUser::class),
  106. MenuItem::linkToCrud('Notifications envoyées', 'fas fa-archive', NotificationLog::class),
  107. ];
  108. yield MenuItem::linktoRoute('Tableau de bord', 'fas fa-tachometer-alt', 'admin_dashboard', ['count_menu_item' => 'productAvailabilitiesNegative', 'alert' => 1]);
  109. yield MenuItem::linkToCrud('Tickets', 'fas fa-envelope', Ticket::class)->setPermission('ROLE_ADMIN');
  110. yield MenuItem::subMenu('Disponibilités', 'fas fa-calendar-check')->setSubItems($submenu1)->setPermission('ROLE_ADMIN');
  111. yield MenuItem::subMenu('Catalogues', 'fas fa-book')->setSubItems($submenu2);
  112. yield MenuItem::subMenu('Commandes marché', 'fas fa-shopping-cart')->setSubItems($submenu3)->setPermission('ROLE_ADMIN');
  113. yield MenuItem::subMenu('Commandes du midi', 'fas fa-utensils')->setSubItems($submenu4);
  114. yield MenuItem::subMenu('Utilisateurs', 'fas fa-users')->setSubItems($submenu5)->setPermission('ROLE_ADMIN');
  115. yield MenuItem::subMenu('Reductions', 'fas fa-tags')->setSubItems($submenu6)->setPermission('ROLE_ADMIN');
  116. yield MenuItem::subMenu('Livraisons', 'fas fa-truck')->setSubItems($submenu7)->setPermission('ROLE_ADMIN');
  117. yield MenuItem::subMenu('Exports', 'fas fa-file-export')->setSubItems($submenu8)->setPermission('ROLE_ADMIN');
  118. yield MenuItem::linkToCrud('Pense bêtes', 'fas fa-thumbtack', Reminder::class)->setPermission('ROLE_ADMIN');
  119. yield MenuItem::linkToCrud('Actualités', 'fas fa-bullhorn', News::class)->setPermission('ROLE_ADMIN');
  120. yield MenuItem::subMenu('Notifications', 'fas fa-bell')->setSubItems($submenu9)->setPermission('ROLE_ADMIN');
  121. yield MenuItem::linkToCrud('Pages', 'fas fa-file', Page::class)->setPermission('ROLE_ADMIN');
  122. yield MenuItem::linkToCrud('Paramètres', 'fas fa-cogs', Hub::class)->setPermission('ROLE_SUPER_ADMIN');
  123. yield MenuItem::linktoRoute('Statistiques', 'fas fa-chart-line', 'admin_statistic')->setPermission('ROLE_SUPER_ADMIN');
  124. yield MenuItem::linktoRoute('Espace développement', 'fas fa-drafting-compass', 'admin_develop')->setPermission('ROLE_SUPER_ADMIN');
  125. yield MenuItem::section('Administration', 'fas fa-folder-open')->setPermission('ROLE_SUPER_ADMIN');
  126. yield MenuItem::linkToCrud('Hubs', 'fas fa-store', Hub::class)->setPermission('ROLE_SUPER_ADMIN');
  127. yield MenuItem::linkToCrud('Espaces', 'fas fa-th-large', Section::class)->setPermission('ROLE_SUPER_ADMIN');
  128. yield MenuItem::linkToCrud('Newsletters', 'fas fa-paper-plane', Newsletter::class)->setPermission('ROLE_SUPER_ADMIN');
  129. yield MenuItem::linkToCrud('Notifications', 'fas fa-bell', Notification::class)->setPermission('ROLE_SUPER_ADMIN');
  130. yield MenuItem::linkToCrud('Règles de taxes', 'fas fa-euro-sign', TaxRate::class)->setPermission('ROLE_SUPER_ADMIN');
  131. yield MenuItem::linkToCrud('Unités', 'fas fa-balance-scale', Unit::class)->setPermission('ROLE_SUPER_ADMIN');
  132. yield MenuItem::linkToCrud('Statuts de commande', 'fas fa-shopping-basket', OrderStatus::class)->setPermission('ROLE_SUPER_ADMIN');
  133. */
  134. }