Issue Title: Implementar endpoint para marcar una orden de compra como "completada"
Descripción:
Desarrollar un nuevo endpoint que permita marcar una orden de compra como completada. Acepta el id de la orden de compra en la URL y un objeto que contenga detalles adicionales sobre la finalización de la orden. Esto puede ser útil para el seguimiento del estado de las órdenes de compra.
Tareas a realizar:
Crear el endpoint en el controlador:
Desarrollar un método en OrdenCompraController para manejar las solicitudes POST al endpoint /ordenesCompra/{id}/marcarComoCompletada.
Definir el cuerpo de la solicitud:
Crear una clase DTO que contenga campos para detalles adicionales sobre la finalización de la orden, como el comentario del empleado o la fecha de finalización.
Implementar el servicio:
Crear un método en IOrdenCompraService que marque la orden de compra como completada si existe y registre los detalles proporcionados en el cuerpo de la solicitud.
Actualizar el repositorio si es necesario:
Asegurarse de que el repositorio OrdenCompraRepository tenga un método adecuado para actualizar el estado de la orden de compra y registrar los detalles de finalización.
Pruebas del endpoint:
Probar que el endpoint funcione correctamente utilizando herramientas como Postman. Verificar que:
Se marque correctamente una orden de compra como completada.
Se registren los detalles adicionales.
Devuelva un error si la orden de compra no existe.
Documentación:
Actualizar la documentación de la API para incluir el nuevo endpoint /ordenesCompra/{id}/marcarComoCompletada, describiendo su funcionalidad y los parámetros de entrada.
Criterios de aceptación:
El endpoint debe permitir marcar una orden de compra como completada.
Debe manejar adecuadamente los casos en que la orden de compra no exista.
El código debe seguir las mejores prácticas de desarrollo en Spring Boot.
Issue Title: Implementar endpoint para marcar una orden de compra como "completada"
Descripción:
Desarrollar un nuevo endpoint que permita marcar una orden de compra como completada. Acepta el
id
de la orden de compra en la URL y un objeto que contenga detalles adicionales sobre la finalización de la orden. Esto puede ser útil para el seguimiento del estado de las órdenes de compra.Tareas a realizar:
Crear el endpoint en el controlador:
OrdenCompraController
para manejar las solicitudes POST al endpoint/ordenesCompra/{id}/marcarComoCompletada
.Definir el cuerpo de la solicitud:
Implementar el servicio:
IOrdenCompraService
que marque la orden de compra como completada si existe y registre los detalles proporcionados en el cuerpo de la solicitud.Actualizar el repositorio si es necesario:
OrdenCompraRepository
tenga un método adecuado para actualizar el estado de la orden de compra y registrar los detalles de finalización.Pruebas del endpoint:
Documentación:
/ordenesCompra/{id}/marcarComoCompletada
, describiendo su funcionalidad y los parámetros de entrada.Criterios de aceptación: