Skip to main content

Agregar Participantes Vinculante

Agregar participantes es un componente creado con el objetivo de poder seleccionar participantes de un proceso. Utilizando este componente, se pueden agregar también grupos de colaboradores como participantes.

Este componente permite dos modos de uso:

Forma vinculada: se pueden agregar participantes individuales y grupos. Los procesos en dónde estén involucrados Grupos se mantengan actualizados de forma automática, si se realizan contrataciones, desvinculaciones o movilidades dentro de la empresa.

Forma spot: al guardar el formulario, se agregarán aquellas personas miembros del Grupo seleccionado en ese minuto.

Playground

<%= participants_select_widget(
employees_selected: selected_employees,
resource: benefit_plan, <- Recurso que está utilizando el selector
label: 'Seleccionar participantes y/o grupos',
spot_use: false, <- Indica si el componente se usa de manera vinculada o spot
user: current_user
) %>

Lista de parámetros

ParámetroTipoDetalle
labelStringTexto para el label sobre el selector
employees_selectedArrayArreglo de empleados ya seleccionados. Cada empleado debe venir en formato [nombre o texto del empleado, id]
resourceObjectRecurso que está utilizando el agregar participantes
spot_useBooleanIndica si se está utilizando el componente de forma spot o no. Si es true, agrega un input oculto demostrando que es no_linked, para luego agregar los participantes de forma individual
userObjectUsuario actual viendo el componente. Utilizado para comparar qué grupos son propios y cuáles son ajenos.

¿Cómo usar?

Uso Dinámico

El uso dinámico se refiere a poder agregar tanto participantes como grupos. Aquellos grupos quedarán vinculados, es decir, se materializarán sus participantes y se mantendrán actualizados de forma automática según el filtro que cumplan.

Para utilizar el componente y poder guardar tanto los participantes como los grupos de forma vinculada, se deben usar los siguientes callbacks en el controlador:

prepend_before_action :find_groups_ids_in_params, only: [:create, :update]
after_action :update_link, only: [:create, :update]

Estos callbacks funcionan de la siguiente manera:

  • find_groups_ids_in_params quita los grupos de los params, interpretando los IDs y guardándolos para su posterior uso.

  • update_link toma estos ids de grupos y genera las vinculaciones y desvinculaciones pertinentes, a través de FilterQueryAssignment.

Uso Spot

El uso spot busca facilitar poder agregar como participantes de un proceso a todos aquellos colaboradores que cumplan con cierto criterio en ese minuto del tiempo. Los grupos agregados no quedan guardados, sino quedarán guardados los colaboradores que pertenezcan a ese grupo en ese momento.

Como solo nos interesa que agregue a los participantes de forma individual, usamos el comportamiento habitual. Por ello, solo necesitamos traducir los grupos a sus colaboradores antes de crear y/o editar.

prepend_before_action :find_groups_ids_in_params, only: [:create, :update]

Casos de uso

Uso Dinámico

No hay participantes agregados anteriormente

1- El administrador va a visualizar un campo donde debe ingresar los participantes

alt-text

2- Cuando haga click para desplegar el campo, se van a visualizar primero las opciones de grupo disponibles y luego la de empleados. Puede seleccionar directamente, o comenzar a escribir en el buscador, y el desplegable va a buscar las opciones que coincidan.

alt-text

3- Al hacer click en un grupo se va a agregar dentro del campo y el administrador va a poder seguir buscando. Podemos combinar grupos e individuos, los podemos diferenciar, ya que las etiquetas de grupos tienen un icono a la izquierda.

alt-text

4- Para poder limpiar el Agregar Participantes, podemos eliminar todos los seleccionados desde la “X” o hacerlo de manera individual. Esto se puede ser realizar con el campo desplegado/activo.

alt-text

Hay participantes agregados anteriormente

El administrador visualiza un campo que tiene seleccionados los participantes individuales, debido a que se ingresaron con el Agregar Participantes. Si quiere visualizar más participantes ya seleccionados, el campo cuenta con scroll para la visualización de los seleccionados

alt-text

Hay un grupo ya agregado que no es propio - "Grupos de terceros"

Como administrador de un proceso en donde se pueden vincular Grupos, puede suceder que otra persona haya vinculado grupos propios a algún proceso que yo deseo editar.

Para poder distinguir los grupos propios de los de terceros, estos últimos van a ser de color amarillento, propio de un estado de “cuidado o alerta” y también se mostrará el nombre del administrador autor que creó el grupo (Se verá "Nombre Grupo, (Autor)").

Debido a que los grupos son personales y sujetos al limite de área de la persona, no es posible visualizar grupos creados por otros administradores en el desplegable de búsqueda del Agregar Participantes, ya que solo muestra los grupos que el administrador creó. Por lo tanto, una vez eliminado el grupo de terceros, no es posible recuperar la selección por parte de ese administrador. Este administrador deberá avisar al administrador autor, que es propietario del grupo original, para que lo vuelva a agregar.

Para reforzar este mensaje o comportamiento, se va a visualizar una alerta del mismo color que los grupos de terceros, describiendo el comportamiento de los mismos.

alt-text

Uso Spot

Se consideró, en esta versión del Agregar Participantes, las circunstancias en donde los administradores necesitan la rapidez que ofrece el seleccionar un grupo, pero no necesitan que en ese proceso la nómina se actualice. En cambio, los administradores buscan seleccionar los miembros del grupo de “ese momento”.

Por ejemplo, se podría usar en encuestas, evaluaciones o comunicaciones, se necesita llegar al grupo de personas en un momento determinado y no tiene sentido que esa selección se actualice luego.

Para esos casos se desarrolló el modo Spot en Agregar Participantes, que te permite seleccionar grupos, con la rapidez de un click, pero al momento de EJECUTAR EL PROCESO (crearlo, enviarlo) deja registrados los individuos que pertenecían al grupo en ese momento.

alt-text

1- Se despliega el formulario con el componente. Este permite agregar tanto participantes directos como grupos.

alt-text

2- Al elegir grupos y guardar, esto activa el que se guarden aquellos colaboradores que cumplen con las condiciones del grupo en ese momento de forma individual. Al volver a entrar al formulario, se puede chequear que haya pasado esto.

alt-text
message

Hola 👋

Evalúa tu experiencia utilizando nuestro Design System

Déjanos un comentario