Gadget CRUD
Disponible desde la versión 3.3.0-Moonwalker
Introducción
Esta funcionalidad permite crear gadgets que ofrecen la funcionalidad CRUD (Create, Read, Update y Delete) sobre una Entidad sin tener que programar nada. La funcionalidad permite crear, editar, borrar y buscar elementos además de la exportación del listado a CSV.
Este Gadget se ha construido como Gadget Template (sobre Vue y la librería Elements) y sirve como interfaz de usuario para facilitar la vista, búsqueda y modificación de la información de las entidades de la Plataforma desde un Dashboard.
Configuraciones de la plantilla disponibles
Por defecto, tiene pre-configurados tres tipos de vista en función del valor que se le asigne al parámetro typeGadget
.
Estas vistas están diseñadas para el tipo de uso al que está destinado:
typeGadget «withWizard»: mostrará el asistente completo como en la imagen superior para poder realizar búsquedas en la Entidad, definiendo clausulas para el where, order by un máximo de valores y un offset. Este tipo está más encaminado al uso por parte de un rol tipo administrador, que tenga conocimientos técnicos para saber qué es un where, etc.
typeGadget «searchOnly»: mostrará el asistente parcialmente para poder realizar búsquedas en la entidad definiendo únicamente clausulas para el where. Este tipo está más encaminado al uso por parte de un rol usuario que necesite precisar filtros en las consultas a los datos.
typeGadget «noWizard»: con esta opción, no se muestra el asistente. En este caso, la plantilla está encaminado al uso de un usuario final, facilitando una herramienta sencilla para poder manipular y consultar datos de sus entidades.
hideIdColumn: además, se puede indicar en los parámetros de la plantilla si se prefiere que se muestre la columna con los identificadores o no.
hideIdColumn: false, // show or hide id column
Elementos de la plantilla
Selector de Entidad: sobre la que van a realizarse las operaciones CRUD.
Interruptor que muestra u oculta el asistente.
Asistente para realizar consultas sobre los registros de la Entidad.
Formulario para añadir elementos al
where
en la consulta:
Formulario para añadir elementos a la ordenación de la consulta.
Buscador para los registros de la tabla.
Botón que permite descargar los registros en formato CSV o JSON. Da la opción de descargar todos los registros de la entidad o sólo los seleccionados si se ha hecho una búsqueda previa desde el asistente.
Un ejemplo de CSV descargado es el siguiente:
En caso de que se descargue como JSON, se presentaría como:
Botón para ocultar o mostrar columnas de la tabla.
Botón para crear nuevos registros.
Cada registro en la tabla cuenta con tres botones; el primero para mostrar la información del registro en un formulario.
El segundo para editar dicho registro.
Y el tercero, para eliminar el registro de forma permanente.
La tabla cuenta con paginación, para hacer más sencillo su uso.
Es posible seleccionar el total de registros a mostrar por página.
Internacionalización
La plantilla está internacionalizada con el estandar i18n, implantado en Onesait Platform. Existe un registro en la gestión de internacionalizaciones donde está la internacionalización en ingles y castellano. Ésta aplica a los elementos de la plantilla como botones, selectores, etc., y a las cabeceras de las columnas y formularios.
Entidad por parámetro
El Gadget permite definir un parametro por URL para tomarlo como Entidad inicial. Con esto, se consigue que no se pueda seleccionar otra Entidad desde que se accede al Dashboard.
Implementarlo en un Dashboard
En primer lugar, es necesario crear un Dashboard utilizando la configuración inicial, y la internacionalización que se provee desde esta versión de la Plataforma para estos gadgets.
Una vez generado el Dashboard, para añadir el Gadget se pulsará en el botón de «+» situado en la parte superior derecha:
Del listado de Gadgets disponibles, se buscará y arrastra el elemento «Custom Gadget» sobre el liezo del Dashboard:
En el modal que aparecerá, se selecciona el tipo de Gadget que se quiera añadir. Seguidamente, se pulsará en el botón de «New Gadget».
Se le asignará al Gadget Custom un identificador y una descripción, para poder localizarlo y usarlo en otras ocasiones.
Al estar parametrizado, en esta pantalla se puede seleccionar las opciones explicadas anteriormente, como si se quiere que sólo acceda a una Entidad, el tipo de asistente a mostrar, o mostrar o no la columna de identificadores.
Tras pulsar el botón de «OK», aparecerá el Gadget en el lienzo del Dashboard.
Una vez creado, para reutilizarlo, tan sólo se tiene que seleccionar el tipo y la instancia recién creada del Gadget Custom y pulsar en el botón de «ADD GADGET».