Skip to content

Categorias de Membresia

Modulo: Membresias Tipo: Resource Estado: Implementado Fecha: 2026-01-27


Descripcion

Problema que resuelve

Las instituciones que gestionan membresias (clubes, gimnasios, asociaciones) necesitan clasificar a sus miembros en diferentes categorias segun criterios como edad, tipo de actividad o plan contratado. Sin un sistema de categorias, la administracion se vuelve caótica: no es posible segmentar miembros para facturacion diferenciada, no se puede automatizar el cambio de categoria cuando un miembro alcanza cierta edad, y la asignacion individual de categorias a grandes volumenes de miembros resulta impracticable.

Solucion implementada

Se implemento un sistema completo de gestion de categorias de membresia que permite:

  1. Administrar categorias: Crear, consultar, modificar y eliminar categorias de membresia con sus datos asociados
  2. Asociar producto de facturacion: Cada categoria tiene un producto vinculado que determina el monto a facturar a los miembros de esa categoria
  3. Cambio automatico por edad: Configurar rangos de edad para que el sistema pueda migrar automaticamente miembros de una categoria a otra cuando alcanzan cierta edad
  4. Categoria por defecto: Marcar una categoria como predeterminada para nuevos miembros
  5. Asignacion masiva: Asignar una categoria a multiples miembros en una sola operacion

Valor de negocio

  • Segmentacion: Permite clasificar miembros para facturacion diferenciada y gestion administrativa
  • Automatizacion: El cambio automatico por edad elimina la necesidad de reclasificar manualmente a cada miembro
  • Eficiencia operativa: La asignacion masiva reduce drasticamente el tiempo de gestion cuando se necesita reclasificar grandes grupos
  • Consistencia de facturacion: El producto asociado garantiza que todos los miembros de una categoria se facturen al mismo valor

Contexto del sistema

Este recurso forma parte del modulo de Membresias y se relaciona con:

  • Miembros: Cada miembro tiene asignada una categoria de membresia
  • Productos: Cada categoria tiene un producto asociado que determina el monto de facturacion
  • Grupos Familiares: Las categorias pueden variar entre miembros de un mismo grupo familiar
  • Facturacion por Lotes: El proceso de facturacion masiva utiliza la categoria del miembro para determinar el producto y monto a facturar

Frontend (Perspectiva de Usuario)

Vistas

  • Listado de categorias: Tabla con todas las categorias existentes, mostrando codigo, nombre, producto asociado y marca de defecto. Accesible desde el menu Inicio > Bases > Categorias
  • Formulario de alta/edicion: Modal para crear o modificar una categoria, con dos secciones: datos basicos y configuracion de cambio automatico por edad
  • Modal de eliminacion: Dialogo de confirmacion que solicita una categoria de reemplazo antes de eliminar
  • Vista de asignacion masiva: Pantalla dedicada con tabla de miembros seleccionables, filtro por categoria y accion de asignacion. Accesible desde Inicio > Utilidades > Asignacion de Categorias

Interacciones del usuario

  1. Consultar categorias: El usuario visualiza la tabla completa de categorias con sus datos principales
  2. Crear categoria: El usuario abre el formulario, completa los datos obligatorios (nombre, producto) y opcionalmente configura el cambio automatico por edad
  3. Editar categoria: El usuario selecciona una categoria existente, modifica los campos deseados y guarda los cambios
  4. Eliminar categoria: El usuario solicita eliminar una categoria; el sistema presenta un dialogo que solicita seleccionar una categoria de reemplazo para los miembros afectados
  5. Alternar categoria por defecto: El usuario activa o desactiva la marca "por defecto" directamente desde la tabla mediante un interruptor
  6. Asignacion masiva: El usuario navega a la vista de asignacion, selecciona miembros de la tabla (con opcion de filtrar por categoria actual), presiona "Asignar Categoria" y selecciona la categoria destino en un modal de confirmacion

Estados de UI

  • Estado inicial: Tabla cargada con todas las categorias disponibles
  • Estado cargando: Indicador de carga mientras se obtienen los datos
  • Estado exito: Notificacion de confirmacion al crear, editar, eliminar o asignar masivamente
  • Estado error: Mensaje de error descriptivo cuando falla una operacion (ej: "Error al guardar la categoria")
  • Estado vacio: Tabla sin registros cuando no hay categorias configuradas
  • Asignacion masiva - resultado: Notificacion detallada con cantidad de miembros asignados exitosamente y cantidad omitidos (ya tenian la categoria)

