Blog de tecnología, desarrollo de aplicaciones web, sistemas operativos, etc.
5. Sistema Web para Cafetería con MVC – Carrito (modificar cantidades de productos y eliminar productos)
Parte 1 – Modificar cantidades de productos en carrito
Como se observa en la imagen, tenemos el botón de actualizar, de tal manera que si modificamos la cantidad de un determinado producto, multiplicara la nueva cantidad, por el precio y tendremos un subtotal para cada producto y a su vez un nuevo total por todo el pedido.
Acciones de Modificar y Borrar
El par de lineas señaladas son las que permiten enviar la información de cada producto, a su método correspondiente dentro del ControladorPedidos.
*** NOTA esta imagen es de la sección, carrito.php que esta descrita en la Parte 3 de la entrada que esta en este enlace Cada botón invoca a su respectivo método del ControladorPedidos
Cuando modificamos la cantidad de producto y presionamos en Actualizar, enviamos la información del producto y usuario a este método, el cual a su vez, envía un ARRAY con la información al método actualizarProductoModelo(), ademas del nombre de la tabla de la BD, Si recibe un TRUE recargamos la seccion carrito.php
Método actualizarProductoModelo() – ModeloPedidos
En este método recibimos los datos del producto y actualizamos la cantidad de la tabla carrito, en donde el id_producto y id_usuario, coinciden con un registro de la BD, en caso de que se ejecute correctamente el UPDATE retorna un true.
Parte 2 – Eliminar un producto del Carrito
De acuerdo a lo anterior, cuando presionemos el botón de borrar invocaremos al método quitarProductoCarrito() del ControladorPedidos
Método quitarProductoCarrito() del ControladorPedidos
Cuando presionamos el botón Borrar, el método recibe la información del producto y usuario y la envía en un ARRAY al método borrarProductoModelo() del ModeloPedidos, y espera una respuesta TRUE y así vuelve a cargar la sección carrito.php
Método borrarProductoCarrito() del ModeloPedidos
En este método se recibe la información y se borrar de la BD, en caso de un DELETE correcto devolvemos un TRUE al ControladorPedidos
Parte 3 – Calculo de subtotales y totales
Para calcular el subtotal por producto y el total del pedido, tenemos lo siguiente: En carrito.php tenemos las variables $total y $subtotal.
$subtotal = $item[6] * $item[7].
Donde $item[6] es igual la cantidad de un producto determinado y $item[7] es igual al precio unitario de dicho producto.
En la Linea indicada, estamos imprimiendo el valor de $subtotal, por cada producto Finalmente aquí, estamos acumulando cada valor de $subtotal dentro de $total y lo imprimimos fuera del cuerpo de la tabla. Hacemos un espaciado de columnas con colspan e imprimimos el valor de la variable $total.