Closed diagutierrezro closed 1 month ago
Se tenia dos soluciones, una en la cual se usaba la palabra clave LIKE para ser usaba en la BD y la otra solución es con el ORM de beego, entonces se opto por la solución con el ORM que tiene la misma función de la palabra LIKE.
Se modifico el menor código posible y sin alterar la lógica ya establecida, se agrego código en la función "GetAllDependencia" en el archivo "dependencia.go" el cual es el model, en donde se apunta a la BD.
El endpoint al que se apunta es "http://localhost:8080/v2/dependencia" con el método http GET, el cual trae todos los datos que tengan los parametros de busqueda.
Se hace una busqueda de la dependencia con nombre "SECRETARIA GENERAL", cono solo hay un registro en la BD con este nombre, solo me trae una dependencia:
Y si buscamos solo una parte del nombre como "SECRETAR", me busca todos los datos en la BD que en el nombre de la depedencia tenga esa parte:
el json que trae es el siguiente, donde se muestra que en el nombre de la depencia tiene la palabra que buscamos:
[ { "Id": 9, "Nombre": "SECRETARIA GENERAL", "TelefonoDependencia": "3239300 Secretaria: 1016 - Asistente Académico 1018 - Asesor Administrativo 1019 - Asistente Web 1013- Foro abierto 1020 - Fax 1023", "CorreoElectronico": "sgral@udistrital.edu.co websgral@udistrital.edu.co", "Activo": true, "FechaCreacion": "2022-07-06T14:45:10.995513-05:00", "FechaModificacion": "2022-07-06T14:45:10.995513-05:00", "DependenciaTipoDependencia": [ { "Id": 3, "TipoDependenciaId": { "Id": 11, "Nombre": "ENTIDAD", "Descripcion": "", "CodigoAbreviacion": "", "Activo": true, "FechaCreacion": "2022-07-06T14:43:19.205677-05:00", "FechaModificacion": "2022-07-06T14:43:19.205677-05:00" }, "DependenciaId": { "Id": 9, "Nombre": "SECRETARIA GENERAL", "TelefonoDependencia": "3239300 Secretaria: 1016 - Asistente Académico 1018 - Asesor Administrativo 1019 - Asistente Web 1013- Foro abierto 1020 - Fax 1023", "CorreoElectronico": "sgral@udistrital.edu.co websgral@udistrital.edu.co", "Activo": true, "FechaCreacion": "2022-07-06T14:45:10.995513-05:00", "FechaModificacion": "2022-07-06T14:45:10.995513-05:00", "DependenciaTipoDependencia": null }, "Activo": true, "FechaCreacion": "2022-07-06T14:48:47.28491-05:00", "FechaModificacion": "2022-07-06T14:48:47.28491-05:00" } ] }, { "Id": 104, "Nombre": "SECRETARIA ACADEMICA FACULTAD DE CIENCIAS Y EDUCACION", "TelefonoDependencia": "2869666 - 3239300 3013 - 3020", "CorreoElectronico": "sciencias@udistrital.edu.co", "Activo": true, "FechaCreacion": "2022-07-06T14:45:10.995513-05:00", "FechaModificacion": "2022-07-06T14:45:10.995513-05:00", "DependenciaTipoDependencia": [ { "Id": 98, "TipoDependenciaId": { "Id": 11, "Nombre": "ENTIDAD", "Descripcion": "", "CodigoAbreviacion": "", "Activo": true, "FechaCreacion": "2022-07-06T14:43:19.205677-05:00", "FechaModificacion": "2022-07-06T14:43:19.205677-05:00" }, "DependenciaId": { "Id": 104, "Nombre": "SECRETARIA ACADEMICA FACULTAD DE CIENCIAS Y EDUCACION", "TelefonoDependencia": "2869666 - 3239300 3013 - 3020", "CorreoElectronico": "sciencias@udistrital.edu.co", "Activo": true, "FechaCreacion": "2022-07-06T14:45:10.995513-05:00", "FechaModificacion": "2022-07-06T14:45:10.995513-05:00", "DependenciaTipoDependencia": null }, "Activo": true, "FechaCreacion": "2022-07-06T14:48:47.28491-05:00", "FechaModificacion": "2022-07-06T14:48:47.28491-05:00" } ] }, { "Id": 105, "Nombre": "SECRETARIA ACADEMICA FACULTAD DE INGENIERIA", "TelefonoDependencia": "3239300 Secretaria: 1517- Asistente 1513", "CorreoElectronico": "secing@udistrital.edu.co", "Activo": true, "FechaCreacion": "2022-07-06T14:45:10.995513-05:00", "FechaModificacion": "2022-07-06T14:45:10.995513-05:00", "DependenciaTipoDependencia": [ { "Id": 99, "TipoDependenciaId": { "Id": 11, "Nombre": "ENTIDAD", "Descripcion": "", "CodigoAbreviacion": "", "Activo": true, "FechaCreacion": "2022-07-06T14:43:19.205677-05:00", "FechaModificacion": "2022-07-06T14:43:19.205677-05:00" }, "DependenciaId": { "Id": 105, "Nombre": "SECRETARIA ACADEMICA FACULTAD DE INGENIERIA", "TelefonoDependencia": "3239300 Secretaria: 1517- Asistente 1513", "CorreoElectronico": "secing@udistrital.edu.co", "Activo": true, "FechaCreacion": "2022-07-06T14:45:10.995513-05:00", "FechaModificacion": "2022-07-06T14:45:10.995513-05:00", "DependenciaTipoDependencia": null }, "Activo": true, "FechaCreacion": "2022-07-06T14:48:47.28491-05:00", "FechaModificacion": "2022-07-06T14:48:47.28491-05:00" } ] }, { "Id": 106, "Nombre": "SECRETARIA ACADEMICA FACULTAD DEL MEDIO AMBIENTE Y RECURSOS NATURALES", "TelefonoDependencia": "3239300 - 3376735 4031", "CorreoElectronico": "secmedioamb@udistrital.edu.co", "Activo": true, "FechaCreacion": "2022-07-06T14:45:10.995513-05:00", "FechaModificacion": "2022-07-06T14:45:10.995513-05:00", "DependenciaTipoDependencia": [ { "Id": 100, "TipoDependenciaId": { "Id": 11, "Nombre": "ENTIDAD", "Descripcion": "", "CodigoAbreviacion": "", "Activo": true, "FechaCreacion": "2022-07-06T14:43:19.205677-05:00", "FechaModificacion": "2022-07-06T14:43:19.205677-05:00" }, "DependenciaId": { "Id": 106, "Nombre": "SECRETARIA ACADEMICA FACULTAD DEL MEDIO AMBIENTE Y RECURSOS NATURALES", "TelefonoDependencia": "3239300 - 3376735 4031", "CorreoElectronico": "secmedioamb@udistrital.edu.co", "Activo": true, "FechaCreacion": "2022-07-06T14:45:10.995513-05:00", "FechaModificacion": "2022-07-06T14:45:10.995513-05:00", "DependenciaTipoDependencia": null }, "Activo": true, "FechaCreacion": "2022-07-06T14:48:47.28491-05:00", "FechaModificacion": "2022-07-06T14:48:47.28491-05:00" } ] }, { "Id": 107, "Nombre": "SECRETARIA ACADEMICA FACULTAD TECNOLOGICA", "TelefonoDependencia": "3239300 5000", "CorreoElectronico": "sec-tecnologica@udistrital.edu.co", "Activo": true, "FechaCreacion": "2022-07-06T14:45:10.995513-05:00", "FechaModificacion": "2022-07-06T14:45:10.995513-05:00", "DependenciaTipoDependencia": [ { "Id": 101, "TipoDependenciaId": { "Id": 11, "Nombre": "ENTIDAD", "Descripcion": "", "CodigoAbreviacion": "", "Activo": true, "FechaCreacion": "2022-07-06T14:43:19.205677-05:00", "FechaModificacion": "2022-07-06T14:43:19.205677-05:00" }, "DependenciaId": { "Id": 107, "Nombre": "SECRETARIA ACADEMICA FACULTAD TECNOLOGICA", "TelefonoDependencia": "3239300 5000", "CorreoElectronico": "sec-tecnologica@udistrital.edu.co", "Activo": true, "FechaCreacion": "2022-07-06T14:45:10.995513-05:00", "FechaModificacion": "2022-07-06T14:45:10.995513-05:00", "DependenciaTipoDependencia": null }, "Activo": true, "FechaCreacion": "2022-07-06T14:48:47.28491-05:00", "FechaModificacion": "2022-07-06T14:48:47.28491-05:00" } ] }, { "Id": 124, "Nombre": "SECRETARIA ACADEMICA FACULTAD DE ARTES - ASAB", "TelefonoDependencia": "2828220 - 3239300 6607", "CorreoElectronico": "secasab@udistrital.edu.co", "Activo": true, "FechaCreacion": "2022-07-06T14:45:10.995513-05:00", "FechaModificacion": "2022-07-06T14:45:10.995513-05:00", "DependenciaTipoDependencia": [ { "Id": 118, "TipoDependenciaId": { "Id": 11, "Nombre": "ENTIDAD", "Descripcion": "", "CodigoAbreviacion": "", "Activo": true, "FechaCreacion": "2022-07-06T14:43:19.205677-05:00", "FechaModificacion": "2022-07-06T14:43:19.205677-05:00" }, "DependenciaId": { "Id": 124, "Nombre": "SECRETARIA ACADEMICA FACULTAD DE ARTES - ASAB", "TelefonoDependencia": "2828220 - 3239300 6607", "CorreoElectronico": "secasab@udistrital.edu.co", "Activo": true, "FechaCreacion": "2022-07-06T14:45:10.995513-05:00", "FechaModificacion": "2022-07-06T14:45:10.995513-05:00", "DependenciaTipoDependencia": null }, "Activo": true, "FechaCreacion": "2022-07-06T14:48:47.28491-05:00", "FechaModificacion": "2022-07-06T14:48:47.28491-05:00" } ] }, { "Id": 241, "Nombre": "SECRETARIA ACADEMICA - FACULTAD CIENCIAS MATEMÁTICAS Y NATURALES", "TelefonoDependencia": "3239300 3802", "CorreoElectronico": "seccienciasmatynat@udistrital.edu.co", "Activo": true, "FechaCreacion": "2023-02-03T11:44:13.609373-05:00", "FechaModificacion": "2023-02-03T11:44:13.609373-05:00", "DependenciaTipoDependencia": [] } ]
Muy buen trabajo Julian.
Se requiere realizar el ajuste en el CRUD de Oikos de tal manera que este realice la consulta hacia la DB, un ejemplo de la consulta que realiza la DB puede ser un
select oikos.dependencia WHERE nombre like %artes%;
lo que trae como respuesta todos los strings que contengan dicha palabra, esto es una opción, pero si se encuentra alguna manera en la que ya lo genere el ORM de beego preferible optar por esa opción.Sub Tareas
Criterios de aceptación
Requerimientos
No aplica
Definition of Ready - DoR
Definition of Done - DoD - Desarrollo