udistrital / titan_api_crud

:heavy_check_mark: Check: API CRUD del liquidador de nominas (TITAN)
0 stars 1 forks source link

Desacoplar Crud #75

Open Jorgec815 opened 3 years ago

Jorgec815 commented 3 years ago

Se necesita separar las tablas necesarias para el funcionamiento del crud de TITAN y colocarlas en un schema nuevo y así eliminar endpoints innecesarios

Jorgec815 commented 3 years ago

Se creó de forma local el schema titan_preliquidacion que contiene las siguientes tablas:

Para la creación de la base de datos se mantuvo el modelo existente, incluyendo los campos y los tipos de datos, sin embargo, a algunas tablas se les realizaron modificaciones en los nombres de algunas columnas para ajustarlas a los lineamientos (ej: nomina pasó a ser nomina_id), además de eso se agregaron columnas nuevas, las cuales fueron fecha_registro, fecha_modificacion, activo (solo en algunos casos) y a la tabla detalle_preliquidacion se le agregó la columna dependencia_id (se permite que el campo sea NULL de forma temporal).

Se mantuvieron los registros ya existentes en las tablas del schema administrativa, únicamente en la tabla detalle_preliquidacion no se pasaron todos los registros sino unos pocos para poder efectuar pruebas.

image antes: image

después: image

Jorgec815 commented 3 years ago

En cuanto a la migración:

Como no se tenía un archivo claro ni ordenado en cuanto a la migración de la base de datos dentro del repo de tita_api_mid se realizó uno nuevo desde cero siguiendo los pasos que se encuentran en los lineamientos, obteniendo el siguiente resultado:

image

Como se aprecia en la imagen se crearon dos scripts que como sus nombres los indican, uno crea las tablas necesarias y el otro inserta los datos dentro de las mismas.

Jorgec815 commented 3 years ago

Después de aplicar los refactors requeridos, además de solucionar pequeños problemas surgidos durante la creación del api, se tiene un api_crud funcional

image

Se comprobó el método GET (tanto GETONE como GETALL) en todas las tablas

Método GET en la tabla nomina: image

Comprobar los métodos POST, PUT y DELETE en todas las tablas

Jorgec815 commented 3 years ago

Se usaron los comando para correr la migración y funciona correctamente, tanto el bee migrate como el bee migrate rollback image

Sin embargo el crud presenta un problema al realizar un put, debido a que no reconoce la fecha de modificación por más de que se cambie directamente en el crud o se le envié como parámetro desde el mid o el cliente.

image

Como se puede apreciar el update toma todas las columnas correspondientes a excepción de la Fecha de Modificacion