feat(menus): separate shopit and onticket admin menus
This commit is contained in:
@@ -53,89 +53,131 @@ class MenuSeeder extends Seeder
|
||||
'route' => '/scanner/detail/:id',
|
||||
],
|
||||
[
|
||||
'code' => 'adminapp.event',
|
||||
'code' => 'onticket.adminapp.event',
|
||||
'label' => 'Eventos',
|
||||
'parent_menu_code' => 'main.adminapp',
|
||||
'route' => '/admin/event',
|
||||
],
|
||||
[
|
||||
'code' => 'adminapp.inicio',
|
||||
'code' => 'onticket.adminapp.inicio',
|
||||
'label' => 'Inicio',
|
||||
'parent_menu_code' => 'main.adminapp',
|
||||
'route' => '/admin/inicio',
|
||||
],
|
||||
[
|
||||
'code' => 'adminapp.catalog',
|
||||
'code' => 'onticket.adminapp.catalog',
|
||||
'label' => 'Catálogo',
|
||||
'parent_menu_code' => 'main.adminapp',
|
||||
'route' => '/admin/catalog',
|
||||
],
|
||||
[
|
||||
'code' => 'adminapp.combos',
|
||||
'code' => 'onticket.adminapp.combos',
|
||||
'label' => 'Combos',
|
||||
'parent_menu_code' => 'main.adminapp',
|
||||
'route' => '/admin/combos',
|
||||
],
|
||||
[
|
||||
'code' => 'adminapp.categories',
|
||||
'code' => 'onticket.adminapp.categories',
|
||||
'label' => 'Categorías',
|
||||
'parent_menu_code' => 'main.adminapp',
|
||||
'route' => '/admin/categories',
|
||||
],
|
||||
[
|
||||
'code' => 'adminapp.ventas',
|
||||
'code' => 'onticket.adminapp.ventas',
|
||||
'label' => 'Ventas',
|
||||
'parent_menu_code' => 'main.adminapp',
|
||||
'route' => '/admin/ventas',
|
||||
],
|
||||
[
|
||||
'code' => 'adminapp.staff',
|
||||
'code' => 'onticket.adminapp.staff',
|
||||
'label' => 'Usuarios',
|
||||
'parent_menu_code' => 'main.adminapp',
|
||||
'route' => '/admin/staff',
|
||||
],
|
||||
[
|
||||
'code' => 'adminapp.tickets',
|
||||
'code' => 'onticket.adminapp.tickets',
|
||||
'label' => 'Tickets',
|
||||
'parent_menu_code' => 'main.adminapp',
|
||||
'route' => '/admin/tickets',
|
||||
],
|
||||
[
|
||||
'code' => 'adminapp.fiesta-futbol-infantil.entradas',
|
||||
'code' => 'onticket.adminapp.fiesta-futbol-infantil.entradas',
|
||||
'label' => 'Entradas',
|
||||
'parent_menu_code' => 'main.adminapp',
|
||||
'route' => '/admin/entradas',
|
||||
],
|
||||
[
|
||||
'code' => 'adminapp.fiesta-futbol-infantil.alojamientos',
|
||||
'code' => 'onticket.adminapp.fiesta-futbol-infantil.alojamientos',
|
||||
'label' => 'Alojamientos',
|
||||
'parent_menu_code' => 'main.adminapp',
|
||||
'route' => '/admin/alojamientos',
|
||||
],
|
||||
[
|
||||
'code' => 'adminapp.fiesta-futbol-infantil.merchandising',
|
||||
'code' => 'onticket.adminapp.fiesta-futbol-infantil.merchandising',
|
||||
'label' => 'Merchandising',
|
||||
'parent_menu_code' => 'main.adminapp',
|
||||
'route' => '/admin/merchandising',
|
||||
],
|
||||
[
|
||||
'code' => 'adminapp.fiesta-futbol-infantil.comida',
|
||||
'code' => 'onticket.adminapp.fiesta-futbol-infantil.comida',
|
||||
'label' => 'Comida',
|
||||
'parent_menu_code' => 'main.adminapp',
|
||||
'route' => '/admin/comidas',
|
||||
],
|
||||
[
|
||||
'code' => 'adminapp.desfile.entradas',
|
||||
'code' => 'onticket.adminapp.desfile.entradas',
|
||||
'label' => 'Entradas',
|
||||
'parent_menu_code' => 'main.adminapp',
|
||||
'route' => '/admin/desfile/entradas',
|
||||
],
|
||||
[
|
||||
'code' => 'adminapp.desfile.reservas',
|
||||
'code' => 'onticket.adminapp.desfile.reservas',
|
||||
'label' => 'Reserva de Tickets',
|
||||
'parent_menu_code' => 'main.adminapp',
|
||||
'route' => '/admin/desfile/reservas',
|
||||
],
|
||||
[
|
||||
'code' => 'shopit.adminapp.marca',
|
||||
'label' => 'Marca',
|
||||
'parent_menu_code' => 'main.adminapp',
|
||||
'route' => '/admin/marca',
|
||||
],
|
||||
[
|
||||
'code' => 'shopit.adminapp.contacto',
|
||||
'label' => 'Contacto',
|
||||
'parent_menu_code' => 'main.adminapp',
|
||||
'route' => '/admin/contacto',
|
||||
],
|
||||
[
|
||||
'code' => 'shopit.adminapp.productos',
|
||||
'label' => 'Productos',
|
||||
'parent_menu_code' => 'main.adminapp',
|
||||
'route' => '/admin/productos',
|
||||
],
|
||||
[
|
||||
'code' => 'shopit.adminapp.categorias',
|
||||
'label' => 'Categorías',
|
||||
'parent_menu_code' => 'main.adminapp',
|
||||
'route' => '/admin/categorias',
|
||||
],
|
||||
[
|
||||
'code' => 'shopit.adminapp.transacciones',
|
||||
'label' => 'Transacciones',
|
||||
'parent_menu_code' => 'main.adminapp',
|
||||
'route' => '/admin/transacciones',
|
||||
],
|
||||
[
|
||||
'code' => 'shopit.adminapp.reportes',
|
||||
'label' => 'Reportes',
|
||||
'parent_menu_code' => 'main.adminapp',
|
||||
'route' => '/admin/reportes',
|
||||
],
|
||||
[
|
||||
'code' => 'shopit.adminapp.usuarios_roles',
|
||||
'label' => 'Usuarios y roles',
|
||||
'parent_menu_code' => 'main.adminapp',
|
||||
'route' => '/admin/usuarios-roles',
|
||||
],
|
||||
[
|
||||
'code' => 'account',
|
||||
'label' => 'Mi cuenta',
|
||||
@@ -255,6 +297,10 @@ class MenuSeeder extends Seeder
|
||||
])
|
||||
->delete();
|
||||
|
||||
Menu::query()
|
||||
->where('code', 'like', 'adminapp.%')
|
||||
->delete();
|
||||
|
||||
$allRoleMenuCodes = Menu::query()->pluck('code');
|
||||
$adminAppMenuCodes = Menu::query()
|
||||
->where('code', 'main.adminapp')
|
||||
@@ -299,24 +345,32 @@ class MenuSeeder extends Seeder
|
||||
'mutual_smep',
|
||||
];
|
||||
$ticketAdminMenuCodes = [
|
||||
'adminapp.tickets',
|
||||
'onticket.adminapp.tickets',
|
||||
];
|
||||
$fiestaCategoryMenuCodes = [
|
||||
'adminapp.fiesta-futbol-infantil.entradas',
|
||||
'adminapp.fiesta-futbol-infantil.alojamientos',
|
||||
'adminapp.fiesta-futbol-infantil.merchandising',
|
||||
'adminapp.fiesta-futbol-infantil.comida',
|
||||
'onticket.adminapp.fiesta-futbol-infantil.entradas',
|
||||
'onticket.adminapp.fiesta-futbol-infantil.alojamientos',
|
||||
'onticket.adminapp.fiesta-futbol-infantil.merchandising',
|
||||
'onticket.adminapp.fiesta-futbol-infantil.comida',
|
||||
];
|
||||
$fiestaExcludedAdminMenuCodes = [
|
||||
'adminapp.inicio',
|
||||
'adminapp.catalog',
|
||||
'adminapp.categories',
|
||||
'adminapp.combos',
|
||||
'onticket.adminapp.inicio',
|
||||
'onticket.adminapp.catalog',
|
||||
'onticket.adminapp.categories',
|
||||
'onticket.adminapp.combos',
|
||||
];
|
||||
$desfileMenuCodes = [
|
||||
'adminapp.desfile.entradas',
|
||||
'adminapp.desfile.reservas',
|
||||
'onticket.adminapp.desfile.entradas',
|
||||
'onticket.adminapp.desfile.reservas',
|
||||
];
|
||||
$shopItAdminMenuCodes = Menu::query()
|
||||
->where('code', 'like', 'shopit.adminapp.%')
|
||||
->pluck('code')
|
||||
->all();
|
||||
$onTicketAdminMenuCodes = Menu::query()
|
||||
->where('code', 'like', 'onticket.adminapp.%')
|
||||
->pluck('code')
|
||||
->all();
|
||||
$onTicketMenuCodes = [
|
||||
'event.index',
|
||||
'event.category',
|
||||
@@ -406,6 +460,13 @@ class MenuSeeder extends Seeder
|
||||
foreach ($tenants as $tenant) {
|
||||
$menuCodes = $allMenus;
|
||||
|
||||
$menuCodes = array_diff(
|
||||
$menuCodes,
|
||||
$tenant->admin_website_type_code === 'shopit'
|
||||
? $onTicketAdminMenuCodes
|
||||
: $shopItAdminMenuCodes,
|
||||
);
|
||||
|
||||
if ($tenant->codigo === 'sonder') {
|
||||
// Sonder NO tiene tickets
|
||||
$menuCodes = array_diff($menuCodes, ['account.tickets']);
|
||||
|
||||
Reference in New Issue
Block a user