Source :
docs/27-les-cles/99-technique.md —
ce document se lit aussi dans le dépôt, sans serveur.
Les clés — le côté technique
Les fichiers
| Rôle | Fichier |
|---|---|
| Profils de clé | public/erp/profils.php + public/erp/assets/js/pages/profils-2.js |
| API profils | src/Http/Controllers/KeyProfileController.php |
| Données profils | src/Repository/KeyProfileRepository.php |
| Catalogue clés | public/erp/catalogue-cles.php + public/erp/assets/js/pages/catalogue-cles-2.js |
| API catalogue | src/Http/Controllers/ProCatalogController.php |
| Données catalogue | src/Repository/ProCatalogRepository.php |
| Application des règles | src/Pro/ProOrderBuilder.php |
Deux écrans voisins, deux API différentes : profils.php appelle key-profiles, catalogue-cles.php appelle pro-catalog.
Les droits
| Route | Qui |
|---|---|
GET /v1/key-profiles, GET /v1/pro-catalog | Module orders, lecture |
POST, PUT, DELETE sur les deux | Administrateur |
POST /v1/pro-catalog/sync | Administrateur |
Les tables
key_profiles (migration 006), pro_catalog_items (migration 023).
Le piège
Les champs de règle sont lus par nom dans ProOrderBuilder, via une table de correspondance règle → type de justificatif attendu :
'requires_id' => 'id',
'requires_proof_address' => 'proof',
'requires_attestation' => 'attestation',
Ajouter une règle au catalogue sans l'ajouter là la rend inopérante en silence : l'écran la propose, la commande l'ignore.