Refactor Restaurant POS module

This commit is contained in:
gpt-engineer-app[bot]
2025-10-10 23:27:31 +00:00
parent 957c95e59c
commit 73f9b1ab95
7 changed files with 1660 additions and 8 deletions

View File

@@ -22,6 +22,7 @@ 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');
@@ -122,7 +123,7 @@ const HotelManagement = () => {
{/* Main Content Tabs */}
<Tabs value={activeTab} onValueChange={setActiveTab} className="space-y-6">
<TabsList className="grid w-full grid-cols-5 lg:w-auto lg:inline-grid">
<TabsList className="grid w-full grid-cols-6 lg:w-auto lg:inline-grid">
<TabsTrigger value="overview" className="flex items-center gap-2">
<Hotel className="w-4 h-4" />
<span className="hidden sm:inline">Resumen</span>
@@ -143,6 +144,10 @@ const HotelManagement = () => {
<Key className="w-4 h-4" />
<span className="hidden sm:inline">Acceso</span>
</TabsTrigger>
<TabsTrigger value="staff" className="flex items-center gap-2">
<Users className="w-4 h-4" />
<span className="hidden sm:inline">Personal</span>
</TabsTrigger>
</TabsList>
<TabsContent value="overview" className="space-y-6">
@@ -271,6 +276,10 @@ const HotelManagement = () => {
<TabsContent value="keyless">
<KeylessEntry />
</TabsContent>
<TabsContent value="staff">
<StaffManagement />
</TabsContent>
</Tabs>
</div>
);

View File

@@ -6,6 +6,10 @@ 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';
const RestaurantPOS = () => {
const [activeOrders] = useState(12);
@@ -63,20 +67,38 @@ const RestaurantPOS = () => {
</div>
{/* Main Content */}
<Tabs defaultValue="menu" className="space-y-4">
<TabsList className="grid w-full grid-cols-4">
<TabsTrigger value="menu">Menú Digital</TabsTrigger>
<TabsTrigger value="orders">Pedidos en Mesa</TabsTrigger>
<Tabs defaultValue="pos" className="space-y-4">
<TabsList className="grid w-full grid-cols-8">
<TabsTrigger value="pos">POS</TabsTrigger>
<TabsTrigger value="orders">Pedidos</TabsTrigger>
<TabsTrigger value="kitchen">Cocina</TabsTrigger>
<TabsTrigger value="bills">Facturación</TabsTrigger>
<TabsTrigger value="bills">Cuentas</TabsTrigger>
<TabsTrigger value="tables">Mesas</TabsTrigger>
<TabsTrigger value="menu">Menú</TabsTrigger>
<TabsTrigger value="inventory">Inventario</TabsTrigger>
<TabsTrigger value="staff">Personal</TabsTrigger>
</TabsList>
<TabsContent value="pos" className="space-y-4">
<Card>
<CardHeader>
<CardTitle>Terminal Punto de Venta</CardTitle>
<CardDescription>
Sistema POS completo conectado con inventario
</CardDescription>
</CardHeader>
<CardContent>
<POSTerminal />
</CardContent>
</Card>
</TabsContent>
<TabsContent value="menu" className="space-y-4">
<Card>
<CardHeader>
<CardTitle>Menú Digital con QR</CardTitle>
<CardTitle>Gestión de Menú y Platos</CardTitle>
<CardDescription>
Gestiona tu menú y genera códigos QR para las mesas
Configura tu menú y genera códigos QR para las mesas
</CardDescription>
</CardHeader>
<CardContent>
@@ -126,6 +148,48 @@ const RestaurantPOS = () => {
</CardContent>
</Card>
</TabsContent>
<TabsContent value="tables" className="space-y-4">
<Card>
<CardHeader>
<CardTitle>Configuración de Mesas</CardTitle>
<CardDescription>
Gestiona el layout y estado de las mesas del restaurante
</CardDescription>
</CardHeader>
<CardContent>
<TableConfiguration />
</CardContent>
</Card>
</TabsContent>
<TabsContent value="inventory" className="space-y-4">
<Card>
<CardHeader>
<CardTitle>Gestión de Inventario</CardTitle>
<CardDescription>
Control de stock, alertas y reposición de productos
</CardDescription>
</CardHeader>
<CardContent>
<InventoryManagement />
</CardContent>
</Card>
</TabsContent>
<TabsContent value="staff" className="space-y-4">
<Card>
<CardHeader>
<CardTitle>Gestión de Personal</CardTitle>
<CardDescription>
Administra tu equipo de restaurante
</CardDescription>
</CardHeader>
<CardContent>
<StaffManagement />
</CardContent>
</Card>
</TabsContent>
</Tabs>
</div>
);