udistrital / planeacion_cliente

:heavy_check_mark: Check: Cliente del proyecto de planeación de la universidad Distrital
0 stars 0 forks source link

Bug - Fallo en lectura de fechas habilitadas en seguimiento (toma las fechas del primer plan de acción asociado a la unidad y vigencia, y no las fechas del plan seleccionado) PT2 #1023

Closed milo19980525 closed 4 months ago

milo19980525 commented 4 months ago

Se requiere continuar con el ajuste realizado en #1004 relacionado con la lectura de fechas de planes de acción en formulación y seguimiento, además, de la actualización de las mismas en el módulo de administración.

Especificaciones técnicas

Sub Tareas

Criterios de aceptación

Requerimientos

No aplica

Definition of Ready - DoR

Definition of Done - DoD - Desarrollo

ccmendezt commented 4 months ago

Evidencias - Avance Fallo en lectura de fechas habilitadas en seguimiento

04/05/2024 - 9:30 am

Y esta es la prueba funcional mediante Postman: put_registro_seguimiento

Notas Importantes

ccmendezt commented 4 months ago

Evidencias - Avance Fallo en lectura de fechas habilitadas en seguimiento

06/05/2024 - 17:40

Prueba funcional:

prueba_funcional_script_migracion.zip

En el gif anterior se evidencia:

  1. En primer lugar solo hay 8 registros de periodo-seguimiento, y muestra los registros de los planes en la base de datos.
  2. Ejecuta el script y muestra la salida por consola que arroja el mismo:
1. Obteniendo plan de acción formato

Conectado correctamente al servidor de MongoDB
Formato Seleccionado:  {
  _id: new ObjectId('64e626aeae466972ad073ae3'),
  nombre: 'Plan de Acción 2024'
}
Cerrando conexión a la base de datos

4. Actualizando planes de acción con el formato obtenido

Conectado correctamente al servidor de MongoDB
38 documentos actualizados
Cerrando conexión a la base de datos

5. Obteniendo unidades de interés

