1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- 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,
- );
- }
- }
|