corte_caja_model.dart 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135
  1. import 'package:turquessa_app/models/models.dart';
  2. import '../services/services.dart';
  3. class CorteCaja {
  4. String? id;
  5. DateTime? fechaApertura;
  6. DateTime? fechaCorte;
  7. int? idUsuario;
  8. double? fondo;
  9. int? idSucursal;
  10. double? fondoDiaSig;
  11. double? ventaPuntos;
  12. double? ventaEfe;
  13. double? ventaTrans;
  14. double? ventaTarj;
  15. double? gasto;
  16. double? retiro;
  17. double? deposito;
  18. double? corteFinal;
  19. DateTime? creado;
  20. DateTime? eliminado;
  21. DateTime? modificado;
  22. String? idWeb;
  23. String? sincronizado;
  24. List<Deposito> depositos = [];
  25. List<Retiro> retiros = [];
  26. List<Gasto> gastos = [];
  27. CorteCaja({
  28. this.id,
  29. this.fechaApertura,
  30. this.fechaCorte,
  31. this.idUsuario,
  32. this.idSucursal,
  33. this.fondo,
  34. this.fondoDiaSig,
  35. this.ventaPuntos,
  36. this.ventaEfe,
  37. this.ventaTrans,
  38. this.ventaTarj,
  39. this.gasto,
  40. this.retiro,
  41. this.deposito,
  42. this.corteFinal,
  43. this.creado,
  44. this.modificado,
  45. this.eliminado,
  46. this.idWeb,
  47. this.sincronizado,
  48. this.depositos = const [],
  49. this.retiros = const [],
  50. this.gastos = const [],
  51. });
  52. Map<String, dynamic> toJson() {
  53. return {
  54. 'id': id,
  55. 'fechaApertura': fechaApertura?.toIso8601String(),
  56. 'fechaCorte': fechaCorte?.toIso8601String(),
  57. 'idUsuario': idUsuario ?? 0,
  58. 'idSucursal': idSucursal ?? 0,
  59. 'fondo': fondo ?? 0.0,
  60. 'fondoDiaSig': fondoDiaSig ?? 0.0,
  61. 'ventaPuntos': ventaPuntos ?? 0.0,
  62. 'ventaEfe': ventaEfe ?? 0.0,
  63. 'ventaTrans': ventaTrans ?? 0.0,
  64. 'ventaTarj': ventaTarj ?? 0.0,
  65. 'gasto': gasto ?? 0.0,
  66. 'retiro': retiro ?? 0.0,
  67. 'deposito': deposito ?? 0.0,
  68. 'corteFinal': corteFinal ?? 0.0,
  69. 'creado': creado?.toIso8601String(),
  70. 'modificado': modificado?.toIso8601String(),
  71. 'eliminado': eliminado?.toIso8601String(),
  72. 'sincronizado': sincronizado,
  73. 'idWeb': idWeb,
  74. };
  75. }
  76. Map<String, dynamic> toApi() {
  77. return {
  78. 'id': id,
  79. 'fechaApertura': fechaApertura,
  80. 'fechaCorte': fechaCorte,
  81. 'idUsuario': idUsuario,
  82. 'idSucursal': idSucursal,
  83. 'fondo': fondo,
  84. 'fondoDiaSig': fondoDiaSig,
  85. 'ventaPuntos': ventaPuntos,
  86. 'ventaEfe': ventaEfe,
  87. 'ventaTrans': ventaTrans,
  88. 'ventaTarj': ventaTarj,
  89. 'gasto': gasto,
  90. 'retiro': retiro,
  91. 'deposito': deposito,
  92. 'corteFinal': corteFinal,
  93. 'creado': creado,
  94. 'modificado': modificado,
  95. 'eliminado': eliminado,
  96. 'depositos': depositos.map((d) => d.toApi()).toList(),
  97. 'retiros': retiros.map((r) => r.toApi()).toList(),
  98. 'gastos': gastos.map((g) => g.toApi()).toList(),
  99. };
  100. }
  101. CorteCaja.fromJson(Map<String, dynamic> json) {
  102. id = Basico.parseString(json['id']);
  103. fechaApertura = Basico.parseDate(json['fechaApertura']);
  104. fechaCorte = Basico.parseDate(json['fechaCorte']);
  105. idUsuario = Basico.parseInt(json['idUsuario']);
  106. idSucursal = Basico.parseInt(json['idSucursal']);
  107. fondo = Basico.parseDouble(json['fondo']);
  108. fondoDiaSig = Basico.parseDouble(json['fondoDiaSig']);
  109. ventaPuntos = Basico.parseDouble(json['ventaPuntos']);
  110. ventaEfe = Basico.parseDouble(json['ventaEfe']);
  111. ventaTrans = Basico.parseDouble(json['ventaTrans']);
  112. ventaTarj = Basico.parseDouble(json['ventaTarj']);
  113. gasto = Basico.parseDouble(json['gasto']);
  114. retiro = Basico.parseDouble(json['retiro']);
  115. deposito = Basico.parseDouble(json['deposito']);
  116. corteFinal = Basico.parseDouble(json['corteFinal']);
  117. creado = Basico.parseDate(json['creado']);
  118. eliminado = Basico.parseDate(json['eliminado']);
  119. modificado = Basico.parseDate(json['modificado']);
  120. idWeb = Basico.parseString(json['idWeb']);
  121. sincronizado = Basico.parseString(json['sincronizado']);
  122. }
  123. Future<void> guardar() async {
  124. await RepoService().guardar(this);
  125. }
  126. }