Skip to main content

Usuarios

El módulo de Usuarios gestiona a los usuarios de VIVLA: propietarios y visitantes de la app. Lo usa el equipo de CX para consultar sus datos, darlos de alta, asignarles casas y fracciones, y saltar a sus reservas.
Aquí no se gestionan las cuentas del panel. El equipo interno entra con Auth0: ver Primer acceso. Un usuario de este módulo es un cliente o propietario que usa la app.

Rutas

Sin read:users no ves Usuarios en la barra lateral. Sin edit:users no ves Añadir usuario, Editar, Eliminar usuario ni el interruptor de calendario de la ficha. Más detalle en Permisos.

Listado

Propietarios y visitantes

El interruptor de la cabecera (UserTypeSwitch) cambia entre Propietarios y Visitantes. Cada pestaña pide la lista a vivla-api con un role distinto (owner o visitor).
  • Un propietario tiene al menos una fracción en una casa.
  • Un visitante es un usuario sin casas.
La tabla muestra tres columnas: Propietario (foto, nombre y email), Teléfono y Propiedades. Cada casa de Propiedades enlaza a su ficha en Propiedades. Pulsa cualquier otra parte de la fila para abrir la ficha del usuario.

Búsqueda y filtros

Junto a Filtrar por tienes: Con algún filtro activo aparece Limpiar filtros. Abajo eliges el tamaño de página (10 por defecto) y navegas entre páginas.
Los filtros viven en la URL (userType, page, pageSize, home, location, cx y userId). Copia la URL para compartir una vista filtrada o la ficha de un usuario concreto.
El buscador Todos los usuarios no depende de la pestaña. Carga la lista completa de usuarios (/v2/admin/users/list) y abre la ficha aunque el usuario sea de la otra pestaña.

Ficha de usuario

La ficha (UserDetailsSheet) se abre como panel lateral (abajo en móvil) al añadir userId a la URL. Si el usuario no carga, verás Error al cargar los datos del usuario y la ficha se cierra.

Historial de reservas

Pulsa una reserva para abrirla en /bookings?bookingId=:id. Pulsa Ir a reservas para ver todas sus reservas en /bookings?user=:id. Más detalle en Reservas.

Bloquear el calendario de una casa

Cada casa de Propiedades muestra Calendario activo o Calendario inactivo. Con edit:users tienes un interruptor para cambiarlo.
  1. Pulsa el interruptor de la casa.
  2. Confirma en ¿Desactivar calendario? o ¿Activar calendario? con Confirmar.
Al desactivarlo, el aviso dice: «No podrá gestionar reservas mientras esté inactivo». El bloqueo es por propietario y casa.
Este interruptor no tiene nada que ver con el módulo Calendarios. Allí se editan los slots y temporadas compartidos por varias casas. Aquí solo bloqueas a un propietario concreto en una casa concreta.

Alta de usuario

Pulsa Añadir usuario en el listado para ir a /users/create. El paso a paso está en la guía Dar de alta un propietario o visitante. El formulario (UserForm) tiene dos secciones:
  • Información: foto opcional (Subir imagen (Opcional), PNG o JPG de hasta 10 MB), Nombre del usuario, Apellido/s (opcional), Dirección email y Nº teléfono.
  • Casas: las casas del usuario con sus fracciones. Añádelas con Añadir casa… y ajusta las fracciones con − y +.
Al guardar, el panel sube la foto (si hay) y crea el usuario. Después abre su ficha en /users?userId=:id.
Según vivla-api, el alta registra al usuario en la autenticación de la app (Firebase Auth) y le envía un email de verificación y otro de bienvenida con sus datos de acceso. El panel nunca muestra la contraseña. En entornos de depuración de vivla-api el email de bienvenida no se envía.
vivla-api da de alta las fracciones en segundo plano. Si ese paso falla, el usuario se crea igual pero sin casas, y el panel no muestra error. Tras el alta, revisa Propiedades en su ficha.

Edición

Pulsa Editar en la ficha para ir a /users/:id/edit. Es el mismo formulario, con estas diferencias:
  • La Dirección email no se puede cambiar: el campo sale deshabilitado.
  • Al retirar una casa que ya tenía, no desaparece al momento. Queda marcada como Se retira al guardar y puedes pulsar Deshacer.
  • Una casa marcada para retirar muestra un aviso y el enlace Ver sus reservas en seguido del nombre de la casa (/bookings?user=:id&home=:homeId).
Pulsa Guardar cambios para aplicar. Si todo va bien, vuelves a su ficha con el aviso Usuario actualizado correctamente.
Retirar una casa no cancela sus reservas. El propio formulario avisa: «Si tiene reservas próximas, revísalas antes porque seguirán a su nombre».
El endpoint de edición de vivla-api no toca las casas que no le mandas. Por eso EditUser envía las casas retiradas con fractions: 0 en vez de omitirlas.

Borrado

Pulsa Eliminar usuario en la ficha y confirma con Eliminar en ¿Eliminar usuario?. El diálogo avisa: «Se le retirarán todos sus deals y se le revocará el acceso». En vivla-api el borrado es una baja: elimina al usuario de Firebase Auth y lo deshabilita en base de datos. Si todo va bien, verás Usuario eliminado correctamente y la ficha se cierra.

Endpoints de vivla-api

La ficha también usa endpoints de otros módulos:

Código