Gestión de Clientes
Administración completa del módulo de clientes. Los clientes se obtienen de la tabla client complementada con información de la tabla user.
Ver Lista de Clientes
La lista de clientes muestra todos los usuarios registrados como clientes en el sistema con información relevante:
-
ID del cliente
-
Email (desde tabla
user) -
Nombre para mostrar (display_name desde tabla
user) -
Tipo de cliente
-
Estado de verificación de email
-
ID de usuario (Firebase Auth)
Crear Cliente
Para crear un nuevo cliente:
-
Accede a la sección "Clientes"
-
Haz clic en "Nuevo Cliente"
-
Completa el formulario con los datos requeridos:
-
User ID (Firebase): ID del usuario de Firebase Auth (opcional si proporcionas email)
-
Email: Dirección de correo electrónico del usuario (opcional si proporcionas User ID)
-
Tipo de Cliente: Selecciona el tipo de cliente
-
-
Guarda los cambios
Manejo de Usuarios Firebase Existentes
El sistema maneja automáticamente usuarios Firebase existentes:
-
Si proporcionas un email: El sistema verifica primero si el usuario existe en Firebase Auth
-
Si el usuario existe: El sistema busca su
user_iden la base de datos usando elfirebase_id -
Si el usuario no existe en la BD: El sistema sincroniza automáticamente el usuario desde Firebase Auth a la base de datos
-
Si el usuario no existe en Firebase: El sistema crea un nuevo usuario en Firebase Auth
Este proceso asegura que no se intente crear usuarios duplicados y maneja correctamente usuarios existentes.
Nota: El usuario debe existir previamente en Firebase Auth o proporcionar un email válido para crear un nuevo usuario. Si proporcionas un User ID de Firebase, el sistema lo utilizará directamente.
Editar Cliente
Los datos de los clientes pueden ser actualizados desde el panel de administración:
-
Selecciona el cliente a editar
-
Haz clic en "Editar"
-
Modifica el tipo de cliente (el user_id no se puede modificar)
-
Guarda los cambios
Eliminar Cliente
Los clientes pueden ser eliminados siguiendo las políticas de retención de datos:
-
Selecciona el cliente
-
Haz clic en "Eliminar"
-
Confirma la eliminación
Advertencia: Esta acción eliminará el registro del cliente, pero no eliminará el usuario de Firebase Auth ni de la tabla user.
Búsqueda y Filtros
Utiliza las herramientas de búsqueda para encontrar clientes:
-
Por email (búsqueda en tabla
user) -
Por nombre para mostrar (display_name)
-
Por tipo de cliente
Paginación
La lista de clientes incluye paginación con 50 registros por página. Puedes navegar entre páginas usando los controles de paginación en la parte inferior de la lista.
Gestión de Tipos de Cliente
Los tipos de cliente definen categorías especiales:
-
Cliente Regular: Cliente estándar sin beneficios especiales
-
Cliente VIP: Cliente con beneficios y prioridades especiales
-
Cliente Corporativo: Cliente empresarial con tarifas especiales
-
Cliente Promocional: Cliente con descuentos o promociones activas
Verificación de Datos
Verificar Información del Cliente
Es importante mantener la información de clientes actualizada:
-
Email verificado: Indica si el cliente ha confirmado su email
-
Datos completos: Verifica que toda la información esté completa
-
Contacto actualizado: Confirma que los datos de contacto sean correctos
Actualizar Información desde User
La información básica del cliente (nombre, email) proviene de la tabla user. Si necesitas actualizar esta información:
-
El cliente debe actualizar su perfil desde la aplicación
-
O un super usuario puede actualizar la información en la tabla
user -
Los cambios se reflejarán automáticamente en la vista de clientes
Mejores Prácticas
-
Mantén datos actualizados: Revisa regularmente la información de clientes
-
Verifica tipos de cliente: Asegúrate de que los tipos estén correctamente asignados
-
Documenta cambios: Toma notas sobre cambios importantes en la información de clientes
-
Respeta privacidad: Maneja la información de clientes con confidencialidad
-
Coordina con operadores: Comunica cambios relevantes al equipo operativo
Solución de Problemas
Cliente No Aparece en la Lista
Si un cliente no aparece:
-
Verifica que el cliente esté registrado en Firebase Auth
-
Confirma que exista un registro en la tabla
user -
Verifica los filtros aplicados
-
Contacta al super usuario si el problema persiste
Error al Crear Cliente
Si hay error al crear un cliente:
-
Código 400 (Bad Request): Solicitud mal formada
-
Verifica que el
user_idsea un número válido (si se proporciona) -
Verifica que el formato del email sea correcto
-
Asegúrate de proporcionar
user_idoemail(al menos uno es requerido) -
Verifica que el usuario exista en la base de datos si proporcionas
user_id -
Código 409 (Conflict): Conflicto de recursos
-
"El email ya está en uso" - El email ya está registrado en Firebase Auth
-
"El teléfono ya está en uso" - El teléfono ya está registrado en el sistema
-
"El usuario ya es cliente" - El usuario ya tiene un registro de cliente activo
-
"El usuario no puede convertirse en cliente" - El usuario tiene roles que impiden ser cliente
-
Otros errores:
-
Verifica que el User ID de Firebase sea correcto (si se proporciona)
-
Confirma que el usuario exista en Firebase Auth (si se proporciona email)
-
Asegúrate de que no haya un cliente duplicado
-
Revisa que todos los campos requeridos estén completos
Códigos de Estado HTTP
El sistema utiliza códigos de estado HTTP estándar para indicar el resultado de las operaciones:
-
200 OK: Operación exitosa
-
400 Bad Request: Solicitud mal formada (datos inválidos, formato incorrecto)
-
409 Conflict: Conflicto de recursos (email/teléfono en uso, usuario ya es cliente)
-
404 Not Found: Recurso no encontrado
-
500 Internal Server Error: Error interno del servidor
Los códigos 409 se utilizan específicamente para conflictos de recursos, mientras que 400 se usa para solicitudes mal formadas.