ahumadamob / 2024_gc_p3_g1_sf

Carrito de Compras
2 stars 0 forks source link

Implementar endpoint para proceder al proceso de pago del carrito #76

Open ahumadamob opened 3 days ago

ahumadamob commented 3 days ago

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:

  1. 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.
  2. 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.
  3. 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.
  4. 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.
  5. 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.
  6. 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: