## id
doc_usuaris

## nom
Usuaris i rols — comportaments i casos concrets

## descripcio
Consulta aquest document quan calgui explicar amb precisió quins rols existeixen realment, com es
controla l'accés per empresa, la política de contrasenyes, o les proteccions exactes a l'eliminar
un usuari. No és l'explicació general, que cobreix `flux_usuaris`.

## contingut
### Els cinc rols reals

- **System**: gestiona tota la plataforma. Mai es crea des de l'aplicació.
- **Owner**: propietari d'una subscripció, amb accés total. Mai es crea des de l'aplicació.
- **Admin**: administrador d'una subscripció — accés a totes les funcionalitats contractades i,
  implícitament, a totes les empreses de la subscripció.
- **Gestor**: opera només dins les empreses que se li assignin explícitament.
- **Client**: pensat per a usuaris externs amb accés restringit — **encara no es pot assignar des
  d'aquesta pantalla**, perquè la restricció d'accessos que li correspondria encara no està
  implementada del tot.

Només Admin i Gestor són assignables des de Configuració → Usuaris.

### Accés per empresa: només rellevant per als Gestors

En crear o editar un usuari amb rol Gestor, es marquen explícitament quines empreses de la
subscripció pot veure i treballar-hi. Per a un Admin, aquest llistat no s'aplica — sempre té accés
a totes, encara que el formulari mostri l'opció de marcar-les.

### Contrasenya

En crear un usuari cal establir-li una contrasenya directament (no és un sistema d'invitació per
correu). Ha de tenir almenys 8 caràcters, amb majúscules, minúscules i algun dígit. En editar un
usuari, la contrasenya és opcional — deixar-la en blanc la manté sense canvis.

### Què no controla aquesta pantalla

El correu electrònic (identificador de l'usuari) ha de ser únic a tota l'aplicació, no només dins
la subscripció. **L'accés a mòduls concrets (com Comptabilitat) no es decideix des d'aquí per a
cada usuari** — es dedueix automàticament dels mòduls contractats per la subscripció; tots els
usuaris d'una mateixa subscripció veuen els mateixos mòduls, independentment del que es configuri
a la seva fitxa.

### Eliminar un usuari

És sempre definitiu (no hi ha paperera ni recuperació). Es bloqueja en tres casos:
- Un usuari no es pot eliminar a si mateix.
- No es pot eliminar l'usuari Owner ni cap usuari de rol System.
- **No es pot eliminar l'últim usuari amb rol Admin** que quedi a la subscripció — cal que
  n'hi hagi almenys un altre abans de poder-lo eliminar. Aquesta protecció es va afegir el
  2026-08-30; abans es podia deixar una subscripció sense cap Admin.

Un usuari no es pot desactivar (posar com a "Inactiu") a si mateix, encara que sí que es pugui
editar la resta de les seves pròpies dades.

## comprovacions
Si un usuari no pot eliminar un altre usuari: comprova si és ell mateix, si és l'Owner, o si és
l'últim Admin que queda a la subscripció.

Si un usuari pregunta com donar accés a Comptabilitat a un usuari concret: no és possible des
d'aquesta pantalla — l'accés als mòduls ve determinat pels mòduls contractats per la subscripció,
igual per a tots els usuaris.

Si un usuari pregunta pel rol "Client": encara no es pot assignar des de la interfície.
