import React, { useState } from 'react'; import { Package, Plus, Edit, Trash2, AlertTriangle } from 'lucide-react'; import { Button } from '@/components/ui/button'; import { Card, CardContent, CardHeader, CardTitle } from '@/components/ui/card'; import { Dialog, DialogContent, DialogHeader, DialogTitle, DialogTrigger } from '@/components/ui/dialog'; import { Input } from '@/components/ui/input'; import { Label } from '@/components/ui/label'; import { Badge } from '@/components/ui/badge'; import { useToast } from '@/hooks/use-toast'; const Inventory = () => { const [inventory, setInventory] = useState([]); const { toast } = useToast(); const [formData, setFormData] = useState({ name: '', category: '', quantity: 0, unit: 'kg', minStock: 0, supplier: '' }); const handleSubmit = async () => { try { toast({ title: 'Éxito', description: 'Producto agregado al inventario' }); setFormData({ name: '', category: '', quantity: 0, unit: 'kg', minStock: 0, supplier: '' }); } catch (error: any) { toast({ title: 'Error', description: error?.message || 'No se pudo agregar el producto', variant: 'destructive' }); } }; return (

Gestión de Inventario

Controla el stock de productos

Agregar Producto
setFormData({ ...formData, name: e.target.value })} placeholder="Ej: Tomates" />
setFormData({ ...formData, category: e.target.value })} placeholder="Ej: Vegetales" />
setFormData({ ...formData, quantity: parseFloat(e.target.value) })} />
setFormData({ ...formData, unit: e.target.value })} placeholder="kg, lb, unidades" />
setFormData({ ...formData, minStock: parseFloat(e.target.value) })} />
setFormData({ ...formData, supplier: e.target.value })} placeholder="Nombre del proveedor" />
{inventory.length === 0 ? (
No hay productos en el inventario. Agrega el primer producto.
) : ( inventory.map((item) => (
{item.name}

{item.category}

Stock actual: {item.quantity} {item.unit}
Stock mínimo: {item.minStock} {item.unit}
{item.quantity <= item.minStock && ( Stock Bajo )}

Proveedor: {item.supplier}

)) )}
); }; export default Inventory;