Unidades de interés obtenidas:  80
[{"Id":8,"Nombre":"VICERRECTORIA ACADEMICA"},{"Id":14,"Nombre":"FACULTAD DE INGENIERIA"},{"Id":17,"Nombre":"FACULTAD DE CIENCIAS Y EDUCACION"},{"Id":35,"Nombre":"FACULTAD DE ARTES -  ASAB"},{"Id":65,"Nombre":"FACULTAD DE MEDIO AMBIENTE"},{"Id":66,"Nombre":"FACULTAD TECNOLOGICA"},{"Id":232,"Nombre":"FACULTAD DE CIENCIAS MATEMATICAS Y NATURALES"},{"Id":272,"Nombre":"FACULTAD DE CIENCIAS DE LA SALUD"},{"Id":36,"Nombre":"COORDINACION GENERAL DE AUTOEVALUACION Y ACREDITACION"},{"Id":129,"Nombre":"COORDINACION DE LABORATORIOS FACULTAD DEL MEDIO AMBIENTE"},{"Id":130,"Nombre":"COORDINACION DE AUTOEVALUACION Y ACREDITACION FACULTAD DEL MEDIO AMBIENTE"},{"Id":153,"Nombre":"COORDINACION DE AUTOEVALUACION Y ACREDITACION FACULTAD DE CIENCIAS Y EDUCACION"},{"Id":154,"Nombre":"COORDINACION DE AUTOEVALUACION Y ACREDITACION FACULTAD TECNOLOGICA"},{"Id":158,"Nombre":"COORDINACION DE AUTOEVALUACION Y ACREDITACION FACULTAD DE INGENIERIA"},{"Id":165,"Nombre":"COORDINACION DE LABORATORIOS - FACULTAD DE ARTES ASAB"},{"Id":8,"Nombre":"VICERRECTORIA ACADEMICA"},{"Id":15,"Nombre":"VICERRECTORIA ADMINISTRATIVA Y FINANCIERA"},{"Id":33,"Nombre":"OFICINA ASESORA JURIDICA"},{"Id":122,"Nombre":"OFICINA ASESORA DE SISTEMAS"},{"Id":10,"Nombre":"OFICINA ASESORA DE ASUNTOS DISCIPLINARIOS"},{"Id":11,"Nombre":"OFICINA ASESORA DE PLANEACION Y CONTROL"},{"Id":32,"Nombre":"OFICINA ASESORA DE CONTROL INTERNO"},{"Id":93,"Nombre":"OFICINA DE QUEJAS, RECLAMOS Y ATENCION AL CIUDADANO"},{"Id":253,"Nombre":"OFICINA DE CONTROL INTERNO DISCIPLINARIO"},{"Id":254,"Nombre":"OFICINA ASESORA DE TECNOLOGÍAS E INFORMACIÓN"},{"Id":255,"Nombre":"OFICINA ASESORA DE PLANEACIÓN"},{"Id":256,"Nombre":"OFICINA DE CONTROL INTERNO"},{"Id":260,"Nombre":"UNIDAD DE QUEJAS, RECLAMOS Y ATENCIÓN AL CIUDADANO"},{"Id":20,"Nombre":"DIVISION DE RECURSOS HUMANOS"},{"Id":46,"Nombre":"DOCENCIA"},{"Id":7,"Nombre":"RECTORIA"},{"Id":126,"Nombre":"ACADEMIA LUIS A. CALVO - ALAC"},{"Id":44,"Nombre":"DIVISION DE RECURSOS FINANCIEROS"},{"Id":45,"Nombre":"DIVISION DE RECURSOS FISICOS"},{"Id":264,"Nombre":"OFICINA FINANCIERA"},{"Id":265,"Nombre":"OFICINA DE INFRAESTRUCTURA"},{"Id":94,"Nombre":"CENTRO DE RELACIONES INTERINSTITUCIONALES"},{"Id":95,"Nombre":"RED DE DATOS UDNET"},{"Id":43,"Nombre":"CENTRO DE INVESTIGACIONES Y DESARROLLO CIENTIFICO"},{"Id":41,"Nombre":"CENTRO DE BIENESTAR INSTITUCIONAL"},{"Id":257,"Nombre":"UNIDAD DE RELACIONES INTERNACIONALES E INTERINSTITUCIONALES"},{"Id":258,"Nombre":"UNIDAD DE RED DE DATOS UDNET"},{"Id":261,"Nombre":"OFICINA DE INVESTIGACIONES"},{"Id":262,"Nombre":"OFICINA DE BIENESTAR UNIVERSITARIO"},{"Id":67,"Nombre":"INSTITUTO DE LENGUAS - ILUD"},{"Id":81,"Nombre":"INSTITUTO DE ESTUDIOS E INVESTIGACIONES EDUCATIVAS - IEIE"},{"Id":82,"Nombre":"IPAZUD"},{"Id":12,"Nombre":"IDEXUD"},{"Id":117,"Nombre":"UNIDAD DE EXTENSION FACULTAD DE CIENCIAS Y EDUCACION"},{"Id":118,"Nombre":"UNIDAD DE EXTENSION FACULTAD DE INGENIERIA"},{"Id":119,"Nombre":"UNIDAD DE EXTENSION FACULTAD DEL MEDIO AMBIENTE"},{"Id":120,"Nombre":"UNIDAD DE EXTENSION FACULTAD TECNOLOGICA"},{"Id":144,"Nombre":"UNIDAD DE EXTENSION FACULTAD DE ARTES - ASAB"},{"Id":164,"Nombre":"UNIDAD DE INVESTIGACIONES - FACULTAD TECNOLOGICA"},{"Id":167,"Nombre":"RED DE INVESTIGACIONES DE TECNOLOGIA AVANZADA RITA"},{"Id":168,"Nombre":"UNIDAD DE INVESTIGACIONES FACULTAD DE INGENIERIA"},{"Id":125,"Nombre":"DOCTORADO INTERINSTITUCIONAL EN EDUCACION"},{"Id":150,"Nombre":"DOCTORADO EN INGENIERIA"},{"Id":170,"Nombre":"DOCTORADO EN ESTUDIOS SOCIALES"},{"Id":208,"Nombre":"DOCTORADO EN ESTUDIOS ARTISTICOS"},{"Id":9,"Nombre":"SECRETARIA GENERAL"},{"Id":104,"Nombre":"SECRETARIA ACADEMICA FACULTAD DE CIENCIAS Y EDUCACION"},{"Id":105,"Nombre":"SECRETARIA ACADEMICA FACULTAD DE INGENIERIA"},{"Id":106,"Nombre":"SECRETARIA ACADEMICA FACULTAD DEL MEDIO AMBIENTE Y RECURSOS NATURALES"},{"Id":107,"Nombre":"SECRETARIA ACADEMICA FACULTAD TECNOLOGICA"},{"Id":124,"Nombre":"SECRETARIA ACADEMICA FACULTAD DE ARTES - ASAB"},{"Id":1,"Nombre":"UNIVERSIDAD DISTRITAL FRANCISCO JOSE DE CALDAS"},{"Id":2,"Nombre":"RECTOR"},{"Id":3,"Nombre":"CONVENIOS"},{"Id":172,"Nombre":"OFICINA SE ADMISIONES"},{"Id":222,"Nombre":"SUBSISTEMA DE LA SEGURIDAD Y SALUD EN EL TRABAJO SG-SST"},{"Id":270,"Nombre":"OFICINA DE TALENTO HUMANO"},{"Id":269,"Nombre":"OFICINA DE CONTRATACION"},{"Id":171,"Nombre":"PROYECTO PLANESTIC-UD"},{"Id":96,"Nombre":"SECCION BIBLIOTECA"},{"Id":222,"Nombre":"SUBSISTEMA DE LA SEGURIDAD Y SALUD EN EL TRABAJO SG-SST"},{"Id":97,"Nombre":"SECCION DE ACTAS, ARCHIVO Y MICROFILMACION"},{"Id":209,"Nombre":"INSTITUTO DE INVESTIGACIÓN E INNOVACIÓN EN INGENERÍA -I3+"},{"Id":92,"Nombre":"SECCION DE PUBLICACIONES"},{"Id":42,"Nombre":"CATEDRA UNESCO EN DESARROLLO DEL NINO"}]

