Skip to content

Productos del Miembro

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


Descripcion

Problema que resuelve

Los miembros de la organizacion pueden tener productos asociados que representan servicios o bienes contratados como parte de su membresia. La gestion de estas asignaciones presenta los siguientes desafios:

  • Necesidad de vincular productos a miembros con ajustes de precio personalizados
  • Configuracion flexible de ajustes: porcentuales o fijos, positivos o negativos (descuentos o recargos)
  • Requerimiento de asignar el mismo producto a multiples miembros de forma eficiente
  • Necesidad de desasignar productos de forma masiva cuando ya no aplican
  • Gestion de observaciones especificas por miembro y producto

Solucion implementada

Se implemento un sistema completo de gestion de productos por miembro con operaciones individuales y masivas:

  1. Consulta individual: Visualizar productos asignados a un miembro con sus ajustes de precio
  2. Asignacion individual: Agregar un producto a un miembro con configuracion de ajuste de precio
  3. Modificacion: Cambiar el ajuste de precio de un producto ya asignado
  4. Desasignacion individual: Quitar un producto de un miembro
  5. Asignacion masiva: Asignar el mismo producto con la misma configuracion de ajuste a multiples miembros simultaneamente
  6. Eliminacion masiva: Desasignar un producto de multiples miembros simultaneamente

Valor de negocio

  • Personalizacion: Cada miembro puede tener ajustes de precio especificos para cada producto (descuentos, bonificaciones, recargos)
  • Eficiencia operativa: La asignacion masiva reduce significativamente el tiempo de gestion cuando se debe vincular un producto a decenas o cientos de miembros
  • Transparencia: Reportes de resultados de operaciones masivas que detallan exitos y omisiones con sus razones
  • Flexibilidad: Soporte para ajustes porcentuales y de monto fijo, tanto positivos como negativos
  • Trazabilidad: Observaciones por asignacion para documentar condiciones especiales

Contexto del sistema

Esta funcionalidad se relaciona con:

  • Gestion de Miembros: Los productos se asignan en el contexto de cada miembro
  • Catalogo de Productos: Los productos disponibles estan definidos en el catalogo base del sistema
  • Listado de Miembros: El listado permite filtrar miembros por producto asignado y seleccionar multiples miembros para operaciones masivas
  • Facturacion de Membresias: Los productos asignados al miembro alimentan el proceso de facturacion periodica con sus ajustes de precio

Frontend (Perspectiva de Usuario)

Vistas

Listado de Productos del Miembro

  • Modal que muestra todos los productos asignados a un miembro
  • Para cada producto se muestra el nombre, el ajuste de precio configurado y las observaciones
  • Acciones disponibles para agregar, editar y eliminar productos

Modal de Asignacion de Producto

  • Formulario para agregar un producto al miembro
  • Selector de producto (del catalogo disponible)
  • Configuracion de ajuste de precio:
    • Signo del ajuste: positivo (+) o negativo (-)
    • Tipo de ajuste: Porcentual (P) o Fijo (F)
    • Valor del ajuste
  • Campo de observaciones adicionales

Modal de Edicion de Producto

  • Formulario para modificar el ajuste de precio de un producto ya asignado
  • Permite cambiar signo, tipo, valor del ajuste y observaciones

Modal de Confirmacion de Eliminacion

  • Dialogo de confirmacion antes de desasignar un producto del miembro

Vista de Asignacion Masiva de Productos

  • Vista dedicada para operaciones masivas sobre productos de miembros
  • Reutiliza la seleccion multiple de miembros del listado principal
  • Configuracion del producto y ajuste de precio a aplicar masivamente
  • Reporte de resultados de la operacion: cantidad exitosa y omitida con razones

Interacciones del usuario

