import 'package:turquessa_mesas_hoster/core/models/mesa_model.dart'; import 'package:turquessa_mesas_hoster/mvvm/views/home/home_screen.dart'; import 'package:flutter/material.dart'; // Clase para encapsular todas las propiedades de estilo relacionadas con el estado class TableStatusStyle { final Color backgroundColor; final Color iconColor; final IconData icon; final Color cardColor; final EstadoPedido nextStatus; TableStatusStyle({ required this.backgroundColor, required this.iconColor, required this.icon, required this.cardColor, required this.nextStatus, }); } TableStatusStyle getStatusStyle(EstadoPedido? status) { status = status ?? EstadoPedido.disponible; switch (status) { case EstadoPedido.disponible: return TableStatusStyle( backgroundColor: const Color.fromARGB(255, 220, 252, 232), iconColor: Colors.green, icon: Icons.table_restaurant_rounded, cardColor: const Color.fromARGB(255, 220, 252, 232), nextStatus: EstadoPedido.preparacion, ); case EstadoPedido.surtida: return TableStatusStyle( backgroundColor: const Color.fromARGB(255, 220, 234, 254), iconColor: Colors.blue, icon: Icons.coffee_rounded, cardColor: const Color.fromARGB(255, 220, 234, 254), nextStatus: EstadoPedido.cobrado, ); case EstadoPedido.preparacion: return TableStatusStyle( backgroundColor: const Color.fromARGB(255, 243, 232, 255), iconColor: Colors.deepPurple, icon: Icons.restaurant_rounded, cardColor: Colors.white, nextStatus: EstadoPedido.surtida, ); case EstadoPedido.cobrado: return TableStatusStyle( backgroundColor: const Color.fromARGB(255, 255, 238, 213), iconColor: Colors.amber, icon: Icons.attach_money_rounded, cardColor: Colors.white, nextStatus: EstadoPedido.disponible, ); default: return TableStatusStyle( backgroundColor: Colors.grey.shade200, iconColor: Colors.grey, icon: Icons.settings, cardColor: Colors.white, nextStatus: EstadoPedido.disponible, ); } }