mesa_model.dart 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. import '../models/basico_model.dart';
  2. import '../services/services.dart';
  3. enum EstadoPedido {
  4. disponible,
  5. surtida,
  6. preparacion,
  7. cobrado,
  8. }
  9. class Mesa extends Basico {
  10. int? idSucursal;
  11. String? nombre;
  12. String? clave;
  13. String? posicion;
  14. bool? activa;
  15. EstadoPedido? estado;
  16. Mesa(
  17. {super.id,
  18. super.idLocal,
  19. this.idSucursal,
  20. this.nombre,
  21. this.clave,
  22. this.posicion,
  23. this.activa,
  24. this.estado = EstadoPedido.disponible,
  25. super.creado,
  26. super.modificado,
  27. super.eliminado});
  28. @override
  29. Map<String, dynamic> toJson() {
  30. return {
  31. 'id': id,
  32. 'idSucursal': idSucursal ?? 0,
  33. 'nombre': nombre ?? '',
  34. 'clave': clave ?? '',
  35. 'posicion': posicion ?? '',
  36. 'activa': activa == true ? 1 : 0,
  37. 'creado': creado?.toIso8601String(),
  38. 'modificado': modificado?.toIso8601String(),
  39. 'eliminado': eliminado?.toIso8601String(),
  40. }..addAll(super.toJson());
  41. }
  42. Mesa.fromJson(Map<String, dynamic> json) {
  43. super.parseJson(json);
  44. idSucursal = Basico.parseInt(json['idSucursal']);
  45. nombre = Basico.parseString(json['nombre']);
  46. clave = Basico.parseString(json['clave']);
  47. posicion = Basico.parseString(json['posicion']);
  48. activa = Basico.parseInt(json['activa']) == 1;
  49. }
  50. Mesa.fromApi(Map<String, dynamic> json) {
  51. super.parseJson(json);
  52. idSucursal = Basico.parseInt(json['idSucursal']);
  53. nombre = Basico.parseString(json['nombre']);
  54. clave = Basico.parseString(json['clave']);
  55. posicion = Basico.parseString(json['posicion']);
  56. if (json['activo'] is bool) {
  57. activa = json['activo'];
  58. } else {
  59. activa = Basico.parseInt(json['activo']) == 1;
  60. }
  61. creado = Basico.parseDate(json['creado']);
  62. modificado = Basico.parseDate(json['modificado']);
  63. eliminado = Basico.parseDate(json['eliminado']);
  64. }
  65. Future<void> guardar() async {
  66. idLocal = await DatabaseService().guardar(this);
  67. }
  68. }