Gestion individual (desde detalle del miembro):

  1. Acceder al detalle de un miembro y abrir la gestion de productos
  2. Visualizar los productos asignados con sus ajustes de precio
  3. Agregar un producto seleccionandolo del catalogo, configurando el ajuste de precio y opcionalmente ingresando observaciones
  4. Modificar el ajuste de precio de un producto ya asignado
  5. Eliminar un producto del miembro previa confirmacion

Asignacion masiva:

  1. Desde el listado de miembros, seleccionar multiples miembros
  2. Acceder a la vista de asignacion masiva de productos
  3. Seleccionar el producto a asignar
  4. Configurar el ajuste de precio (signo, tipo, valor) que se aplicara a todos los miembros seleccionados
  5. Confirmar la asignacion masiva
  6. Revisar el reporte de resultados: miembros asignados exitosamente y miembros omitidos con las razones (por ejemplo, ya tenian el producto asignado)

Eliminacion masiva:

  1. Desde el listado de miembros, seleccionar multiples miembros
  2. Acceder a la vista de asignacion masiva de productos
  3. Seleccionar el producto a desasignar
  4. Confirmar la eliminacion masiva
  5. Revisar el reporte de resultados

Permisos

PermisoDescripcionAcciones permitidas
Visualizar miembrosAcceso de lectura al miembro y sus productosListar productos asignados
Gestionar miembrosAcceso de escritura sobre el miembroAsignar, modificar y desasignar productos (individual y masivo)

Estados de UI

Gestion individual:

  • Cargando: Indicador mientras se obtienen los productos del miembro
  • Datos disponibles: Listado de productos con ajustes de precio y acciones
  • Sin productos: Mensaje informativo cuando el miembro no tiene productos asignados
  • Guardando: Indicador de progreso al asignar, modificar o eliminar un producto
  • Exito: Confirmacion de la operacion realizada
  • Error: Mensaje de error si falla la operacion

Asignacion masiva:

  • Configurando: El usuario selecciona producto y ajuste de precio para la asignacion masiva
  • Procesando: Indicador de progreso durante la operacion masiva
  • Reporte de resultados: Vista que muestra la cantidad de miembros asignados exitosamente y los miembros omitidos con sus razones especificas
  • Error: Mensaje de error si la operacion masiva falla completamente

Eliminacion masiva:

  • Confirmando: Dialogo de confirmacion de la eliminacion masiva
  • Procesando: Indicador de progreso durante la eliminacion
  • Reporte de resultados: Vista con el resultado de la eliminacion masiva
  • Error: Mensaje de error si la operacion falla

Backend (Perspectiva de Datos de Negocio)

Entidades de negocio

Producto del Miembro

Representa la relacion entre un miembro y un producto del catalogo, incluyendo un ajuste de precio personalizado y observaciones.

Datos necesarios

DatoDescripcionRestricciones
MiembroReferencia al miembro al que se asigna el productoRequerido, debe existir
ProductoReferencia al producto del catalogoRequerido, debe existir en el catalogo
Signo del ajusteIndica si el ajuste es positivo (+) o negativo (-)Requerido: + o -
Tipo de ajusteIndica si el ajuste es porcentual o de monto fijoRequerido: P (Porcentual) o F (Fijo)
Valor del ajusteValor numerico del ajuste a aplicarNumerico
ObservacionesNotas adicionales sobre la asignacionOpcional, texto libre

Relaciones de negocio

  • Un miembro puede tener multiples productos asignados
  • Cada producto asignado referencia a un producto del catalogo base
  • Cada asignacion tiene un ajuste de precio independiente (signo + tipo + valor)
  • La relacion entre miembro y producto es unica (no se puede asignar el mismo producto dos veces al mismo miembro)

Validaciones de negocio

ValidacionDescripcion
Producto validoEl producto debe existir en el catalogo del sistema
Miembro existenteEl miembro debe existir en el sistema
Signo validoEl signo del ajuste debe ser + (positivo) o - (negativo)
Tipo validoEl tipo de ajuste debe ser P (Porcentual) o F (Fijo)
Valor numericoEl valor del ajuste debe ser un numero valido

