carrito_model.dart 703 Bytes
Newer Older
yenisleydi committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
import 'package:primer_practica/src/models/articles_model.dart';

class CarritoModel {
  final ArticlesModel articulo;
  int cantidad;
  double precio;

  CarritoModel({
    required this.articulo,
    this.cantidad = 1,
    double? precio,
  }) : precio = precio ?? (articulo.precios.isNotEmpty ? articulo.precios[0].precio : 0.0);

  Map<String, dynamic> toJson() {
    return {
      'articulo': articulo.toJson(),
      'cantidad': cantidad,
      'precio': precio,
    };
  }

  factory CarritoModel.fromJson(Map<String, dynamic> json) {
    return CarritoModel(
      articulo: ArticlesModel.fromJson(json['articulo']),
      cantidad: json['cantidad'],
yenisleydi committed
26
      precio: json['precio'],
yenisleydi committed
27 28 29
    );
  }
}