From 4ff9ca94b3daa21f702e5ee501fd7a76dde53735 Mon Sep 17 00:00:00 2001 From: "gpt-engineer-app[bot]" <159125892+gpt-engineer-app[bot]@users.noreply.github.com> Date: Fri, 10 Oct 2025 23:36:05 +0000 Subject: [PATCH] Refactor dashboard sidebar --- src/App.tsx | 120 ++++++ src/components/DashboardLayout.tsx | 127 +++++-- src/pages/dashboard/HotelManagement.tsx | 359 ++++++------------ src/pages/dashboard/RestaurantPOS.tsx | 284 ++++++-------- src/pages/dashboard/hotel/CheckIn.tsx | 12 + src/pages/dashboard/hotel/KeylessAccess.tsx | 12 + src/pages/dashboard/hotel/RoomServicePage.tsx | 12 + src/pages/dashboard/hotel/Rooms.tsx | 11 + src/pages/dashboard/hotel/Staff.tsx | 12 + src/pages/dashboard/restaurant/Bills.tsx | 12 + src/pages/dashboard/restaurant/Inventory.tsx | 12 + src/pages/dashboard/restaurant/Kitchen.tsx | 12 + src/pages/dashboard/restaurant/Menu.tsx | 12 + src/pages/dashboard/restaurant/Orders.tsx | 12 + src/pages/dashboard/restaurant/POSPage.tsx | 12 + src/pages/dashboard/restaurant/Staff.tsx | 12 + src/pages/dashboard/restaurant/Tables.tsx | 12 + 17 files changed, 619 insertions(+), 426 deletions(-) create mode 100644 src/pages/dashboard/hotel/CheckIn.tsx create mode 100644 src/pages/dashboard/hotel/KeylessAccess.tsx create mode 100644 src/pages/dashboard/hotel/RoomServicePage.tsx create mode 100644 src/pages/dashboard/hotel/Rooms.tsx create mode 100644 src/pages/dashboard/hotel/Staff.tsx create mode 100644 src/pages/dashboard/restaurant/Bills.tsx create mode 100644 src/pages/dashboard/restaurant/Inventory.tsx create mode 100644 src/pages/dashboard/restaurant/Kitchen.tsx create mode 100644 src/pages/dashboard/restaurant/Menu.tsx create mode 100644 src/pages/dashboard/restaurant/Orders.tsx create mode 100644 src/pages/dashboard/restaurant/POSPage.tsx create mode 100644 src/pages/dashboard/restaurant/Staff.tsx create mode 100644 src/pages/dashboard/restaurant/Tables.tsx diff --git a/src/App.tsx b/src/App.tsx index e2ec29e..a720938 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -35,6 +35,21 @@ import InvoiceDetail from "./pages/dashboard/InvoiceDetail"; import HotelManagement from "./pages/dashboard/HotelManagement"; import RestaurantPOS from "./pages/dashboard/RestaurantPOS"; import Personalization from "./pages/dashboard/Personalization"; +// Hotel pages +import HotelRooms from "./pages/dashboard/hotel/Rooms"; +import HotelCheckIn from "./pages/dashboard/hotel/CheckIn"; +import HotelRoomService from "./pages/dashboard/hotel/RoomServicePage"; +import HotelKeyless from "./pages/dashboard/hotel/KeylessAccess"; +import HotelStaff from "./pages/dashboard/hotel/Staff"; +// Restaurant pages +import RestaurantPOS_Terminal from "./pages/dashboard/restaurant/POSPage"; +import RestaurantOrders from "./pages/dashboard/restaurant/Orders"; +import RestaurantKitchen from "./pages/dashboard/restaurant/Kitchen"; +import RestaurantBills from "./pages/dashboard/restaurant/Bills"; +import RestaurantTables from "./pages/dashboard/restaurant/Tables"; +import RestaurantMenu from "./pages/dashboard/restaurant/Menu"; +import RestaurantInventory from "./pages/dashboard/restaurant/Inventory"; +import RestaurantStaff from "./pages/dashboard/restaurant/Staff"; import NotFound from "./pages/NotFound"; const queryClient = new QueryClient(); @@ -249,6 +264,48 @@ const AppRouter = () => ( } /> + + + + + + } /> + + + + + + } /> + + + + + + } /> + + + + + + } /> + + + + + + } /> + + + + + + } /> @@ -256,6 +313,69 @@ const AppRouter = () => ( } /> + + + + + + } /> + + + + + + } /> + + + + + + } /> + + + + + + } /> + + + + + + } /> + + + + + + } /> + + + + + + } /> + + + + + + } /> + + + + + + } /> diff --git a/src/components/DashboardLayout.tsx b/src/components/DashboardLayout.tsx index d9d0086..8b14f96 100644 --- a/src/components/DashboardLayout.tsx +++ b/src/components/DashboardLayout.tsx @@ -39,7 +39,14 @@ import { ChevronRight, Hotel, UtensilsCrossed, - Brain + Brain, + DoorOpen, + BellRing, + Key, + Receipt, + ChefHat, + Grid3x3, + Package } from 'lucide-react'; const DashboardLayout = ({ children }: { children: React.ReactNode }) => { @@ -60,10 +67,35 @@ const DashboardLayout = ({ children }: { children: React.ReactNode }) => { const menuItems = [ { icon: Home, label: 'Dashboard', path: '/dashboard' }, - { icon: Settings, label: 'Admin Panel', path: '/dashboard/admin' }, - { icon: Plus, label: 'Channel Manager', path: '/dashboard/channel-manager' }, - { icon: Hotel, label: 'Hotel Management', path: '/dashboard/hotel-management' }, - { icon: UtensilsCrossed, label: 'Restaurant POS', path: '/dashboard/restaurant-pos' }, + { icon: Settings, label: 'Admin Panel', path: '/dashboard/admin', hasSubmenu: true }, + { icon: Plus, label: 'Channel Manager', path: '/dashboard/channel-manager', hasSubmenu: true }, + { + icon: Hotel, + label: 'Hotel Management', + path: '/dashboard/hotel', + subItems: [ + { icon: Home, label: 'Habitaciones', path: '/dashboard/hotel/rooms' }, + { icon: DoorOpen, label: 'Check-in', path: '/dashboard/hotel/checkin' }, + { icon: BellRing, label: 'Room Service', path: '/dashboard/hotel/room-service' }, + { icon: Key, label: 'Acceso', path: '/dashboard/hotel/keyless' }, + { icon: Users, label: 'Personal', path: '/dashboard/hotel/staff' } + ] + }, + { + icon: UtensilsCrossed, + label: 'Restaurant POS', + path: '/dashboard/restaurant', + subItems: [ + { icon: CreditCard, label: 'POS Terminal', path: '/dashboard/restaurant/pos' }, + { icon: Receipt, label: 'Pedidos', path: '/dashboard/restaurant/orders' }, + { icon: ChefHat, label: 'Cocina', path: '/dashboard/restaurant/kitchen' }, + { icon: Receipt, label: 'Cuentas', path: '/dashboard/restaurant/bills' }, + { icon: Grid3x3, label: 'Mesas', path: '/dashboard/restaurant/tables' }, + { icon: UtensilsCrossed, label: 'Menú', path: '/dashboard/restaurant/menu' }, + { icon: Package, label: 'Inventario', path: '/dashboard/restaurant/inventory' }, + { icon: Users, label: 'Personal', path: '/dashboard/restaurant/staff' } + ] + }, { icon: Brain, label: 'Personalization', path: '/dashboard/personalization' }, { icon: Wallet, label: 'Wallet', path: '/dashboard/wallet' }, { icon: MessageSquare, label: 'Message', path: '/dashboard/messages', badge: '2' }, @@ -168,37 +200,74 @@ const DashboardLayout = ({ children }: { children: React.ReactNode }) => {
{menuItems.map((item) => { const Icon = item.icon; - const isActive = location.pathname === item.path; + const isActive = location.pathname === item.path || location.pathname.startsWith(item.path + '/'); const isAdminPanel = item.path === '/dashboard/admin'; const isChannelManager = item.path === '/dashboard/channel-manager'; + const hasDirectSubItems = item.subItems && item.subItems.length > 0; + const isExpanded = expandedItems[item.path] || (hasDirectSubItems && item.subItems.some(sub => location.pathname === sub.path)); return (
- - - {!sidebarCollapsed && ( -
- {item.label} - {item.badge && ( - - {item.badge} - +
+ + + {!sidebarCollapsed && ( +
+ {item.label} + {item.badge && ( + + {item.badge} + + )} +
+ )} + + {!sidebarCollapsed && hasDirectSubItems && ( +
+ )} - +
+ + {/* Direct sub-items (Hotel & Restaurant) */} + {!sidebarCollapsed && hasDirectSubItems && isExpanded && ( +
+ {item.subItems.map((sub) => { + const SubIcon = sub.icon; + const activeSubPath = location.pathname === sub.path; + + return ( + + + {sub.label} + + ); + })} +
+ )} {/* Channel Manager submenus */} {!sidebarCollapsed && isChannelManager && location.pathname.startsWith('/dashboard/channel-manager') && ( diff --git a/src/pages/dashboard/HotelManagement.tsx b/src/pages/dashboard/HotelManagement.tsx index 7f7405c..d70d6c9 100644 --- a/src/pages/dashboard/HotelManagement.tsx +++ b/src/pages/dashboard/HotelManagement.tsx @@ -1,8 +1,6 @@ -import React, { useState } from 'react'; -import { Tabs, TabsContent, TabsList, TabsTrigger } from '@/components/ui/tabs'; -import { Card, CardContent, CardHeader, CardTitle } from '@/components/ui/card'; +import { Link } from 'react-router-dom'; +import { Card, CardContent } from '@/components/ui/card'; import { Badge } from '@/components/ui/badge'; -import { Button } from '@/components/ui/button'; import { Hotel, DoorOpen, @@ -10,24 +8,12 @@ import { QrCode, Users, Bed, - Calendar, - Clock, - CheckCircle, - AlertCircle, Sparkles, - UtensilsCrossed, + ArrowRight, Key } from 'lucide-react'; -import RoomManagement from '@/components/hotel/RoomManagement'; -import CheckInSystem from '@/components/hotel/CheckInSystem'; -import RoomService from '@/components/hotel/RoomService'; -import KeylessEntry from '@/components/hotel/KeylessEntry'; -import StaffManagement from '@/components/hotel/StaffManagement'; const HotelManagement = () => { - const [activeTab, setActiveTab] = useState('overview'); - - // Stats de ejemplo const stats = { totalRooms: 120, occupied: 85, @@ -41,8 +27,46 @@ const HotelManagement = () => { const occupancyRate = ((stats.occupied / stats.totalRooms) * 100).toFixed(1); + const sections = [ + { + title: 'Gestión de Habitaciones', + description: 'Administra el estado y disponibilidad de habitaciones', + icon: Bed, + path: '/dashboard/hotel/rooms', + color: 'blue' + }, + { + title: 'Check-in Digital', + description: 'Sistema de check-in automático sin contacto', + icon: DoorOpen, + path: '/dashboard/hotel/checkin', + color: 'green' + }, + { + title: 'Room Service', + description: 'Gestión de pedidos de servicio a habitación', + icon: BellRing, + path: '/dashboard/hotel/room-service', + color: 'purple' + }, + { + title: 'Acceso sin Llave', + description: 'Códigos QR y PINs para acceso a habitaciones', + icon: Key, + path: '/dashboard/hotel/keyless', + color: 'orange' + }, + { + title: 'Gestión de Personal', + description: 'Administra el equipo del hotel por departamentos', + icon: Users, + path: '/dashboard/hotel/staff', + color: 'indigo' + } + ]; + return ( -
+
{/* Header */}
@@ -50,237 +74,100 @@ const HotelManagement = () => {
-

Hotel Management

-

Sistema integral de gestión hotelera

+

Hotel Management

+

Sistema integral de gestión hotelera

{/* Overview Stats */} - {activeTab === 'overview' && ( -
- - -
-
-

Ocupación

-

{occupancyRate}%

-

{stats.occupied}/{stats.totalRooms} habitaciones

-
-
- -
+
+ + +
+
+

Ocupación

+

{occupancyRate}%

+

{stats.occupied}/{stats.totalRooms} habitaciones

- - +
+ +
+
+
+
- - -
-
-

Check-ins Hoy

-

{stats.checkInsToday}

-

{stats.checkOutsToday} check-outs

-
-
- -
+ + +
+
+

Check-ins Hoy

+

{stats.checkInsToday}

+

{stats.checkOutsToday} check-outs

- - +
+ +
+
+
+
- - -
-
-

Room Service

-

{stats.roomServiceOrders}

-

Pedidos activos

-
-
- -
+ + +
+
+

Room Service

+

{stats.roomServiceOrders}

+

Pedidos activos

- - +
+ +
+
+
+
- - -
-
-

Ingresos Hoy

-

${stats.revenue.toLocaleString()}

-

+12% vs ayer

-
-
- -
+ + +
+
+

Ingresos Hoy

+

${stats.revenue.toLocaleString()}

+

+12% vs ayer

- - +
+ +
+
+
+
+
+ + {/* Sections Grid */} +
+

Módulos del Sistema

+
+ {sections.map((section) => { + const Icon = section.icon; + return ( + + + +
+
+ +
+ +
+

{section.title}

+

{section.description}

+
+
+ + ); + })}
- )} - - {/* Main Content Tabs */} - - - - - Resumen - - - - Habitaciones - - - - Check-in - - - - Room Service - - - - Acceso - - - - Personal - - - - -
- {/* Habitaciones por Estado */} - - - - - Estado de Habitaciones - - - -
-
-
-
- Disponibles -
- {stats.available} -
-
-
-
- Ocupadas -
- {stats.occupied} -
-
-
-
- Mantenimiento -
- {stats.maintenance} -
-
-
-
- - {/* Check-ins Pendientes */} - - - - - Check-ins de Hoy - - - -
- {[1, 2, 3].map((i) => ( -
-
-

Habitación {100 + i}

-

Reserva #{1234 + i} - 2 huéspedes

-
-
-

14:00

- Pendiente -
-
- ))} -
- -
-
-
- - {/* Quick Actions */} - - - Acciones Rápidas - - -
- - - - -
-
-
-
- - - - - - - - - - - - - - - - - - - - -
+
); }; diff --git a/src/pages/dashboard/RestaurantPOS.tsx b/src/pages/dashboard/RestaurantPOS.tsx index f3e9243..38b1943 100644 --- a/src/pages/dashboard/RestaurantPOS.tsx +++ b/src/pages/dashboard/RestaurantPOS.tsx @@ -1,20 +1,70 @@ -import { useState } from 'react'; -import { Tabs, TabsContent, TabsList, TabsTrigger } from '@/components/ui/tabs'; -import { Card, CardContent, CardDescription, CardHeader, CardTitle } from '@/components/ui/card'; -import { UtensilsCrossed, QrCode, ChefHat, Receipt } from 'lucide-react'; -import DigitalMenu from '@/components/restaurant/DigitalMenu'; -import TableOrders from '@/components/restaurant/TableOrders'; -import KitchenDisplay from '@/components/restaurant/KitchenDisplay'; -import BillManagement from '@/components/restaurant/BillManagement'; -import TableConfiguration from '@/components/restaurant/TableConfiguration'; -import InventoryManagement from '@/components/restaurant/InventoryManagement'; -import POSTerminal from '@/components/restaurant/POSTerminal'; -import StaffManagement from '@/components/restaurant/StaffManagement'; +import { Link } from 'react-router-dom'; +import { Card, CardContent } from '@/components/ui/card'; +import { UtensilsCrossed, QrCode, ChefHat, Receipt, CreditCard, Package, Users as UsersIcon, ArrowRight } from 'lucide-react'; const RestaurantPOS = () => { - const [activeOrders] = useState(12); - const [pendingKitchen] = useState(8); - const [dailyRevenue] = useState(4280); + const activeOrders = 12; + const pendingKitchen = 8; + const dailyRevenue = 4280; + + const sections = [ + { + title: 'Terminal POS', + description: 'Sistema de punto de venta completo', + icon: CreditCard, + path: '/dashboard/restaurant/pos', + color: 'green' + }, + { + title: 'Pedidos en Mesa', + description: 'Gestiona pedidos de todas las mesas', + icon: Receipt, + path: '/dashboard/restaurant/orders', + color: 'blue' + }, + { + title: 'Display de Cocina', + description: 'Vista de pedidos para el equipo de cocina', + icon: ChefHat, + path: '/dashboard/restaurant/kitchen', + color: 'orange' + }, + { + title: 'Gestión de Cuentas', + description: 'Split bill, propinas y cierre de cuentas', + icon: Receipt, + path: '/dashboard/restaurant/bills', + color: 'purple' + }, + { + title: 'Configuración de Mesas', + description: 'Gestiona el layout y estado de las mesas', + icon: QrCode, + path: '/dashboard/restaurant/tables', + color: 'indigo' + }, + { + title: 'Menú Digital', + description: 'Gestiona platos y genera códigos QR', + icon: UtensilsCrossed, + path: '/dashboard/restaurant/menu', + color: 'red' + }, + { + title: 'Inventario', + description: 'Control de stock y reposición de productos', + icon: Package, + path: '/dashboard/restaurant/inventory', + color: 'yellow' + }, + { + title: 'Personal del Restaurante', + description: 'Administra tu equipo de trabajo', + icon: UsersIcon, + path: '/dashboard/restaurant/staff', + color: 'teal' + } + ]; return (
@@ -33,164 +83,76 @@ const RestaurantPOS = () => { {/* Stats Overview */}
- - Pedidos Activos - - - -
{activeOrders}
-

En proceso ahora

+ +
+
+

Pedidos Activos

+

{activeOrders}

+

En proceso ahora

+
+
+ +
+
- - En Cocina - - - -
{pendingKitchen}
-

Preparando

+ +
+
+

En Cocina

+

{pendingKitchen}

+

Preparando

+
+
+ +
+
- - Ventas del Día - - - -
${dailyRevenue.toLocaleString()}
-

+12% vs ayer

+ +
+
+

Ventas del Día

+

${dailyRevenue.toLocaleString()}

+

+12% vs ayer

+
+
+ +
+
- {/* Main Content */} - - - POS - Pedidos - Cocina - Cuentas - Mesas - Menú - Inventario - Personal - - - - - - Terminal Punto de Venta - - Sistema POS completo conectado con inventario - - - - - - - - - - - - Gestión de Menú y Platos - - Configura tu menú y genera códigos QR para las mesas - - - - - - - - - - - - Sistema de Pedidos en Mesa - - Gestiona pedidos de todas las mesas en tiempo real - - - - - - - - - - - - Display de Cocina - - Vista de pedidos para el equipo de cocina - - - - - - - - - - - - Gestión de Cuentas - - Split bill, propinas y cierre de cuentas - - - - - - - - - - - - Configuración de Mesas - - Gestiona el layout y estado de las mesas del restaurante - - - - - - - - - - - - Gestión de Inventario - - Control de stock, alertas y reposición de productos - - - - - - - - - - - - Gestión de Personal - - Administra tu equipo de restaurante - - - - - - - - + {/* Sections Grid */} +
+

Módulos del Sistema

+
+ {sections.map((section) => { + const Icon = section.icon; + return ( + + + +
+
+ +
+ +
+

{section.title}

+

{section.description}

+
+
+ + ); + })} +
+
); }; diff --git a/src/pages/dashboard/hotel/CheckIn.tsx b/src/pages/dashboard/hotel/CheckIn.tsx new file mode 100644 index 0000000..5390d97 --- /dev/null +++ b/src/pages/dashboard/hotel/CheckIn.tsx @@ -0,0 +1,12 @@ +import CheckInSystem from '@/components/hotel/CheckInSystem'; + +const CheckIn = () => { + return ( +
+

Check-in Digital

+ +
+ ); +}; + +export default CheckIn; diff --git a/src/pages/dashboard/hotel/KeylessAccess.tsx b/src/pages/dashboard/hotel/KeylessAccess.tsx new file mode 100644 index 0000000..38e9c2f --- /dev/null +++ b/src/pages/dashboard/hotel/KeylessAccess.tsx @@ -0,0 +1,12 @@ +import KeylessEntry from '@/components/hotel/KeylessEntry'; + +const KeylessAccess = () => { + return ( +
+

Acceso sin Llave

+ +
+ ); +}; + +export default KeylessAccess; diff --git a/src/pages/dashboard/hotel/RoomServicePage.tsx b/src/pages/dashboard/hotel/RoomServicePage.tsx new file mode 100644 index 0000000..dd0a127 --- /dev/null +++ b/src/pages/dashboard/hotel/RoomServicePage.tsx @@ -0,0 +1,12 @@ +import RoomService from '@/components/hotel/RoomService'; + +const RoomServicePage = () => { + return ( +
+

Room Service

+ +
+ ); +}; + +export default RoomServicePage; diff --git a/src/pages/dashboard/hotel/Rooms.tsx b/src/pages/dashboard/hotel/Rooms.tsx new file mode 100644 index 0000000..15778d7 --- /dev/null +++ b/src/pages/dashboard/hotel/Rooms.tsx @@ -0,0 +1,11 @@ +import RoomManagement from '@/components/hotel/RoomManagement'; + +const Rooms = () => { + return ( +
+ +
+ ); +}; + +export default Rooms; diff --git a/src/pages/dashboard/hotel/Staff.tsx b/src/pages/dashboard/hotel/Staff.tsx new file mode 100644 index 0000000..88b94c1 --- /dev/null +++ b/src/pages/dashboard/hotel/Staff.tsx @@ -0,0 +1,12 @@ +import StaffManagement from '@/components/hotel/StaffManagement'; + +const Staff = () => { + return ( +
+

Personal del Hotel

+ +
+ ); +}; + +export default Staff; diff --git a/src/pages/dashboard/restaurant/Bills.tsx b/src/pages/dashboard/restaurant/Bills.tsx new file mode 100644 index 0000000..5b395ad --- /dev/null +++ b/src/pages/dashboard/restaurant/Bills.tsx @@ -0,0 +1,12 @@ +import BillManagement from '@/components/restaurant/BillManagement'; + +const Bills = () => { + return ( +
+

Gestión de Cuentas

+ +
+ ); +}; + +export default Bills; diff --git a/src/pages/dashboard/restaurant/Inventory.tsx b/src/pages/dashboard/restaurant/Inventory.tsx new file mode 100644 index 0000000..f69edd9 --- /dev/null +++ b/src/pages/dashboard/restaurant/Inventory.tsx @@ -0,0 +1,12 @@ +import InventoryManagement from '@/components/restaurant/InventoryManagement'; + +const Inventory = () => { + return ( +
+

Gestión de Inventario

+ +
+ ); +}; + +export default Inventory; diff --git a/src/pages/dashboard/restaurant/Kitchen.tsx b/src/pages/dashboard/restaurant/Kitchen.tsx new file mode 100644 index 0000000..5217131 --- /dev/null +++ b/src/pages/dashboard/restaurant/Kitchen.tsx @@ -0,0 +1,12 @@ +import KitchenDisplay from '@/components/restaurant/KitchenDisplay'; + +const Kitchen = () => { + return ( +
+

Display de Cocina

+ +
+ ); +}; + +export default Kitchen; diff --git a/src/pages/dashboard/restaurant/Menu.tsx b/src/pages/dashboard/restaurant/Menu.tsx new file mode 100644 index 0000000..79b5abd --- /dev/null +++ b/src/pages/dashboard/restaurant/Menu.tsx @@ -0,0 +1,12 @@ +import DigitalMenu from '@/components/restaurant/DigitalMenu'; + +const Menu = () => { + return ( +
+

Menú Digital

+ +
+ ); +}; + +export default Menu; diff --git a/src/pages/dashboard/restaurant/Orders.tsx b/src/pages/dashboard/restaurant/Orders.tsx new file mode 100644 index 0000000..e1574c2 --- /dev/null +++ b/src/pages/dashboard/restaurant/Orders.tsx @@ -0,0 +1,12 @@ +import TableOrders from '@/components/restaurant/TableOrders'; + +const Orders = () => { + return ( +
+

Pedidos en Mesa

+ +
+ ); +}; + +export default Orders; diff --git a/src/pages/dashboard/restaurant/POSPage.tsx b/src/pages/dashboard/restaurant/POSPage.tsx new file mode 100644 index 0000000..dd9242e --- /dev/null +++ b/src/pages/dashboard/restaurant/POSPage.tsx @@ -0,0 +1,12 @@ +import POSTerminal from '@/components/restaurant/POSTerminal'; + +const POSPage = () => { + return ( +
+

Terminal POS

+ +
+ ); +}; + +export default POSPage; diff --git a/src/pages/dashboard/restaurant/Staff.tsx b/src/pages/dashboard/restaurant/Staff.tsx new file mode 100644 index 0000000..b279677 --- /dev/null +++ b/src/pages/dashboard/restaurant/Staff.tsx @@ -0,0 +1,12 @@ +import StaffManagement from '@/components/restaurant/StaffManagement'; + +const Staff = () => { + return ( +
+

Personal del Restaurante

+ +
+ ); +}; + +export default Staff; diff --git a/src/pages/dashboard/restaurant/Tables.tsx b/src/pages/dashboard/restaurant/Tables.tsx new file mode 100644 index 0000000..204368f --- /dev/null +++ b/src/pages/dashboard/restaurant/Tables.tsx @@ -0,0 +1,12 @@ +import TableConfiguration from '@/components/restaurant/TableConfiguration'; + +const Tables = () => { + return ( +
+

Configuración de Mesas

+ +
+ ); +}; + +export default Tables;