Reglas de Negocio

RN-001: Ajuste de precio personalizado

Descripcion: Cada asignacion de producto a un miembro incluye un ajuste de precio que modifica el precio base del producto para ese miembro.

Condicion: Al asignar o modificar un producto del miembro.

Accion:

  • El ajuste se configura con tres componentes:
    • Signo: Positivo (+) para recargo, Negativo (-) para descuento
    • Tipo: Porcentual (P) para ajuste en porcentaje, Fijo (F) para ajuste en monto
    • Valor: La magnitud del ajuste
  • Ejemplo: Signo "-", Tipo "P", Valor "10" significa un descuento del 10% sobre el precio base del producto
  • Ejemplo: Signo "+", Tipo "F", Valor "500" significa un recargo fijo de $500 sobre el precio base

RN-002: Unicidad de asignacion de producto

Descripcion: Un miembro no puede tener el mismo producto asignado mas de una vez.

Condicion: Al intentar asignar un producto a un miembro (individual o masivamente).

Accion:

  • El sistema verifica si el producto ya esta asignado al miembro
  • Si ya existe la asignacion, se rechaza la operacion (individual) o se omite el miembro (masiva) con la razon correspondiente
  • Si no existe, se permite la asignacion

RN-003: Asignacion masiva con configuracion unica

Descripcion: La asignacion masiva aplica el mismo producto con la misma configuracion de ajuste de precio a todos los miembros seleccionados.

Condicion: El usuario solicita asignar un producto a multiples miembros.

Accion:

  • Se selecciona un unico producto del catalogo
  • Se configura un unico ajuste de precio (signo, tipo, valor) que se aplica a todos
  • El sistema procesa cada miembro individualmente:
    • Si el miembro no tiene el producto: lo asigna con el ajuste configurado
    • Si el miembro ya tiene el producto: lo omite y registra la razon
  • Al finalizar, se presenta un reporte de resultados

RN-004: Reporte de resultados de operaciones masivas

Descripcion: Las operaciones masivas (asignacion y eliminacion) generan un reporte detallado de resultados.

Condicion: Se completa una operacion masiva de productos.

Accion:

  • El reporte incluye:
    • Cantidad de miembros procesados exitosamente
    • Cantidad de miembros omitidos
    • Para cada miembro omitido: la razon especifica de la omision (por ejemplo, "ya tiene el producto asignado", "miembro no encontrado")
  • El reporte se presenta al usuario al finalizar la operacion

RN-005: Eliminacion masiva de productos

Descripcion: La eliminacion masiva permite desasignar un producto de multiples miembros en una sola operacion.

Condicion: El usuario solicita eliminar un producto de multiples miembros seleccionados.

Accion:

  • Se selecciona el producto a desasignar
  • El sistema procesa cada miembro individualmente:
    • Si el miembro tiene el producto asignado: lo desasigna
    • Si el miembro no tiene el producto: lo omite
  • Al finalizar, se presenta un reporte de resultados similar al de la asignacion masiva

RN-006: Observaciones por asignacion

Descripcion: Cada asignacion de producto puede incluir observaciones adicionales para documentar condiciones especiales o acuerdos.

Condicion: Al asignar o modificar un producto del miembro.

Accion:

  • El campo de observaciones es opcional
  • Permite texto libre para registrar informacion relevante de la asignacion
  • Las observaciones se almacenan y se muestran al consultar los productos del miembro

Casos de Uso

CU-001: Asignar producto individual a un miembro

Actor: Usuario administrativo con permiso de gestion de miembros

Objetivo: Vincular un producto del catalogo a un miembro con un ajuste de precio personalizado

Precondiciones:

  • Usuario autenticado con permiso de gestion de miembros
  • Miembro existente en el sistema
  • Catalogo de productos con opciones disponibles

