Skip to content

Crear unidades organizacionales

Una vez que existen tus niveles, los llenas con unidades — las cosas reales que reciben un líder, un conteo de miembros y un pin en el mapa. Una unidad es una fila en la tabla org_units; la página a la que llegas para ella es tu hub para todo lo que esa unidad hace.

Dos formas de entrar

GCM te permite crear unidades desde dos superficies. Escriben a la misma tabla; elige la que se ajuste al momento.

SuperficieMejor paraURL
Árbol de Estructura OrganizacionalLa imagen completa de arriba hacia abajo. Sin arrastrar, pero ves cada nivel a la vez/org-structure
Página de nivelAgregar en lote pares en un nivel (digamos 12 células en una fila)/hierarchy/3

La página del árbol es el aterrizaje predeterminado del módulo. Muestra las unidades de nivel 1 en la raíz y te permite expandir para entrar en sus hijos.

Diálogo de crear unidad

Desde la página del árbol

Haz clic en Agregar sede (o como sea que se llame tu nivel 1) en la esquina superior derecha para crear una unidad de nivel superior. Para niveles inferiores, expande un padre, haz clic en el menú de tres puntos en la fila y elige Agregar centro (o como sea que se llame el siguiente nivel).

El diálogo pide:

  • Nombre (requerido) — ej. Sede Centro. Hasta dos líneas se envuelven en las tarjetas, así que los nombres descriptivos están bien.
  • Padre (requerido para niveles > 1) — elegido de un desplegable con búsqueda de las unidades del nivel inmediatamente superior. El selector se filtra automáticamente al nivel correcto.
  • Dirección (opcional) — dirección postal de texto libre. Impulsa el módulo de mapa si también defines una ubicación en mapa.
  • Ubicación en mapa (opcional) — abre un selector de Leaflet. Coloca un pin o pega lat/lng. Si defines una dirección pero no una ubicación en mapa, GCM encola una geocodificación en segundo plano y llena estimated_map_location cuando llega el resultado.

Haz clic en Crear. La nueva fila aparece en el árbol, el conteo de hijos del padre se incrementa, la estadística "X unidades" del dashboard se refresca.

Desde una página de nivel

Si estás agregando muchas unidades en el mismo nivel — digamos doce células para una sede — entra vía la URL /hierarchy/3 (sustituye el nivel en el que estás trabajando). Verás una cuadrícula de tarjetas de cada unidad en ese nivel filtrada por el selector de padre en la parte superior.

El flujo de la página de nivel es el mismo diálogo bajo el capó, pero obtienes:

  • Un filtro de padre para que las unidades nuevas se asignen al padre correcto por defecto.
  • Acciones en lote — selecciona 3 unidades y reasígnalas a una nueva sede con un clic.
  • Controles de orden — nombre A–Z, conteo de miembros desc, agregadas recientemente.

Este es el camino más rápido cuando estás sembrando muchas unidades de nivel hoja después de una reestructura.

Qué se almacena

Cada fila de unidad tiene estas columnas que la UI muestra:

ColumnaTipoNotas
idUUIDGenerado del lado del cliente
organization_idUUIDDefinido automáticamente desde tu sesión
level_indexintEl nivel al que pertenece la unidad
parent_unit_idUUIDNulo en el nivel 1, requerido abajo
nametextNombre de visualización
addresstextDirección postal opcional
map_locationtextLat/lng opcional — gana sobre estimada
estimated_map_locationtextLlenada por el geocoder cuando se define una dirección
leader_member_idUUIDOpcional — ver Asignar líderes
archived_attimestamptzNulo para filas activas
deleted_attimestamptzNulo para filas visibles; soft-delete

Las marcas de tiempo de creación y actualización + los IDs de actor se escriben automáticamente. Puedes verlos en la página de detalle de la unidad en la línea de "auditoría" justo debajo del nombre.

Editar una unidad

Abre la unidad (haz clic en su fila en el árbol o su tarjeta en una página de nivel). Haz clic en Editar en el encabezado. El mismo diálogo regresa rellenado. Puedes cambiar:

  • El nombre.
  • El padre — mover la unidad mueve a todos sus descendientes con ella. Los miembros en la unidad se quedan donde están; la cascada solo cambia la forma del árbol.
  • La dirección y ubicación en mapa.

Guardar no pide confirmación. Los reportes se refrescan la siguiente vez que vuelven a consultarse.

Mover unidades cambia el alcance de los reportes

Si reasignas Centro Centro de Sede Sur a Sede Norte, cada miembro asignado a Centro Centro (y sus hijos) ahora se consolida hacia Sede Norte. Los dashboards de asistencia dominical pueden cambiar de la noche a la mañana — comunica el cambio antes de hacerlo.

Ubicación en mapa y el módulo de mapa

Definir map_location en una unidad le da un pin en el módulo de mapa. El color del pin se determina por el nivel. El agrupamiento de pines se activa alrededor del nivel 3+ si tienes muchas unidades en un área pequeña.

También puedes dejar map_location en blanco y dejar que la dirección se geocodifique en segundo plano. La ubicación estimada llena estimated_map_location y el mapa muestra el pin en un color ligeramente atenuado para indicar que es una suposición.

Si la geocodificación falla (dirección incorrecta, rate-limit), la insignia de estado en la página de la unidad muestra pendingfailed. Puedes arreglar la dirección y volver a hacer clic en la unidad para volver a disparar el geocoder.

Conteos de miembros generados automáticamente

La insignia de conteo de miembros en cada fila de unidad se computa vía el RPC count_org_unit_members, no leyendo filas crudas. El RPC maneja la cascada — suma las propias asignaciones de la unidad más cada descendiente. Por eso mover una unidad no rompe el conteo.

La insignia se actualiza dentro de unos segundos de un cambio de asignación. Si parece desactualizada, refresca la página; React Query revalida al foco.

Preguntas comunes

¿Por qué no puedo arrastrar unidades para reasignarlas? El árbol intencionalmente no tiene afordancia de arrastre porque los movimientos de jerarquía cascadean de formas no obvias. El flujo deliberado de Editar → cambiar padre → Guardar fuerza un momento de reflexión.

¿Puedo tener dos unidades con el mismo nombre? Sí. La UI no aplica unicidad porque Célula Norte podría legítimamente existir bajo dos sedes diferentes. Si quieres deduplicar, usa el nombre del padre como prefijo.

¿Cuál es el máximo práctico de unidades? Unos pocos miles por organización han sido probados. El renderizado del árbol se virtualiza cuando expandes un subárbol pesado; las consultas paginan. Más allá de ~10,000 unidades considera si algunas son realmente miembros (ej. si cada hogar es una unidad) y reestructura.

Próximos pasos