Issue Title: Implementar endpoint para marcar un producto como "destacado"
Descripción:
Desarrollar un nuevo endpoint que permita marcar un producto como "destacado". Esto actualizará un campo en la base de datos que indicará que el producto debe recibir mayor visibilidad en las búsquedas o en el catálogo.
Tareas a realizar:
Crear el endpoint en el controlador:
Desarrollar un método en ProductController para manejar las solicitudes POST al endpoint /api/product/{id}/feature.
Definir el cuerpo de la solicitud:
Determinar si se enviará información adicional en el cuerpo de la solicitud o si solo se usará el ID del producto en la URL.
Implementar el servicio:
Crear un método en el servicio IProductService que marque el producto como "destacado" si existe. Esto podría implicar actualizar un campo en la entidad Product.
Actualizar el repositorio si es necesario:
Asegurarse de que el repositorio IProductRepository tenga un método adecuado para actualizar el estado del producto.
Pruebas del endpoint:
Probar que el endpoint funcione correctamente utilizando herramientas como Postman. Verificar que:
Se marque correctamente un producto como "destacado".
Devuelva un error si el producto no existe.
Documentación:
Actualizar la documentación de la API para incluir el nuevo endpoint /api/product/{id}/feature, describiendo su funcionalidad y los parámetros de entrada.
Criterios de aceptación:
El endpoint debe permitir marcar un producto como "destacado".
Debe manejar adecuadamente los casos en que el producto no exista.
El código debe seguir las mejores prácticas de desarrollo en Spring Boot.
Issue Title: Implementar endpoint para marcar un producto como "destacado"
Descripción: Desarrollar un nuevo endpoint que permita marcar un producto como "destacado". Esto actualizará un campo en la base de datos que indicará que el producto debe recibir mayor visibilidad en las búsquedas o en el catálogo.
Tareas a realizar:
Crear el endpoint en el controlador:
ProductController
para manejar las solicitudes POST al endpoint/api/product/{id}/feature
.Definir el cuerpo de la solicitud:
Implementar el servicio:
IProductService
que marque el producto como "destacado" si existe. Esto podría implicar actualizar un campo en la entidadProduct
.Actualizar el repositorio si es necesario:
IProductRepository
tenga un método adecuado para actualizar el estado del producto.Pruebas del endpoint:
Documentación:
/api/product/{id}/feature
, describiendo su funcionalidad y los parámetros de entrada.Criterios de aceptación: