Spaces:
Sleeping
Sleeping
| from typing import Dict, Any | |
| from datetime import datetime | |
| class Order: | |
| """Representa un pedido de comida para la cocina.""" | |
| def __init__(self, items=None, special_instructions=None, table_number=None): | |
| self.items = items or [] | |
| self.special_instructions = special_instructions or "" | |
| self.table_number = table_number | |
| self.timestamp = datetime.now().strftime("%Y-%m-%d %H:%M:%S") | |
| self.order_id = f"ORD-{datetime.now().strftime('%Y%m%d%H%M%S')}" | |
| self.error = None # Campo para indicar si hay un error | |
| def add_item(self, item: Dict[str, Any]): | |
| """Añade un elemento al pedido.""" | |
| self.items.append(item) | |
| def to_dict(self): | |
| """Convierte el pedido a un diccionario.""" | |
| return { | |
| "order_id": self.order_id, | |
| "timestamp": self.timestamp, | |
| "table_number": self.table_number, | |
| "items": self.items, | |
| "special_instructions": self.special_instructions, | |
| "error": self.error | |
| } | |
| def __str__(self): | |
| """Representación en texto del pedido.""" | |
| if self.error: | |
| return f"Pedido con error: {self.error}" | |
| items_str = ", ".join([f"{item.get('quantity', 1)}x {item.get('name', 'item')}" for item in self.items]) | |
| return f"Pedido {self.order_id} - Mesa {self.table_number}: {items_str}" |