Backend (Perspectiva de Datos de Negocio)

Entidades de negocio

Categoria de Membresia: Representa una clasificacion o tipo de membresia que agrupa a los miembros de la institucion.

Datos necesarios

Cada categoria de membresia debe almacenar:

DatoDescripcionRestricciones
CodigoIdentificador unico de la categoriaGenerado automaticamente, solo lectura
NombreDenominacion de la categoria (ej: "Socio Pleno", "Cadete", "Jubilado")Requerido, maximo 50 caracteres
Producto asociadoProducto del catalogo vinculado para facturacionRequerido, debe existir en el catalogo de productos
Categoria por defectoIndica si esta categoria se asigna automaticamente a nuevos miembrosValor booleano (si/no)
Edad desdeLimite inferior del rango de edad para cambio automaticoOpcional, entre 0 y 120
Edad hastaLimite superior del rango de edad para cambio automaticoOpcional, entre 0 y 120, debe ser mayor que "edad desde"
Categoria de cambio automaticoCategoria destino cuando el miembro alcanza el rango de edad configuradoOpcional, debe ser una categoria existente diferente a la actual

Relaciones de negocio

  • Categoria - Producto: Cada categoria tiene exactamente un producto asociado del catalogo general de productos
  • Categoria - Miembros: Una categoria puede tener multiples miembros asignados
  • Categoria - Categoria (cambio automatico): Una categoria puede referenciar a otra categoria como destino del cambio automatico por edad

Validaciones de negocio

  1. Nombre requerido: El nombre de la categoria no puede estar vacio y tiene un maximo de 50 caracteres
  2. Producto requerido: Toda categoria debe tener un producto asociado valido
  3. Consistencia del cambio automatico: Si se configura el cambio automatico, los tres campos (categoria destino, edad desde, edad hasta) deben estar completos o todos vacios
  4. Rango de edad valido: La edad desde debe ser menor que la edad hasta
  5. Categoria destino diferente: La categoria de cambio automatico no puede ser la misma categoria que se esta configurando
  6. Eliminacion con reemplazo: Al eliminar una categoria, se debe indicar una categoria alternativa para reasignar los miembros existentes

Reglas de negocio

RN-001: Categoria por defecto

Descripcion: Una categoria puede marcarse como "por defecto" para que se asigne automaticamente a nuevos miembros.

Condicion: El usuario activa la marca de defecto en una categoria.

Accion: La categoria se marca como predeterminada. Pueden existir multiples categorias marcadas como defecto; el sistema utiliza esta marca como indicador configurable.


RN-002: Cambio automatico por edad

Descripcion: Una categoria puede configurarse para que los miembros sean automaticamente migrados a otra categoria cuando alcanzan un rango de edad determinado.

Condicion: La categoria tiene configurados los campos de edad desde, edad hasta y categoria destino.

Accion:

  • Los tres campos (edad desde, edad hasta y categoria destino) deben estar todos completos o todos vacios
  • La edad desde debe ser estrictamente menor que la edad hasta
  • La categoria destino debe ser diferente a la categoria actual
  • El rango de edad debe estar entre 0 y 120 anos

RN-003: Eliminacion con reasignacion obligatoria

Descripcion: No se puede eliminar una categoria sin antes reasignar a los miembros que la tienen asignada.

Condicion: El usuario solicita eliminar una categoria.

Accion:

  • El sistema solicita al usuario que seleccione una categoria alternativa de reemplazo
  • La categoria de reemplazo no puede ser la misma que se esta eliminando
  • Todos los miembros de la categoria eliminada son reasignados a la categoria de reemplazo
  • La eliminacion y la reasignacion se ejecutan como una operacion atomica

RN-004: Asignacion masiva de categoria

Descripcion: Se permite asignar una categoria a multiples miembros en una sola operacion.

Condicion: El usuario selecciona uno o mas miembros y elige una categoria destino.

