import React, { useState, useEffect } from 'react'; import { db } from '../../firebase/config'; import { ref, onValue, set, update, push, remove } from 'firebase/database'; import { Layout, Plus, Trash2, Map as MapIcon, Grid, Save, MousePointer2 } from 'lucide-react'; export default function TableManager() { const [tables, setTables] = useState([]); const [newTable, setNewTable] = useState({ number: '', capacity: 4 }); useEffect(() => { onValue(ref(db, 'config/tables'), (snapshot) => { const data = snapshot.val(); if (data) { setTables(Object.keys(data).map(id => ({ id, ...data[id] })).sort((a,b) => a.number - b.number)); } else { setTables([]); } }); }, []); const addTable = async (e) => { e.preventDefault(); if (!newTable.number) return; const tableRef = push(ref(db, 'config/tables')); await set(tableRef, { number: parseInt(newTable.number), capacity: parseInt(newTable.capacity), status: 'available', x: 0, y: 0 }); setNewTable({ number: '', capacity: 4 }); }; const deleteTable = async (id) => { if (window.confirm('¿Eliminar esta mesa del mapa?')) { await remove(ref(db, `config/tables/${id}`)); } }; return (
Configura la distribución física de tu restaurante