Saltar al contenido principal

Actores y roles

Idea principal

En Cutlyy no todas las personas ven el mismo sistema ni pueden hacer las mismas acciones. El acceso depende de:

  • quien es la persona
  • a que negocio pertenece
  • si su membresia esta activa
  • que rol tiene asignado

Actores del negocio en lenguaje simple

ActorQue hace en la vida realComo se representa en el sistema
Cliente o visitanteReserva, consulta o califica serviciosUsuario publico o usuario interno con rol base de cliente
Persona del negocioAdministra el negocio o atiende clientesUsuario interno con membresia a un negocio
EmpleadoPresta servicios y ocupa agendaMembresia activa con isEmployee = true
Administrador del negocioConfigura operacion, equipo y catalogoMembresia activa con rol administrativo
Super admin del negocioTiene control total dentro de ese negocioMembresia activa con rol SUPER_ADMIN
Root userAdministra negocios y planes a nivel plataformaUsuario especial controlado por email/documento

La pieza clave: la membresia

La membresia (BusinessMembership) es el vinculo entre una persona y un negocio.

Sin membresia activa, una persona puede existir en el sistema, pero no necesariamente puede operar dentro del panel del negocio.

La membresia define:

  • a que negocio pertenece la persona
  • si esta activa o no
  • que rol tiene
  • si actua como empleado
  • a que sede puede quedar asociada

Estados de una membresia

EstadoSignificado operativo
PENDINGLa relacion existe pero aun no esta lista para operar
ACTIVELa persona puede actuar segun su rol
INACTIVELa relacion existe pero queda suspendida
DELETEDLa relacion fue eliminada logicamente

Roles y permisos

Un rol no es solo un nombre decorativo. Es la lista de permisos que habilita acciones concretas dentro del panel.

Ejemplos:

  • ver usuarios del negocio
  • crear servicios
  • editar bookings
  • consultar metricas
  • administrar roles y permisos

Esto significa que dos personas del mismo negocio pueden ver experiencias distintas segun su rol.

Jerarquia practica

Root user

  • administra negocios y planes a nivel plataforma
  • no representa una persona del dia a dia del salon
  • tiene acceso a secciones globales que no dependen del contexto activo de un negocio

Super admin del negocio

  • es la maxima autoridad dentro de un negocio puntual
  • puede configurar estructura, equipo, catalogo y permisos
  • el sistema protege que no se pierda accidentalmente el ultimo super admin activo

Administrador u operador

  • gestiona operacion diaria
  • normalmente trabaja con bookings, citas, clientes, servicios o sedes
  • su alcance depende del rol configurado

Empleado

  • puede aparecer en agenda
  • puede tener acceso parcial a sus propias citas
  • no todo empleado tiene necesariamente acceso amplio al panel

Cliente

  • puede reservar y gestionar su servicio
  • puede terminar teniendo un registro interno para historial, reviews o comunicacion

Regla importante sobre empleados

Para que una persona pueda recibir citas como empleado, el sistema exige varias condiciones:

  • su membresia debe estar ACTIVE
  • debe tener isEmployee = true
  • puede requerir una sede asignada
  • no debe quedar en estados incompatibles con citas activas

Esto evita que se agenden servicios con personas deshabilitadas o mal configuradas.

Acceso en frontend y backend

En frontend

El panel usa guards y verificacion de permisos para decidir:

  • que pagina puede abrir una persona
  • que menu ve
  • si puede ver toda la agenda o solo su propia agenda

En backend

El backend valida el token de sesion y el contexto del negocio, y luego aplica reglas sobre la informacion recibida.

En otras palabras:

  • el frontend orienta la experiencia
  • el backend protege la regla final

Ejemplos practicos

Caso 1: persona logueada sin membresia activa

Puede tener sesion valida, pero no podra operar la mayoria del panel porque falta el contexto activo del negocio.

Caso 2: empleado con permisos limitados

Puede ver y administrar solo sus citas si su rol no le permite acceder a toda la agenda.

Caso 3: super admin que intenta quitarse su propio acceso

El sistema protege que el negocio no se quede sin una persona con control total.

Documentos relacionados