Como desarrollador, necesito crear una tabla para gestionar las instituciones, de forma que se puedan almacenar y consultar las distintas instituciones y sus ubicaciones.
Criterios de Aceptación:
1. Crear la tabla instituciones en la base de datos MySQL desde Java usando JPA.
La tabla debe incluir los siguientes campos:
id INT AUTO_INCREMENT PRIMARY KEY
nombre VARCHAR(255) NOT NULL
direccion VARCHAR(255)
region_id INT (con llave foránea que referencia a la tabla ubicacion_region)
2. Implementar las operaciones CRUD para la tabla instituciones:
Crear una nueva institución.
Leer (listar) todas las instituciones.
Actualizar una institución existente.
Eliminar una institución.
3. Crear los DTOs (Data Transfer Objects) necesarios para instituciones:
NoIdDTO (Para llaves foráneas): Este DTO solo traerá el id de la región y será utilizado en tablas relacionadas que necesiten una referencia a la región mediante una llave foránea.
JustIdDTO (Para creación y actualización): Este DTO traerá todos los campos de la institución excepto el id, ya que el id es autogenerado. Este DTO se usará en las operaciones de creación y actualización de una institución.
4. Verificación de llaves foráneas:
Validar la correcta relación entre instituciones y ubicacion_region mediante llaves foráneas, asegurándose de que las restricciones y las relaciones se establezcan correctamente.
5. Documentación con Swagger:
Incluir la documentación de todos los endpoints disponibles para las operaciones CRUD de la tabla instituciones.
6. Testing de la API con Postman:
Probar los endpoints CRUD de instituciones utilizando Postman.
Incluir capturas de pantalla de las pruebas realizadas.
Puntos de Historia de Usuario
Complejidad: 10 puntos
2 puntos para la creación de la tabla en la base de datos.
2 puntos para la implementación de la lógica CRUD.
2 puntos para la verificación de las llaves foráneas y las relaciones entre tablas.
1 punto para la creación de los endpoints REST.
2 puntos para la creación de los dos DTOs y su integración en el código.
1 punto para el manejo de errores y validaciones.
Notas
Validar que se utilicen correctamente los DTOs en los endpoints.
Verificar la relación entre instituciones y ubicacion_region mediante las llaves foráneas.
Se debe incluir un manejo adecuado de errores, como la validación de solicitudes inválidas y el manejo de instituciones no encontradas.
Las pruebas unitarias y de integración deben asegurarse de que todas las funcionalidades se comporten como se espera.
La historia de usuario se debe trabajar en la siguiente ruta:
Historia de Usuario: Tabla de Instituciones
Como desarrollador, necesito crear una tabla para gestionar las instituciones, de forma que se puedan almacenar y consultar las distintas instituciones y sus ubicaciones.
Criterios de Aceptación:
1. Crear la tabla instituciones en la base de datos MySQL desde Java usando JPA.
La tabla debe incluir los siguientes campos:
2. Implementar las operaciones CRUD para la tabla instituciones:
3. Crear los DTOs (Data Transfer Objects) necesarios para instituciones:
id
de la región y será utilizado en tablas relacionadas que necesiten una referencia a la región mediante una llave foránea.id
, ya que elid
es autogenerado. Este DTO se usará en las operaciones de creación y actualización de una institución.4. Verificación de llaves foráneas:
Validar la correcta relación entre instituciones y ubicacion_region mediante llaves foráneas, asegurándose de que las restricciones y las relaciones se establezcan correctamente.
5. Documentación con Swagger:
Incluir la documentación de todos los endpoints disponibles para las operaciones CRUD de la tabla instituciones.
6. Testing de la API con Postman:
Puntos de Historia de Usuario
Complejidad: 10 puntos
Notas