Los métodos permitirá dar dinámica a nuestro carrito con funcionalidades como agregar productos, actualizar la cantidad, y vaciar el carrito.
Lección 38 del Curso Flutter y Laravel Tienda Delivery
Implementación de los métodos para la clase Carrito Flutter
Después de implementar la clase carrito necesitamos los métodos necesarios para gestionar el Carrito de Compra como :
Para ello creamos un nuevo archivo en la ruta carrito/CarritoCompra.dart. Ahora veamos la implementación de los métodos
import 'package:arequipalocal/carrito/Carrito.dart';
import 'package:flutter/material.dart';
class CarritoCompra extends ChangeNotifier{
Map<String, Carrito> _items ={};
Map<String, Carrito> get items{
....
}
int get cantidadItems{
return _items.length;
}
double get subtotal{
var _subtotal=0.0;
...
return _subtotal;
}
double get impuesto{
...
}
double get total{
var _total=0.0;
_total = this.subtotal * 1.18;
return _total;
}
void agregarItem(String _id,String _nombre, double _precio, String _unidad, String _urlfoto){
if(_items.containsKey(_id)){
//update
...
}else{
//agregar
...
}
}
void incrementarCantidad(String _id){
if(_items.containsKey(_id)){
...
}
}
void decrementarCantidad(String _id){
if(!_items.containsKey(_id)) return;
if(_items[_id].cantidad>1){
...
}else{
_items.remove(_id);
}
}
void removerItems(){
_items = {};
}
void removerItem(String _id){
....
}
}
Fin
124 visitas
© Todos los derechos reservados CODEA APP | Cursos de programación avanzados con proyectos reales | 2020 - 2021