Appearance
Gestion de Miembros
Modulo: Membresias Tipo: Resource Estado: Implementado Fecha: 2026-01-27
Descripcion
Problema que resuelve
La organizacion necesita gestionar de forma centralizada la informacion de sus miembros, incluyendo sus datos personales, comerciales y de membresia. Sin un sistema unificado, se presentan los siguientes desafios:
- Dificultad para mantener actualizado el padron de miembros activos e inactivos
- Falta de visibilidad sobre la categoria de membresia, disciplinas y productos asociados a cada miembro
- Procesos manuales para altas, bajas y modificaciones de datos
- Ausencia de trazabilidad en el ciclo de vida del miembro (motivos de baja, fechas de reactivacion)
- Imposibilidad de realizar busquedas y filtros eficientes sobre el padron de miembros
Solucion implementada
Se implemento un sistema completo de gestion de miembros (ABM) que permite:
- Listado avanzado: Consulta paginada del padron de miembros con filtros multiples y busqueda global
- Alta de miembros: Formulario completo con datos basicos, comerciales y de membresia
- Modificacion: Actualizacion completa o parcial de los datos del miembro
- Consulta detallada: Visualizacion individual con toda la informacion asociada (categoria, disciplinas, productos, grupo familiar)
- Baja controlada: Proceso de baja con registro de motivo, fecha y gestion automatica de grupo familiar
- Reactivacion: Posibilidad de reincorporar miembros dados de baja
Valor de negocio
- Padron actualizado: Visibilidad en tiempo real del estado de todos los miembros
- Eficiencia operativa: Reduccion del tiempo de gestion administrativa de miembros
- Trazabilidad: Registro completo del ciclo de vida de cada miembro (alta, modificaciones, baja, reactivacion)
- Flexibilidad: Filtros avanzados para segmentar y consultar el padron segun multiples criterios
- Integridad de datos: Gestion automatica de las relaciones del miembro (grupo familiar, disciplinas, productos) al dar de baja
Contexto del sistema
Esta funcionalidad es el nucleo del modulo de Membresias y se relaciona con:
- Grupos Familiares: Un miembro puede pertenecer a un grupo familiar como titular o integrante
- Disciplinas: Cada miembro puede tener disciplinas asignadas (actividades que practica)
- Productos: Cada miembro puede tener productos asignados con ajustes de precio personalizados
- Facturacion de Membresias: Los datos del miembro alimentan el proceso de facturacion periodica
- Configuracion: Categorias de membresia, localidades, condiciones de IVA, vendedores
Frontend (Perspectiva de Usuario)
Vistas
Listado de Miembros
- Tabla con paginacion del lado del servidor que muestra el padron completo de miembros
- Barra de busqueda global para localizar miembros rapidamente
- Filtros combinables para segmentar la consulta
- Ordenamiento por columnas
- Seleccion multiple de registros (parcial y total)
Formulario de Alta/Edicion de Miembro
- Formulario organizado en secciones tematicas:
- Datos basicos: Nombre, identificacion, datos de contacto
- Datos comerciales: Localidad, condicion de IVA, vendedor asignado
- Datos de membresia: Categoria de membresia, condicion de jubilado, fecha de nacimiento, sexo
- Acciones adicionales: Acceso a gestion de grupo familiar, disciplinas y productos
Modal de Baja de Miembro
- Formulario para registrar la baja de un miembro, requiriendo fecha y motivo
- Opcion para designar nuevo titular del grupo familiar si corresponde
Modal de Reactivacion de Miembro
- Confirmacion para reactivar un miembro previamente dado de baja
Interacciones del usuario
En el listado:
- Buscar miembros mediante texto libre (busqueda global)
- Filtrar miembros por estado: Todos, Activos, Inactivos, No socios
- Filtrar miembros por categoria de membresia
- Filtrar miembros por disciplina
- Filtrar miembros por producto
- Ordenar la tabla por cualquier columna
- Navegar entre paginas de resultados
- Seleccionar uno, varios o todos los miembros de la pagina
- Acceder al formulario de alta de nuevo miembro
- Acceder al formulario de edicion de un miembro existente
En el formulario de alta:
- Completar datos basicos del miembro (nombre, identificacion, contacto)
- Completar datos comerciales (localidad, condicion IVA, vendedor)
- Completar datos de membresia (categoria, jubilado, fecha nacimiento, sexo)
- Confirmar la creacion del miembro
- Acceder a la gestion de grupo familiar, disciplinas y productos una vez creado
En el formulario de edicion:
- Modificar cualquier dato del miembro
- Confirmar los cambios (actualizacion completa o parcial)
- Acceder a la gestion de grupo familiar, disciplinas y productos
- Iniciar proceso de baja del miembro
- Iniciar proceso de reactivacion del miembro (si esta dado de baja)
En la baja:
- Ingresar la fecha de baja
- Ingresar el motivo de la baja
- Si el miembro es titular de grupo familiar: designar nuevo titular
- Confirmar la baja
En la reactivacion:
- Confirmar la reactivacion del miembro
Permisos
| Permiso | Descripcion | Acciones permitidas |
|---|---|---|
| Visualizar miembros | Acceso de lectura al padron de miembros | Listar, buscar, filtrar, ver detalle |
| Gestionar miembros | Acceso de escritura sobre el padron | Crear, editar, dar de baja, reactivar |
Estados de UI
Listado de miembros:
- Cargando: Indicador de carga mientras se consulta el padron con los filtros aplicados
- Datos disponibles: Tabla con resultados, paginacion y metadatos (total de registros, pagina actual)
- Sin resultados: Mensaje informativo cuando no hay miembros que coincidan con los filtros aplicados
- Error de carga: Mensaje de error si falla la consulta al servidor
Formulario de alta/edicion:
- Cargando datos: En modo edicion, indicador mientras se obtienen los datos del miembro
- Validacion en curso: Indicadores de validacion en tiempo real en los campos del formulario
- Guardando: Indicador de progreso al confirmar la operacion
- Exito: Confirmacion de creacion o actualizacion exitosa
- Error de validacion: Mensajes de error en campos especificos que no cumplen las reglas
Baja de miembro:
- Procesando baja: Indicador durante el proceso de baja
- Baja exitosa: Confirmacion de que el miembro fue dado de baja correctamente
- Error: Mensaje de error si falla el proceso
Reactivacion:
- Procesando reactivacion: Indicador durante el proceso
- Reactivacion exitosa: Confirmacion de que el miembro fue reactivado
- Error: Mensaje de error si falla el proceso
Backend (Perspectiva de Datos de Negocio)
Entidades de negocio
Miembro
Representa a una persona registrada en el sistema de membresias de la organizacion, con toda su informacion personal, comercial y de membresia.
Datos necesarios
Datos basicos:
| Dato | Descripcion | Restricciones |
|---|---|---|
| Nombre | Nombre completo del miembro | Requerido |
| Identificacion | Documento de identidad (DNI, CUIT, etc.) | Requerido |
| Datos de contacto | Telefono, email, direccion | Segun configuracion |
Datos comerciales:
| Dato | Descripcion | Restricciones |
|---|---|---|
| Localidad | Localidad de residencia del miembro | Debe existir en el catalogo de localidades |
| Condicion de IVA | Situacion fiscal del miembro | Debe ser una condicion valida del sistema |
| Vendedor | Vendedor asignado al miembro | Debe existir en el catalogo de vendedores |
Datos de membresia:
| Dato | Descripcion | Restricciones |
|---|---|---|
| Categoria de membresia | Tipo o nivel de membresia del miembro | Debe existir en el catalogo de categorias |
| Condicion de jubilado | Indica si el miembro es jubilado | Valor booleano |
| Fecha de nacimiento | Fecha de nacimiento del miembro | Formato de fecha valido |
| Sexo | Sexo del miembro | Valor del catalogo permitido |
Datos de estado:
| Dato | Descripcion | Restricciones |
|---|---|---|
| Estado | Estado actual del miembro (activo, inactivo, no socio) | Controlado por el sistema |
| Fecha de baja | Fecha en que se dio de baja al miembro | Solo presente si esta dado de baja |
| Motivo de baja | Razon por la que se dio de baja | Requerido al dar de baja |
Relaciones de negocio
- Un miembro pertenece a una categoria de membresia
- Un miembro puede pertenecer a un grupo familiar (como titular o integrante)
- Un miembro puede tener multiples disciplinas asignadas
- Un miembro puede tener multiples productos asignados con ajustes de precio
- Un miembro esta asociado a una localidad
- Un miembro tiene una condicion de IVA
- Un miembro puede tener un vendedor asignado
Validaciones de negocio
| Validacion | Descripcion |
|---|---|
| Nombre requerido | El nombre del miembro debe ser completado obligatoriamente |
| Identificacion requerida | El documento de identidad debe ser completado |
| Categoria valida | La categoria de membresia debe existir en el catalogo del sistema |
| Localidad valida | Si se especifica localidad, debe existir en el catalogo |
| Condicion IVA valida | Si se especifica, debe ser una condicion reconocida por el sistema |
| Vendedor valido | Si se especifica, debe existir en el catalogo de vendedores |
| Fecha de baja requerida | Al dar de baja, la fecha de baja es obligatoria |
| Motivo de baja requerido | Al dar de baja, el motivo es obligatorio |
Reglas de Negocio
RN-001: Estados del miembro
Descripcion: Un miembro puede encontrarse en uno de los siguientes estados: Activo, Inactivo o No socio. El estado determina su participacion en los procesos del modulo.
Condicion: Al crear, dar de baja o reactivar un miembro.
Accion:
- Al crear un miembro, este se registra como Activo
- Al dar de baja, el miembro pasa a estado Inactivo
- Al reactivar, el miembro vuelve a estado Activo
- El estado No socio se utiliza para personas registradas que no son miembros formales
RN-002: Baja de miembro con grupo familiar
Descripcion: Cuando se da de baja a un miembro que pertenece a un grupo familiar, el sistema debe gestionar automaticamente la relacion con el grupo.
Condicion: El miembro a dar de baja pertenece a un grupo familiar.
Accion:
- El miembro es eliminado automaticamente del grupo familiar
- Si el miembro es el titular del grupo, el usuario debe designar un nuevo titular antes de confirmar la baja
- El sistema actualiza los registros de facturacion asociados al miembro
RN-003: Reactivacion de miembro
Descripcion: Un miembro dado de baja puede ser reactivado, restaurando su estado activo en el sistema.
Condicion: El miembro se encuentra en estado de baja (inactivo) con fecha y motivo de baja registrados.
Accion:
- Se limpia la fecha de baja y el motivo de baja del registro
- El miembro vuelve a estado activo
- El sistema genera un evento de reactivacion para notificar a otros procesos del sistema
RN-004: Actualizacion parcial
Descripcion: El sistema permite la actualizacion parcial de los datos del miembro, modificando solo los campos especificados sin alterar el resto.
Condicion: El usuario modifica uno o mas campos del miembro sin completar todos los campos.
Accion:
- Solo se actualizan los campos enviados en la solicitud
- Los campos no incluidos mantienen su valor actual
- Se registra la operacion de modificacion en la auditoria
RN-005: Consulta detallada del miembro
Descripcion: Al consultar un miembro individual, el sistema debe devolver toda la informacion asociada para una vista completa.
Condicion: Se solicita el detalle de un miembro especifico.
Accion:
- Se devuelve la informacion basica del miembro
- Se incluye la categoria de membresia con su descripcion
- Se incluyen las disciplinas asignadas al miembro
- Se incluyen los productos asignados al miembro
- Se incluye la informacion del grupo familiar si pertenece a alguno
RN-006: Filtrado combinado en listado
Descripcion: El listado de miembros permite aplicar multiples filtros de forma combinada para segmentar el padron.
Condicion: El usuario aplica uno o mas filtros en el listado.
Accion:
- Los filtros se aplican de forma conjunta (AND logico)
- El filtro de estado admite los valores: Todos, Activos, Inactivos, No socios
- El filtro de categoria filtra por la categoria de membresia del miembro
- El filtro de disciplina filtra miembros que tengan asignada la disciplina seleccionada
- El filtro de producto filtra miembros que tengan asignado el producto seleccionado
- La busqueda global busca coincidencias en nombre y datos de identificacion
- La paginacion se recalcula al aplicar o modificar filtros
RN-007: Paginacion del lado del servidor
Descripcion: El listado de miembros utiliza paginacion del lado del servidor para manejar volumenes grandes de datos de forma eficiente.
Condicion: Se consulta el listado de miembros.
Accion:
- El servidor devuelve un subconjunto de resultados segun la pagina solicitada
- Se incluyen metadatos de paginacion: total de registros, pagina actual, total de paginas, cantidad por pagina
- Los filtros y el ordenamiento se aplican en el servidor antes de paginar
RN-008: Seleccion multiple de miembros
Descripcion: El listado permite seleccionar multiples miembros para operaciones masivas.
Condicion: El usuario interactua con los controles de seleccion en el listado.
Accion:
- El usuario puede seleccionar miembros individuales mediante checkbox
- El usuario puede seleccionar todos los miembros de la pagina actual
- La seleccion parcial se indica visualmente cuando solo algunos miembros estan seleccionados
- La seleccion se utiliza como entrada para operaciones masivas (por ejemplo, asignacion masiva de productos)
Casos de Uso
CU-001: Alta de nuevo miembro
Actor: Usuario administrativo con permiso de gestion de miembros
Objetivo: Registrar un nuevo miembro en el sistema con toda su informacion
Precondiciones:
- Usuario autenticado con permiso de gestion de miembros
- Categorias de membresia configuradas en el sistema
- Catalogos de localidades, condiciones de IVA y vendedores disponibles
Flujo principal:
- El usuario accede al listado de miembros
- El usuario selecciona la opcion "Nuevo miembro"
- El sistema presenta el formulario de alta organizado en secciones
- El usuario completa los datos basicos: nombre, identificacion, contacto
- El usuario completa los datos comerciales: localidad, condicion de IVA, vendedor
- El usuario completa los datos de membresia: categoria, jubilado, fecha nacimiento, sexo
- El usuario confirma la creacion
- El sistema valida todos los datos ingresados
- El sistema crea el miembro y lo registra como activo
- El sistema confirma la operacion exitosa
Postcondiciones:
- Miembro creado en estado activo
- Datos basicos, comerciales y de membresia registrados
- Disponible para asignacion de disciplinas, productos y grupo familiar
Flujos alternativos:
| Paso | Condicion | Accion |
|---|---|---|
| 8a | Datos obligatorios faltantes | Mostrar errores de validacion en los campos correspondientes |
| 8b | Categoria de membresia no valida | Mostrar error solicitando seleccionar categoria valida |
| 8c | Identificacion duplicada | Mostrar advertencia de que ya existe un miembro con esa identificacion |
CU-002: Dar de baja un miembro
Actor: Usuario administrativo con permiso de gestion de miembros
Objetivo: Registrar la baja de un miembro con fecha y motivo, gestionando automaticamente sus relaciones
Precondiciones:
- Usuario autenticado con permiso de gestion de miembros
- Miembro existente en estado activo
Flujo principal:
- El usuario accede al detalle o edicion del miembro
- El usuario selecciona la opcion "Dar de baja"
- El sistema presenta el formulario de baja
- El usuario ingresa la fecha de baja
- El usuario ingresa el motivo de la baja
- El usuario confirma la baja
- El sistema valida los datos de baja
- El sistema registra la fecha y motivo de baja
- El sistema elimina al miembro del grupo familiar si pertenece a alguno
- El sistema actualiza los registros de facturacion asociados
- El sistema confirma la operacion exitosa
Postcondiciones:
- Miembro marcado como dado de baja con fecha y motivo registrados
- Miembro eliminado de su grupo familiar
- Registros de facturacion actualizados
Flujos alternativos:
| Paso | Condicion | Accion |
|---|---|---|
| 5a | Miembro es titular de grupo familiar | El sistema solicita designar un nuevo titular del grupo antes de confirmar |
| 7a | Fecha de baja no ingresada | Mostrar error: la fecha de baja es obligatoria |
| 7b | Motivo de baja no ingresado | Mostrar error: el motivo de baja es obligatorio |
CU-003: Reactivar un miembro
Actor: Usuario administrativo con permiso de gestion de miembros
Objetivo: Reincorporar un miembro previamente dado de baja
Precondiciones:
- Usuario autenticado con permiso de gestion de miembros
- Miembro existente en estado de baja
Flujo principal:
- El usuario accede al detalle del miembro dado de baja
- El usuario selecciona la opcion "Reactivar"
- El sistema presenta confirmacion de reactivacion
- El usuario confirma la reactivacion
- El sistema limpia la fecha de baja y el motivo de baja
- El miembro vuelve a estado activo
- El sistema notifica a otros procesos mediante evento de reactivacion
- El sistema confirma la operacion exitosa
Postcondiciones:
- Miembro en estado activo
- Fecha y motivo de baja limpiados
- Evento de reactivacion emitido para procesos dependientes
Flujos alternativos:
| Paso | Condicion | Accion |
|---|---|---|
| 4a | El usuario cancela la operacion | Se cierra el dialogo sin realizar cambios |
CU-004: Buscar y filtrar miembros
Actor: Usuario con permiso de visualizacion de miembros
Objetivo: Localizar miembros especificos o segmentar el padron segun criterios de negocio
Precondiciones:
- Usuario autenticado con permiso de visualizacion de miembros
- Existen miembros registrados en el sistema
Flujo principal:
- El usuario accede al listado de miembros
- El sistema muestra la tabla con la primera pagina de resultados y metadatos de paginacion
- El usuario aplica uno o mas filtros:
- Selecciona un estado (Todos, Activos, Inactivos, No socios)
- Selecciona una categoria de membresia
- Selecciona una disciplina
- Selecciona un producto
- Ingresa texto en la busqueda global
- El sistema recalcula los resultados aplicando todos los filtros de forma combinada
- El sistema muestra los resultados filtrados con paginacion actualizada
- El usuario puede ordenar por cualquier columna de la tabla
- El usuario puede navegar entre paginas de resultados
Postcondiciones:
- El listado muestra los miembros que cumplen con todos los filtros aplicados
- Los metadatos de paginacion reflejan el total de resultados filtrados
Consideraciones
Seguridad
- Los datos personales de los miembros (nombre, identificacion, contacto) son informacion sensible que requiere control de acceso
- Solo usuarios con permisos de gestion pueden crear, modificar, dar de baja y reactivar miembros
- Los usuarios con permisos de visualizacion solo pueden consultar el padron sin modificarlo
- El acceso al modulo esta controlado por el sistema de permisos del ERP
Auditoria
- Todas las operaciones de creacion, modificacion, baja y reactivacion de miembros quedan registradas en el sistema de auditoria
- Se registra el usuario que realizo la operacion, la fecha y hora, y los datos modificados
- La baja registra especificamente la fecha de baja y el motivo para trazabilidad
Rendimiento
- El listado de miembros utiliza paginacion del lado del servidor para soportar padrones con miles de registros
- Los filtros y el ordenamiento se procesan en el servidor para optimizar la transferencia de datos
- La consulta detallada de un miembro incluye toda la informacion asociada en una sola solicitud (categoria, disciplinas, productos, grupo familiar)
Dependencias
Funcionalidades relacionadas
- Disciplinas del Miembro: Gestion de disciplinas asignadas a cada miembro
- Productos del Miembro: Gestion de productos asignados con ajustes de precio
- Grupos Familiares: Agrupacion de miembros en nucleos familiares con titular
- Facturacion por Lotes: Proceso de facturacion periodica que consume datos de miembros
- Cupon de Pago: Generacion de cupones de pago vinculados a la deuda del miembro
Catalogos del sistema
- Categorias de membresia: Tipos o niveles de membresia disponibles
- Localidades: Catalogo de localidades para direcciones
- Condiciones de IVA: Situaciones fiscales reconocidas por el sistema
- Vendedores: Catalogo de vendedores asignables a miembros
- Disciplinas: Catalogo de actividades disponibles
- Productos: Catalogo de productos asignables a miembros
Criterios de Aceptacion
Listado de miembros
- [x] AC-001: El listado muestra miembros con paginacion del lado del servidor incluyendo metadatos (total de registros, pagina actual, total de paginas)
- [x] AC-002: El filtro por estado permite seleccionar Todos, Activos, Inactivos o No socios
- [x] AC-003: El filtro por categoria filtra miembros segun su categoria de membresia
- [x] AC-004: El filtro por disciplina filtra miembros que tengan la disciplina seleccionada asignada
- [x] AC-005: El filtro por producto filtra miembros que tengan el producto seleccionado asignado
- [x] AC-006: La busqueda global localiza miembros por coincidencia en nombre y datos de identificacion
- [x] AC-007: Las columnas de la tabla son ordenables
- [x] AC-008: La seleccion multiple permite seleccionar miembros individuales y todos los de la pagina
Alta de miembro
- [x] AC-009: El formulario de alta permite ingresar datos basicos, comerciales y de membresia en secciones organizadas
- [x] AC-010: Los campos obligatorios son validados antes de crear el miembro
- [x] AC-011: Los catalogos (categoria, localidad, condicion IVA, vendedor) muestran opciones validas del sistema
- [x] AC-012: Al crear exitosamente, el miembro queda en estado activo
Edicion de miembro
- [x] AC-013: El formulario de edicion carga los datos actuales del miembro
- [x] AC-014: Se permite actualizacion completa (todos los campos) del miembro
- [x] AC-015: Se permite actualizacion parcial (solo campos modificados) del miembro
- [x] AC-016: Las validaciones aplican tanto en creacion como en edicion
Consulta detallada
- [x] AC-017: La consulta de un miembro individual devuelve toda su informacion asociada: categoria, disciplinas, productos y grupo familiar
Baja de miembro
- [x] AC-018: La baja requiere fecha de baja y motivo obligatorios
- [x] AC-019: Si el miembro es titular de grupo familiar, se solicita designar nuevo titular
- [x] AC-020: Al dar de baja, el miembro es eliminado automaticamente del grupo familiar
- [x] AC-021: Al dar de baja, los registros de facturacion del miembro se actualizan
Reactivacion de miembro
- [x] AC-022: Un miembro dado de baja puede ser reactivado
- [x] AC-023: La reactivacion limpia la fecha de baja y el motivo de baja
- [x] AC-024: La reactivacion genera un evento para notificar a procesos dependientes
Notas Adicionales
Actualizacion optimista en frontend
El sistema utiliza actualizaciones optimistas en el frontend: al confirmar una edicion, la interfaz refleja los cambios inmediatamente antes de recibir la confirmacion del servidor. Si el servidor rechaza la operacion, los cambios se revierten automaticamente mostrando el error correspondiente. Esto mejora la percepcion de velocidad para el usuario.
Eventos de dominio
La baja y la reactivacion de miembros generan eventos internos del sistema que permiten a otros procesos reaccionar automaticamente:
- La baja genera la eliminacion del miembro del grupo familiar y la actualizacion de registros de facturacion
- La reactivacion genera un evento que puede ser consumido por otros modulos que necesiten notificarse del cambio de estado
Historial de Cambios
| Fecha | Version | Autor | Descripcion |
|---|---|---|---|
| 2026-01-27 | 1.0 | Sistema | Creacion del documento - Funcionalidad implementada y en produccion |