Appearance
Disciplinas del Miembro
Modulo: Membresias Tipo: Resource Estado: Implementado Fecha: 2026-01-27
Descripcion
Problema que resuelve
Los miembros de la organizacion pueden participar en distintas disciplinas o actividades. La gestion de estas relaciones requiere:
- Registrar que disciplinas practica cada miembro
- Identificar cual es la disciplina principal de cada miembro
- Permitir cambios en las asignaciones a lo largo del tiempo
- Evitar asignaciones duplicadas de la misma disciplina a un miembro
Solucion implementada
Se implemento un sistema completo de gestion de disciplinas por miembro que permite:
- Consulta: Visualizar todas las disciplinas asignadas a un miembro
- Asignacion: Agregar nuevas disciplinas a un miembro con indicador de principal
- Modificacion: Cambiar la marca de disciplina principal
- Desasignacion: Quitar disciplinas que el miembro ya no practica
Valor de negocio
- Visibilidad: Conocer las actividades de cada miembro para planificacion y comunicacion
- Organizacion: Identificar la disciplina principal de cada miembro para reportes y estadisticas
- Flexibilidad: Permitir que los miembros cambien de disciplinas a lo largo del tiempo
- Integridad: Evitar duplicados en la asignacion de disciplinas
Contexto del sistema
Esta funcionalidad se gestiona como un sub-recurso del miembro y se relaciona con:
- Gestion de Miembros: Las disciplinas se asignan en el contexto del miembro
- Catalogo de Disciplinas: Las disciplinas disponibles estan definidas en el catalogo base del sistema
- Listado de Miembros: El listado permite filtrar miembros por disciplina asignada
Frontend (Perspectiva de Usuario)
Vistas
Listado de Disciplinas del Miembro
- Modal que muestra todas las disciplinas asignadas a un miembro
- Para cada disciplina se muestra el nombre y si es la disciplina principal
- Acciones disponibles para agregar, editar y eliminar disciplinas
Modal de Asignacion de Disciplina
- Formulario para agregar una nueva disciplina al miembro
- Selector de disciplina (del catalogo disponible)
- Indicador para marcar como disciplina principal
- Validacion de duplicados antes de confirmar
Modal de Edicion de Disciplina
- Formulario para modificar la relacion miembro-disciplina
- Permite cambiar la marca de disciplina principal
Modal de Confirmacion de Eliminacion
- Dialogo de confirmacion antes de desasignar una disciplina del miembro
Interacciones del usuario
- Acceder al detalle de un miembro y abrir la gestion de disciplinas
- Visualizar las disciplinas actualmente asignadas al miembro
- Agregar una nueva disciplina seleccionandola del catalogo y marcando si es principal
- Modificar la marca de principal de una disciplina ya asignada
- Eliminar una disciplina del miembro previa confirmacion
Permisos
| Permiso | Descripcion | Acciones permitidas |
|---|---|---|
| Visualizar miembros | Acceso de lectura al miembro y sus disciplinas | Listar disciplinas asignadas |
| Gestionar miembros | Acceso de escritura sobre el miembro | Asignar, modificar y desasignar disciplinas |
Estados de UI
- Cargando: Indicador mientras se obtienen las disciplinas del miembro
- Datos disponibles: Listado de disciplinas asignadas con acciones disponibles
- Sin disciplinas: Mensaje informativo cuando el miembro no tiene disciplinas asignadas
- Guardando: Indicador de progreso al asignar, modificar o eliminar una disciplina
- Exito: Confirmacion de la operacion realizada
- Error de duplicado: Mensaje de error si se intenta asignar una disciplina ya asignada
- Error general: Mensaje de error si falla la operacion
Backend (Perspectiva de Datos de Negocio)
Entidades de negocio
Disciplina del Miembro
Representa la relacion entre un miembro y una disciplina que practica, incluyendo la indicacion de si es su disciplina principal.
Datos necesarios
| Dato | Descripcion | Restricciones |
|---|---|---|
| Miembro | Referencia al miembro al que se asigna la disciplina | Requerido, debe existir |
| Disciplina | Referencia a la disciplina del catalogo | Requerida, debe existir en el catalogo |
| Principal | Indica si es la disciplina principal del miembro | Valor booleano |
Relaciones de negocio
- Un miembro puede tener multiples disciplinas asignadas
- Cada disciplina asignada referencia a una disciplina del catalogo base
- La relacion entre miembro y disciplina es unica (no se puede asignar la misma disciplina dos veces al mismo miembro)
Validaciones de negocio
| Validacion | Descripcion |
|---|---|
| Disciplina valida | La disciplina debe existir en el catalogo del sistema |
| Sin duplicados | No se puede asignar la misma disciplina mas de una vez al mismo miembro |
| Miembro existente | El miembro debe existir en el sistema |
Reglas de Negocio
RN-001: Disciplina principal
Descripcion: Cada miembro puede tener una disciplina marcada como principal. Esta marca permite identificar la actividad primaria del miembro.
Condicion: Al asignar o modificar una disciplina del miembro.
Accion:
- El usuario puede marcar una disciplina como principal al asignarla
- El usuario puede cambiar la marca de principal editando una disciplina existente
- La marca de principal es un indicador booleano en la relacion
RN-002: Unicidad de asignacion
Descripcion: Un miembro no puede tener la misma disciplina asignada mas de una vez.
Condicion: Al intentar asignar una nueva disciplina a un miembro.
Accion:
- El sistema verifica si la disciplina ya esta asignada al miembro
- Si ya existe la asignacion, se rechaza la operacion con un mensaje de error indicando el duplicado
- Si no existe, se permite la asignacion
RN-003: Gestion independiente
Descripcion: Las disciplinas del miembro se gestionan de forma independiente a los demas datos del miembro.
Condicion: Al realizar operaciones sobre las disciplinas de un miembro.
Accion:
- Las operaciones de asignar, modificar y desasignar disciplinas no afectan otros datos del miembro
- Cada operacion es independiente y se confirma individualmente
Casos de Uso
CU-001: Asignar disciplina a un miembro
Actor: Usuario administrativo con permiso de gestion de miembros
Objetivo: Registrar que un miembro practica una disciplina determinada
Precondiciones:
- Usuario autenticado con permiso de gestion de miembros
- Miembro existente en el sistema
- Catalogo de disciplinas con opciones disponibles
Flujo principal:
- El usuario accede al detalle del miembro
- El usuario abre la gestion de disciplinas
- El sistema muestra las disciplinas actualmente asignadas
- El usuario selecciona la opcion "Agregar disciplina"
- El sistema presenta el formulario con selector de disciplina e indicador de principal
- El usuario selecciona la disciplina del catalogo
- El usuario marca o no la disciplina como principal
- El usuario confirma la asignacion
- El sistema valida que la disciplina no este ya asignada al miembro
- El sistema crea la asignacion
- El listado se actualiza mostrando la nueva disciplina
Postcondiciones:
- El miembro tiene la disciplina asignada
- Si se marco como principal, la disciplina aparece como principal
Flujos alternativos:
| Paso | Condicion | Accion |
|---|---|---|
| 9a | La disciplina ya esta asignada al miembro | Mostrar error de duplicado, no crear la asignacion |
CU-002: Modificar disciplina principal
Actor: Usuario administrativo con permiso de gestion de miembros
Objetivo: Cambiar cual es la disciplina principal de un miembro
Precondiciones:
- Usuario autenticado con permiso de gestion de miembros
- Miembro con al menos una disciplina asignada
Flujo principal:
- El usuario accede a la gestion de disciplinas del miembro
- El sistema muestra las disciplinas asignadas
- El usuario selecciona editar una disciplina
- El usuario modifica la marca de principal
- El usuario confirma los cambios
- El sistema actualiza la relacion
- El listado se actualiza reflejando el cambio
Postcondiciones:
- La marca de principal de la disciplina queda actualizada
CU-003: Desasignar disciplina
Actor: Usuario administrativo con permiso de gestion de miembros
Objetivo: Quitar una disciplina que el miembro ya no practica
Precondiciones:
- Usuario autenticado con permiso de gestion de miembros
- Miembro con la disciplina asignada
Flujo principal:
- El usuario accede a la gestion de disciplinas del miembro
- El sistema muestra las disciplinas asignadas
- El usuario selecciona eliminar una disciplina
- El sistema presenta confirmacion de eliminacion
- El usuario confirma la desasignacion
- El sistema elimina la relacion
- El listado se actualiza sin la disciplina eliminada
Postcondiciones:
- La disciplina ya no esta asignada al miembro
- Los datos del miembro no se ven afectados
Flujos alternativos:
| Paso | Condicion | Accion |
|---|---|---|
| 5a | El usuario cancela la operacion | Se cierra el dialogo sin realizar cambios |
Consideraciones
Seguridad
- Las disciplinas del miembro se gestionan bajo los mismos permisos que el miembro
- Solo usuarios con permiso de gestion pueden asignar, modificar y desasignar disciplinas
- Los usuarios con permiso de visualizacion solo pueden consultar las disciplinas asignadas
Auditoria
- Las operaciones de asignacion, modificacion y desasignacion de disciplinas quedan registradas en el sistema de auditoria
- Se registra el usuario, fecha, hora y la operacion realizada
Rendimiento
- La consulta de disciplinas del miembro se resuelve de forma eficiente como parte del detalle del miembro
- Las operaciones individuales de asignacion, modificacion y desasignacion son inmediatas
Dependencias
Funcionalidades relacionadas
- Gestion de Miembros: Las disciplinas son un sub-recurso del miembro
- Catalogo de Disciplinas: Define las disciplinas disponibles para asignacion
- Listado de Miembros: Permite filtrar miembros por disciplina asignada
Criterios de Aceptacion
- [x] AC-001: El usuario puede visualizar las disciplinas asignadas a un miembro desde el detalle del miembro
- [x] AC-002: El usuario puede asignar una nueva disciplina seleccionandola del catalogo disponible
- [x] AC-003: Al asignar, el usuario puede marcar la disciplina como principal
- [x] AC-004: El sistema rechaza la asignacion si la disciplina ya esta asignada al miembro (validacion de duplicados)
- [x] AC-005: El usuario puede modificar la marca de disciplina principal en una disciplina ya asignada
- [x] AC-006: El usuario puede desasignar una disciplina del miembro previa confirmacion
- [x] AC-007: La desasignacion de una disciplina no afecta otros datos del miembro
Notas Adicionales
Las disciplinas del miembro se gestionan desde modales accesibles desde el formulario de edicion del miembro. Cada operacion (asignar, editar, eliminar) tiene su propio modal dedicado, lo que proporciona una experiencia de usuario clara y enfocada para cada accion.
Historial de Cambios
| Fecha | Version | Autor | Descripcion |
|---|---|---|---|
| 2026-01-27 | 1.0 | Sistema | Creacion del documento - Funcionalidad implementada y en produccion |