chore(menus): remove deprecated combos and categories admin menus

This commit is contained in:
2026-09-30 15:31:56 -03:00
parent e64393812c
commit 86ca57a3ad
4 changed files with 31 additions and 14 deletions

View File

@@ -34,3 +34,8 @@ Bajo `/v1/adminapp/tenant/featured-groups`, con `auth:sanctum` y `adminapp.tenan
## Dependencias y reglas ## Dependencias y reglas
Usa `Attachable` para imágenes/archivos, `Tenant` para aislamiento y `Ticket`/`Event` para vigencia y fechas. `Cart` y `Purchase` consumen sus precios, variantes e inventario. Los cambios de stock deben pasar por `CatalogInventoryService` para conservar reservas y disponibilidad. Usa `Attachable` para imágenes/archivos, `Tenant` para aislamiento y `Ticket`/`Event` para vigencia y fechas. `Cart` y `Purchase` consumen sus precios, variantes e inventario. Los cambios de stock deben pasar por `CatalogInventoryService` para conservar reservas y disponibilidad.
## Menús deprecados
Los menús `adminapp.combos` y `adminapp.categories` están retirados; las
categorías del catálogo y sus datos comerciales no se eliminan.

View File

@@ -0,0 +1,22 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Support\Facades\DB;
return new class extends Migration
{
public function up(): void
{
DB::transaction(function (): void {
$codes = ['adminapp.combos', 'adminapp.categories'];
DB::table('roles_menues')->whereIn('menu_codigo', $codes)->delete();
DB::table('tenants_menues')->whereIn('menu_code', $codes)->delete();
DB::table('menues')->whereIn('code', $codes)->delete();
});
}
public function down(): void
{
// Deprecated menus must not be restored by rollback.
}
};

View File

@@ -70,18 +70,6 @@ class MenuSeeder extends Seeder
'parent_menu_code' => 'main.adminapp', 'parent_menu_code' => 'main.adminapp',
'route' => '/admin/catalog', 'route' => '/admin/catalog',
], ],
[
'code' => 'adminapp.combos',
'label' => 'Combos',
'parent_menu_code' => 'main.adminapp',
'route' => '/admin/combos',
],
[
'code' => 'adminapp.categories',
'label' => 'Categorías',
'parent_menu_code' => 'main.adminapp',
'route' => '/admin/categories',
],
[ [
'code' => 'adminapp.ventas', 'code' => 'adminapp.ventas',
'label' => 'Ventas', 'label' => 'Ventas',
@@ -242,6 +230,8 @@ class MenuSeeder extends Seeder
->whereIn('code', [ ->whereIn('code', [
'admin.event', 'admin.event',
'admin.catalog', 'admin.catalog',
'adminapp.combos',
'adminapp.categories',
'admin.combos', 'admin.combos',
'admin.categories', 'admin.categories',
'admin.ventas', 'admin.ventas',

View File

@@ -27,8 +27,6 @@ class MenuSeederTest extends TestCase
$expectedMenus = [ $expectedMenus = [
'adminapp.inicio' => ['Inicio', '/admin/inicio'], 'adminapp.inicio' => ['Inicio', '/admin/inicio'],
'adminapp.catalog' => ['Catálogo', '/admin/catalog'], 'adminapp.catalog' => ['Catálogo', '/admin/catalog'],
'adminapp.categories' => ['Categorías', '/admin/categories'],
'adminapp.combos' => ['Combos', '/admin/combos'],
'adminapp.event' => ['Eventos', '/admin/event'], 'adminapp.event' => ['Eventos', '/admin/event'],
'adminapp.staff' => ['Staff', '/admin/staff'], 'adminapp.staff' => ['Staff', '/admin/staff'],
'adminapp.ventas' => ['Ventas', '/admin/ventas'], 'adminapp.ventas' => ['Ventas', '/admin/ventas'],
@@ -100,6 +98,8 @@ class MenuSeederTest extends TestCase
$this->assertFalse( $this->assertFalse(
Menu::query()->whereIn('code', [ Menu::query()->whereIn('code', [
'adminapp.categories',
'adminapp.combos',
'admin.event', 'admin.event',
'admin.catalog', 'admin.catalog',
'admin.combos', 'admin.combos',