6. Insertando periodos de seguimiento

Conectado correctamente al servidor de MongoDB
Documentos Insertados:  4
Cerrando conexión a la base de datos

7. Obteniendo planes de acción avalados con nueva estructura

Conectado correctamente al servidor de MongoDB
Planes Seleccionados:  24
Cerrando conexión a la base de datos

8. Obteniendo seguimientos de planes de acción avalados

Conectado correctamente al servidor de MongoDB
Seguimientos Seleccionados:  92
Cerrando conexión a la base de datos

9. Actualizando seguimientos de planes de acción avalados

Conectado correctamente al servidor de MongoDB
Seguimientos Actualizados:  92
Cerrando conexión a la base de datos
  1. Vuelve a revisar los registros de periodo-seguimiento y encuentra que hay 12 en lugar de 8. Se agregaron 4 registros teniendo en cuenta el formato_id seleccionado y las 80 unidades de interés obtenidas, además de el parámetro nueva_estructura en true.
  2. Revisa los registros de seguimiento filtrando por uno de los nuevos id creados en el paso anterior y encuentra que hay 23 registros, es decir, hay 23 registros de seguimientos de planes avalados para un trimestre y así se evidencia que se editaron correctamente los registros.

Notas importantes

  1. Para ejecutar el script se deben realizar una serie de pasos previos: i. Revisar la versión de node instalada en el dispositivo que ejecutará el script. Las pruebas del script se realizaron con la versión 18.18.2 por lo que es la recomendada. ii. Ejecutar el comando npm install dotenv axios mongodb iii. Ajustar las variables de entorno en el archivo .env (Dentro del comprimido del script se encuentra un archivo .env.example para conocer la estructura de las variables de entorno) iv. Comentar el string de conexion a la base de datos en la línea 42 y descomentar el de la línea 41 (Debido a que la base de datos usada en local no tiene credenciales de inicio de sesión para efectos prácticos)
  2. Una vez realizados los 4 pasos anteriores, ya puede ejecutar el script.
  3. Se debe tener en cuenta que en producción hay 24 planes activos y avalados para la vigencia 2024, solo que el plan con id: 6633b9faa9c7304d9760388f se encuentra avalado y activo para la vigencia 2024 pero NO cuenta con registros en la tabla de Seguimiento, así que es importante evaluar con el SM lo que se debe realizar en ese caso por separado para revisar si se hacen o no modificaciones al código para tener en cuenta el caso en cuestión. Entonces como cada plan avalado tiene 4 registros de seguimientos asociados al mismo, se espera modificar 92 registros en seguimiento porque los 4 del plan con id: 6633b9faa9c7304d9760388f no existen.
  4. Script: ScriptMongo.zip
ccmendezt commented 4 months ago

Evidencias - Avance Fallo en lectura de fechas habilitadas en seguimiento

06/05/2024 - 17:40

Estos cambios se probaron con la copia de la base de datos de Producción y se evidencia el correcto funcionamiento del código implementado en planeacion_mid. No fue posible probar desde el rol Unidad del ILUD porque solo hay 2 usuarios de prueba y ninguno de ellos es para dicha unidad. Pero se probó el correcto funcionamiento apuntando a la base de datos de desarrollo en el siguiente video:

Notas importantes

  1. Para poder probar con los datos de producción me tocó modificar el campo vigencia de los planes avalados, anteriormente estaba en 32 pero me tocó cambiarlo a 39 debido a que los id's de las vigencias 2024 no coinciden en Desarrollo y Producción.
  2. También cambié el periodo_id de los 4 registros de seguimiento que en producción van desde el 400 al 403 para los 4 trimestres desde el 1632 al 1635.

Si no realizaba estos cambios, no podría probar el correcto funcionamiento del código ya que aunque apunte a las vigencias y trimestres por código de abreviación, los ID's siempre serán distintos y la base de datos es NoSQL por lo que jamás encontrará registros de planes con la vigencia de producción ni registros de periodo-seguimiento con los periodo_id de producción.

  1. Probando con la base de datos de desarrollo todo funciona correctamente.
ccmendezt commented 4 months ago

Pull Request Asociados a Issue

06/05/2024 - 18:10

Ni en el Cliente ni en la API CRUD se realizaron más cambios, únicamente los abordados en la parte 1 de esta issue.