Accion:

  • El sistema procesa cada miembro seleccionado
  • Los miembros que ya tienen la categoria seleccionada son omitidos (no se duplica la asignacion)
  • El sistema reporta al usuario: cantidad total procesada, cantidad asignada exitosamente y cantidad omitida
  • Los detalles de cada miembro procesado (exito u omision con razon) estan disponibles en el resultado

RN-005: Producto asociado obligatorio

Descripcion: Toda categoria de membresia debe tener un producto del catalogo asociado.

Condicion: Al crear o modificar una categoria.

Accion: El sistema valida que se haya seleccionado un producto existente y valido del catalogo de productos.


Casos de uso

Caso 1: Crear nueva categoria de membresia

Actor: Usuario administrativo

Precondiciones:

  • El usuario esta autenticado en el sistema
  • Existen productos configurados en el catalogo

Flujo principal:

  1. El usuario accede al listado de categorias desde Inicio > Bases > Categorias
  2. El usuario selecciona "Nva. Categoria"
  3. El sistema presenta el formulario con las secciones de datos basicos y cambio automatico
  4. El usuario completa el nombre de la categoria (ej: "Socio Cadete")
  5. El usuario busca y selecciona un producto del catalogo
  6. Opcionalmente, el usuario marca la categoria como "por defecto"
  7. Opcionalmente, el usuario expande la seccion de cambio automatico y configura:
    • Selecciona la categoria destino (ej: "Socio Pleno")
    • Ingresa edad desde (ej: 13)
    • Ingresa edad hasta (ej: 17)
  8. El usuario confirma la creacion
  9. El sistema valida los datos y crea la categoria
  10. El sistema muestra una notificacion de exito

Postcondiciones:

  • La categoria queda registrada y disponible para asignar a miembros
  • Si se configuro cambio automatico, queda vinculada con la categoria destino

Flujos alternativos:

  • Error: nombre vacio: El sistema muestra "El nombre es requerido" y no permite guardar
  • Error: producto no seleccionado: El sistema muestra "El producto es requerido" y no permite guardar
  • Error: cambio automatico incompleto: Si el usuario completa solo algunos campos del cambio automatico, el sistema muestra "Para configurar cambio automatico debe completar: categoria destino, edad desde y edad hasta"
  • Error: rango de edad invalido: Si edad desde es mayor o igual a edad hasta, el sistema muestra "La edad desde debe ser menor a la edad hasta"

Caso 2: Eliminar categoria con reasignacion

Actor: Usuario administrativo

Precondiciones:

  • El usuario esta autenticado en el sistema
  • Existe la categoria a eliminar
  • Existe al menos una categoria alternativa

Flujo principal:

  1. El usuario accede al listado de categorias
  2. El usuario selecciona la opcion de eliminar en la categoria deseada
  3. El sistema presenta un dialogo de confirmacion que indica: "Esta seguro que desea eliminar la categoria [Nombre]?" con una advertencia: "Los socios asociados a esta categoria seran reasignados a la categoria de reemplazo seleccionada"
  4. El usuario selecciona una categoria de reemplazo del selector (que excluye la categoria que se esta eliminando)
  5. El usuario confirma la eliminacion
  6. El sistema reasigna todos los miembros a la categoria de reemplazo y elimina la categoria
  7. El sistema muestra una notificacion de exito

Postcondiciones:

  • La categoria queda eliminada del sistema
  • Todos los miembros que pertenecian a esa categoria ahora pertenecen a la categoria de reemplazo

Flujos alternativos:

  • Cancelacion: El usuario cierra el dialogo sin confirmar y la categoria permanece sin cambios
  • Unica categoria: Si solo existe una categoria en el sistema, el boton de eliminar esta deshabilitado

Caso 3: Asignacion masiva de categoria a miembros

Actor: Usuario administrativo

Precondiciones:

  • El usuario esta autenticado en el sistema
  • Existen categorias y miembros registrados

