feat: update MenuSeeder to dynamically fetch menu codes and adjust tenant associations
This commit is contained in:
@@ -29,6 +29,7 @@ class DatabaseSeeder extends Seeder
|
|||||||
BrandSeeder::class,
|
BrandSeeder::class,
|
||||||
ProductCatalogFromImagesSeeder::class,
|
ProductCatalogFromImagesSeeder::class,
|
||||||
TelepagosIntegrationSeeder::class,
|
TelepagosIntegrationSeeder::class,
|
||||||
|
MenuSeeder::class,
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -28,17 +28,21 @@ class MenuSeeder extends Seeder
|
|||||||
|
|
||||||
$tenants = Tenant::all();
|
$tenants = Tenant::all();
|
||||||
|
|
||||||
|
$allMenus = Menu::pluck('code')->toArray();
|
||||||
|
|
||||||
foreach ($tenants as $tenant) {
|
foreach ($tenants as $tenant) {
|
||||||
$menuCodes = ['index', 'checkout', 'profile', 'purchases'];
|
$menuCodes = $allMenus;
|
||||||
|
|
||||||
if ($tenant->codigo === 'sonder') {
|
if ($tenant->codigo === 'sonder') {
|
||||||
$menuCodes[] = 'product.detail';
|
// Sonder NO tiene tickets
|
||||||
|
$menuCodes = array_diff($menuCodes, ['tickets']);
|
||||||
} else {
|
} else {
|
||||||
$menuCodes[] = 'tickets';
|
// Los demás NO tienen product.detail
|
||||||
|
$menuCodes = array_diff($menuCodes, ['product.detail']);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Usar sync para asociar los menues al tenant
|
// Usar sync para asociar los menues al tenant
|
||||||
$tenant->menues()->sync(Menu::whereIn('code', $menuCodes)->pluck('code'));
|
$tenant->menues()->sync($menuCodes);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user