Flujo principal:

  1. El usuario accede al detalle del miembro
  2. El usuario abre la gestion de productos
  3. El sistema muestra los productos actualmente asignados con sus ajustes
  4. El usuario selecciona la opcion "Agregar producto"
  5. El sistema presenta el formulario con selector de producto y configuracion de ajuste
  6. El usuario selecciona el producto del catalogo
  7. El usuario configura el ajuste de precio:
    • Selecciona signo: positivo (+) o negativo (-)
    • Selecciona tipo: Porcentual (P) o Fijo (F)
    • Ingresa el valor del ajuste
  8. Opcionalmente, el usuario ingresa observaciones
  9. El usuario confirma la asignacion
  10. El sistema valida que el producto no este ya asignado
  11. El sistema crea la asignacion con el ajuste configurado
  12. El listado se actualiza mostrando el nuevo producto

Postcondiciones:

  • El miembro tiene el producto asignado con su ajuste de precio personalizado
  • Las observaciones quedan registradas si fueron ingresadas

Flujos alternativos:

PasoCondicionAccion
10aEl producto ya esta asignado al miembroMostrar error de duplicado, no crear la asignacion

CU-002: Asignacion masiva de producto a multiples miembros

Actor: Usuario administrativo con permiso de gestion de miembros

Objetivo: Asignar el mismo producto con la misma configuracion de ajuste a un grupo de miembros de forma eficiente

Precondiciones:

  • Usuario autenticado con permiso de gestion de miembros
  • Multiples miembros seleccionados en el listado
  • Catalogo de productos con opciones disponibles

Flujo principal:

  1. El usuario accede al listado de miembros
  2. El usuario selecciona multiples miembros (usando los controles de seleccion)
  3. El usuario accede a la vista de asignacion masiva de productos
  4. El usuario selecciona el producto a asignar del catalogo
  5. El usuario configura el ajuste de precio (signo, tipo, valor) que se aplicara a todos
  6. El usuario confirma la asignacion masiva
  7. El sistema procesa cada miembro seleccionado:
    • Asigna el producto si el miembro no lo tiene
    • Omite el miembro si ya tiene el producto, registrando la razon
  8. El sistema presenta el reporte de resultados:
    • Cantidad de asignaciones exitosas
    • Cantidad de miembros omitidos con razones

Postcondiciones:

  • Los miembros que no tenian el producto ahora lo tienen asignado con el ajuste configurado
  • Los miembros que ya tenian el producto no fueron modificados
  • El usuario dispone del reporte de resultados para revision

Flujos alternativos:

PasoCondicionAccion
2aNo hay miembros seleccionadosEl acceso a asignacion masiva no esta disponible
7aTodos los miembros ya tienen el productoEl reporte muestra 0 exitosos y el total como omitidos

CU-003: Eliminacion masiva de producto de multiples miembros

Actor: Usuario administrativo con permiso de gestion de miembros

Objetivo: Desasignar un producto de un grupo de miembros de forma eficiente

Precondiciones:

  • Usuario autenticado con permiso de gestion de miembros
  • Multiples miembros seleccionados en el listado

Flujo principal:

  1. El usuario accede al listado de miembros
  2. El usuario selecciona multiples miembros
  3. El usuario accede a la vista de asignacion masiva de productos
  4. El usuario selecciona la opcion de eliminacion masiva
  5. El usuario selecciona el producto a desasignar
  6. El usuario confirma la eliminacion masiva
  7. El sistema procesa cada miembro seleccionado:
    • Desasigna el producto si el miembro lo tiene
    • Omite el miembro si no tiene el producto
  8. El sistema presenta el reporte de resultados

Postcondiciones:

  • Los miembros que tenian el producto ya no lo tienen asignado
  • Los miembros que no tenian el producto no fueron afectados
  • El usuario dispone del reporte de resultados

Consideraciones

Seguridad

  • Los productos del miembro se gestionan bajo los mismos permisos que el miembro
  • Las operaciones masivas requieren los mismos permisos de gestion que las individuales
  • Solo usuarios con permiso de gestion pueden asignar, modificar y desasignar productos

