Issue Title: Implementar endpoint para proceder al proceso de pago del carrito
Descripción:
Desarrollar un nuevo endpoint que permita proceder al proceso de pago y finalizar la compra del carrito especificado por cartId. Este endpoint gestionará la transacción y validará la información de pago y envío antes de completar la compra.
Tareas a realizar:
Crear el endpoint en el controlador:
Desarrollar un método en el controlador CartController para manejar las solicitudes POST al endpoint /api/cart/{cartId}/checkout.
Definir el cuerpo de la solicitud:
Determinar qué información se enviará en el cuerpo de la solicitud. Esto podría incluir detalles como:
Información de pago (número de tarjeta, fecha de vencimiento, etc.)
Dirección de envío
Cualquier otro dato necesario para procesar el pedido.
Implementar el servicio:
Crear un método en el servicio ICartService que valide la información de pago y envío.
Procesar la transacción y realizar las actualizaciones necesarias en el carrito y el inventario.
Actualizar el repositorio si es necesario:
Asegurarse de que el repositorio de Cart tenga métodos adecuados para manejar el proceso de pago y finalizar la compra.
Pruebas del endpoint:
Probar que el endpoint funcione correctamente utilizando herramientas como Postman. Verificar que:
Se complete la compra correctamente con información válida.
Se devuelvan errores adecuados si la información de pago o envío es inválida.
Documentación:
Actualizar la documentación de la API para incluir el nuevo endpoint /api/cart/{cartId}/checkout, describiendo su funcionalidad y los parámetros de entrada.
Criterios de aceptación:
El endpoint debe permitir proceder al proceso de pago y finalizar la compra del carrito especificado.
Debe manejar adecuadamente los casos en que la información de pago o envío sea inválida.
El código debe seguir las mejores prácticas de desarrollo en Spring Boot.
Issue Title: Implementar endpoint para proceder al proceso de pago del carrito
Descripción:
Desarrollar un nuevo endpoint que permita proceder al proceso de pago y finalizar la compra del carrito especificado por
cartId
. Este endpoint gestionará la transacción y validará la información de pago y envío antes de completar la compra.Tareas a realizar:
Crear el endpoint en el controlador:
CartController
para manejar las solicitudes POST al endpoint/api/cart/{cartId}/checkout
.Definir el cuerpo de la solicitud:
Implementar el servicio:
ICartService
que valide la información de pago y envío.Actualizar el repositorio si es necesario:
Cart
tenga métodos adecuados para manejar el proceso de pago y finalizar la compra.Pruebas del endpoint:
Documentación:
/api/cart/{cartId}/checkout
, describiendo su funcionalidad y los parámetros de entrada.Criterios de aceptación: