Closed diagutierrezro closed 3 months ago
SubTarea N°1: Apropiación de la herramienta excelize.
Repositorio Oficial
https://github.com/qax-os/excelize?tab=readme-ov-file
Documentación
https://xuri.me/excelize/es/base/installation.html
Fuentes de Referencia
Instalación
Modelo
Este es un ejemplo básico del equivalente a los Modelos que tenemos en 'polux_crud', aquí simplemente tenemos la estructura del objeto con el que queremos trabajar:
Función del Modelo
Aquí tenemos un ejemplo de una función que se colocaría en el Modelo y la cuál debería ser invocada por el Controlador (donde se envían los parametros a dicha función), en este punto y gracias al ORM se realiza la consulta SQL a la base de datos y en cada fila retornada recorremos sus columnas para agregar cada dato a nuestra estructura del modelo:
Esta estructura es retornada para que posteriormente se use en la función encargada de realizar el reporte en Excel.
Controlador
Del siguiente fragmento de código se toma en cuenta la importación del Modelo y la invocación de su función en la línea 15 donde se pasa los parámetros requeridos por la misma.
Función que construye el archivo de Excel
Inicialmente se importa Excelize, se recibe la estructura del modelo como parametro, se construye los Headers que tendrá el Excel (los títulos de las columnas del Excel), junto a su respectivo número de celda y finalmente se asigna a la hoja de cálculo.
Posteriormente, se recorre el número de objetos que tenga nuestra estructura del modelo y se llama a la función 'appendRow' la cuál es la encargada de colocar cada dato de cada objeto, en cada fila y columna correspondiente en el Excel.
Finalmente indicamos la ruta en la que se quiere guardar el archivo junto a su extensión y se guarda el archivo en dicha ruta con el método 'SaveAs'.
Se realiza implementación inicial de excelize en otro issue.
Se requiere realizar la apropiación de la herramienta excelize la cual se implementa en GO y con la que se buscan realizar los reportes requeridos por el usuario.
Sub Tareas
Criterios de aceptación
Requerimientos
No aplica
Definition of Ready - DoR
Definition of Done - DoD - Desarrollo