Auditoria

  • Las operaciones individuales de asignacion, modificacion y desasignacion quedan registradas en el sistema de auditoria
  • Las operaciones masivas registran el detalle de cada miembro procesado (exitoso u omitido)
  • Se registra el usuario, fecha, hora y la operacion realizada

Rendimiento

  • La consulta de productos del miembro se resuelve de forma eficiente como parte del detalle del miembro
  • Las operaciones masivas procesan los miembros de forma optimizada para minimizar el tiempo de ejecucion
  • El reporte de resultados de operaciones masivas se genera en la misma solicitud

Dependencias

Funcionalidades relacionadas

  • Gestion de Miembros: Los productos son un sub-recurso del miembro
  • Catalogo de Productos: Define los productos disponibles para asignacion
  • Listado de Miembros: Permite filtrar miembros por producto asignado y seleccionar miembros para operaciones masivas
  • Facturacion de Membresias: Los productos asignados al miembro con sus ajustes de precio alimentan el proceso de facturacion periodica

Criterios de Aceptacion

Gestion individual

  • [x] AC-001: El usuario puede visualizar los productos asignados a un miembro con sus ajustes de precio y observaciones
  • [x] AC-002: El usuario puede asignar un producto seleccionandolo del catalogo y configurando el ajuste de precio (signo, tipo, valor)
  • [x] AC-003: El ajuste de precio soporta signo positivo (+) y negativo (-), tipo Porcentual (P) y Fijo (F), y un valor numerico
  • [x] AC-004: El usuario puede ingresar observaciones al asignar un producto
  • [x] AC-005: El usuario puede modificar el ajuste de precio de un producto ya asignado
  • [x] AC-006: El usuario puede desasignar un producto del miembro previa confirmacion
  • [x] AC-007: El sistema rechaza la asignacion si el producto ya esta asignado al miembro

Asignacion masiva

  • [x] AC-008: El usuario puede seleccionar multiples miembros del listado para asignacion masiva
  • [x] AC-009: La asignacion masiva permite seleccionar un producto y configurar un ajuste de precio unico para todos los miembros
  • [x] AC-010: El sistema procesa cada miembro individualmente, asignando o omitiendo segun corresponda
  • [x] AC-011: Al finalizar, el sistema presenta un reporte con la cantidad de miembros asignados exitosamente y los omitidos con sus razones

Eliminacion masiva

  • [x] AC-012: El usuario puede seleccionar multiples miembros del listado para eliminacion masiva de un producto
  • [x] AC-013: La eliminacion masiva desasigna el producto de todos los miembros que lo tengan
  • [x] AC-014: Al finalizar, el sistema presenta un reporte de resultados similar al de la asignacion masiva

Notas Adicionales

Ajuste de precio: componentes y ejemplos

El ajuste de precio se compone de tres elementos que juntos determinan como se modifica el precio base del producto para un miembro especifico:

SignoTipoValorSignificadoEjemplo (precio base $1000)
-P10Descuento del 10%Precio final: $900
+P15Recargo del 15%Precio final: $1150
-F200Descuento de $200Precio final: $800
+F500Recargo de $500Precio final: $1500

Relacion con facturacion

Los productos asignados a los miembros con sus ajustes de precio son un insumo directo para el proceso de facturacion periodica de membresias. Cuando se genera una factura para un miembro, el sistema toma los productos asignados y aplica los ajustes de precio configurados para calcular el monto a facturar.

Vista de asignacion masiva

La vista de asignacion masiva de productos es una vista dedicada que permite tanto la asignacion como la eliminacion masiva. El flujo de trabajo comienza desde el listado de miembros, donde el usuario selecciona los miembros objetivo, y continua en esta vista donde configura la operacion y revisa los resultados.


Historial de Cambios

FechaVersionAutorDescripcion
2026-01-271.0SistemaCreacion del documento - Funcionalidad implementada y en produccion