Overview
The Member Management feature provides a complete solution for managing association members (socios) and general users. It handles member registration, profile management, membership status tracking, and communication with members through an integrated email system. This module is central to SociApp’s association management capabilities, allowing administrators and monitors to maintain accurate member records, track membership fees, and manage member lifecycle from registration to deactivation.Key Functionality
Member Registration
Register new members with complete personal and contact information, including verification workflow
Profile Management
Update member details, membership status, payment information, and membership categories
Advanced Search
Smart search functionality with weighted scoring across multiple fields (name, DNI, email, category)
Email Communication
Send individual or bulk emails to members directly from the member list
User Interface Workflow
The member management interface (Usuarios.vue) provides a streamlined workflow for managing association members:Main Member List View
-
Search and Filter: Real-time search with intelligent scoring algorithm that prioritizes:
- Exact matches (score: 100)
- Prefix matches (score: 50)
- Partial matches in name, apellidos, DNI, email, and socio status
- Pagination: Display 10 members per page with navigation controls showing current range (e.g., “1 - 10 de 45”)
-
Member Cards: Expandable list items showing:
- Summary: Member name (nombre + apellidos) and category badge
- Details: Full member information including contact details, address, membership dates, and payment information
Member Actions
All member management actions require authentication with
monitor or admin role.- Click “Agregar Usuario” button
- Fill in member information form (userSchema)
- System validates required fields and sends verification email
- Member account created with
isVerified: falsestatus
- Click edit button on member card
- Modify member details using userEditSchema
- System updates member record and confirms success
- Click delete button
- Confirm deletion in modal dialog
- System removes member by DNI identifier
- Click mail icon on individual member card for single recipient
- Compose subject and message in MailModal
- Email sent through integrated mail service
Data Model
The member data is stored in theUsuarios entity with the following structure:
Key Fields
- IdUsuario: Primary key, auto-generated
- dni: National identification number, used as unique identifier for operations
- socio: Enum field distinguishing between active members (‘Socio’) and non-members (‘NoSocio’)
- isVerified: Boolean flag for email verification status
- verificationCode: Temporary code for email verification (expires in 15 minutes)
- fechaalta/fechabaja: Membership activation and deactivation dates
- formadepago: Payment method for membership fees
- cuota: Membership fee amount (decimal)
- categoria: Member category or role within the association
API Endpoints
All endpoints are protected by JWT authentication and requiremonitor or admin roles.
GET /users
Retrieve all members from the database.POST /users
Create a new member account.POST /users/edit
Update existing member information.POST /users/delete
Remove a member from the system.Search Algorithm
The member search uses a weighted scoring system implemented in Usuarios.vue:Use Cases
Member Onboarding
- Administrator creates new member account
- System sends verification email with 6-digit code
- Member verifies email within 15 minutes
- Account becomes active with
isVerified: true - Member can access member-only features
Membership Renewal
- Administrator searches for member by name or DNI
- Opens member details to view current status
- Updates
cuotafield with new fee amount - Updates
formadepagoif payment method changed - System saves changes and confirms update
Member Communication
- Search for specific members or view all
- Click mail icon on individual member cards
- System pre-populates recipient email
- Compose message in MailModal
- Email sent through
/mail/sendendpoint with professional template
Bulk Operations
For bulk email communication to all members, see the Messaging feature documentation.Integration with Other Features
- Activities: Members can be assigned as monitors (idMonitor field) for activities
- Projects: Members can be designated as project responsables
- Messaging: Member email addresses used for bulk communications
- Configuration: Members can be assigned to Junta Directiva (board of directors)