Flujo principal:

  1. El usuario accede a la vista de asignacion desde Inicio > Utilidades > Asignacion de Categorias
  2. El sistema muestra la tabla de miembros activos con casillas de seleccion
  3. Opcionalmente, el usuario filtra la tabla por categoria actual usando el selector de categorias
  4. El usuario selecciona los miembros deseados marcando sus casillas
  5. El sistema muestra el contador de "Miembros seleccionados: N"
  6. El usuario presiona "Asignar Categoria"
  7. El sistema presenta un modal donde el usuario selecciona la categoria destino
  8. El usuario confirma la asignacion
  9. El sistema procesa la asignacion y reporta: "Categoria asignada a X miembro(s)"
  10. Si hubo miembros omitidos: "N miembro(s) ya tenian la categoria seleccionada"
  11. La seleccion se limpia automaticamente y la tabla se refresca

Postcondiciones:

  • Los miembros seleccionados tienen asignada la nueva categoria
  • Los miembros que ya tenian la categoria no fueron modificados

Flujos alternativos:

  • Sin seleccion: El boton "Asignar Categoria" permanece deshabilitado si no hay miembros seleccionados
  • Error de proceso: El sistema muestra un mensaje de error y los miembros no son modificados
  • Cambio de filtro: Al cambiar el filtro de categoria, la seleccion de miembros se limpia automaticamente

Consideraciones

Seguridad

  • El acceso a la gestion de categorias requiere autenticacion en el sistema
  • Las operaciones de eliminacion y asignacion masiva son operaciones sensibles que requieren confirmacion explicita del usuario

Auditoria

  • Las operaciones de creacion, modificacion y eliminacion de categorias deben registrarse en el sistema de auditoria
  • La asignacion masiva debe registrar la cantidad de miembros procesados y el usuario que ejecuto la operacion

Rendimiento

  • La asignacion masiva debe procesar multiples miembros en una unica transaccion para garantizar atomicidad
  • El listado de categorias es un conjunto reducido de datos (tipicamente menos de 20 registros) y debe responder de forma inmediata

Dependencias

Funcionalidades relacionadas

  • Gestion de Miembros: Los miembros tienen una categoria asignada; al crear un miembro se selecciona su categoria
  • Productos: Las categorias dependen del catalogo de productos para vincular el producto de facturacion
  • Facturacion por Lotes: El proceso de facturacion masiva utiliza la categoria del miembro para determinar el monto a facturar
  • Grupos Familiares: Miembros de un mismo grupo pueden tener diferentes categorias

Criterios de aceptacion

La funcionalidad se considera completa cuando:

  • [x] AC-001: El usuario puede consultar el listado completo de categorias con codigo, nombre, producto asociado y marca de defecto
  • [x] AC-002: El usuario puede crear una nueva categoria con nombre, producto asociado y opcionalmente marca de defecto
  • [x] AC-003: El usuario puede configurar cambio automatico por edad especificando categoria destino, edad desde y edad hasta
  • [x] AC-004: El sistema valida que los tres campos de cambio automatico esten todos completos o todos vacios
  • [x] AC-005: El sistema valida que la edad desde sea menor que la edad hasta
  • [x] AC-006: El usuario puede editar todos los campos de una categoria existente
  • [x] AC-007: Al eliminar una categoria, el sistema solicita una categoria de reemplazo y reasigna los miembros
  • [x] AC-008: El usuario puede alternar la marca "por defecto" directamente desde la tabla
  • [x] AC-009: El usuario puede asignar masivamente una categoria a multiples miembros seleccionados
  • [x] AC-010: La asignacion masiva reporta cantidad de miembros asignados exitosamente y cantidad omitidos
  • [x] AC-011: El filtro por categoria en la vista de asignacion masiva limpia la seleccion al cambiar
  • [x] AC-012: El sistema muestra notificaciones de exito y error para todas las operaciones

Notas adicionales

  • La eliminacion de una categoria requiere seleccionar una categoria de reemplazo, lo cual garantiza que nunca queden miembros sin categoria asignada
  • El cambio automatico por edad es una configuracion declarativa en la categoria; el proceso que efectivamente ejecuta la migracion de miembros se maneja en otra funcionalidad del modulo
  • La asignacion masiva reemplaza la categoria actual del miembro por la nueva categoria seleccionada; no se acumulan multiples categorias por miembro

Historial de cambios

FechaVersionAutorDescripcion
2026-01-271.0SistemaCreacion del documento de requisitos de negocio (funcionalidad ya implementada)