{% extends 'layout.html' %} {% from 'macros.html' import common_styles %} {% block title %}Rôle — {{ role.name }}{% endblock %} {% block page_title %}Détails du rôle{% endblock %} {% block styles %}{{ common_styles() }} {% endblock %} {% block content %}
Retour
Détails du Rôle
Visualisation des droits d'accès

{{ role.name }}

{% if role.is_builtin %} Rôle intégré {% else %} Rôle personnalisé {% endif %}

{{ role.description or 'Aucune description fournie.' }}

Membres
Comptes associés : {{ user_count }}
Score de permissions
{% if role.name == 'SUPER ADMIN' %} {% set total_perms = 23 %} {% set granted_perms = 23 %} {% else %} {% set total_perms = 23 %} {% set granted_perms = namespace(n=0) %} {% for k in ['interventions','equipements','pieces','preventifs','ordres','fournisseurs','commandes','familles','operations','operateurs','qualifications','outillages','gammes','constats','rapports','utilisateurs','roles','activites','can_edit','can_add','can_delete','export_data','valider_demande'] %} {% if role[k] %}{% set granted_perms.n = granted_perms.n + 1 %}{% endif %} {% endfor %} {% set granted_perms = granted_perms.n %} {% endif %} {% set pct = ((granted_perms / total_perms) * 100)|int %}
Permissions accordées {{ granted_perms }} / {{ total_perms }}
{{ pct }}% d'accès
Accès aux Modules (Pages)
{% set modules_list = [ ('interventions', 'Interventions', 'fa-clipboard-list'), ('equipements', 'Équipements', 'fa-industry'), ('pieces', 'Pièces de rechange', 'fa-box'), ('preventifs', 'Préventifs', 'fa-calendar-alt'), ('ordres', 'Ordres de travail', 'fa-tools'), ('fournisseurs', 'Fournisseurs', 'fa-truck'), ('commandes', 'Commandes', 'fa-shopping-cart'), ('familles', 'Familles', 'fa-tags'), ('operations', 'Opérations', 'fa-tasks'), ('operateurs', 'Opérateurs', 'fa-users'), ('qualifications', 'Qualifications', 'fa-award'), ('outillages', 'Outillages', 'fa-toolbox'), ('gammes', 'Gammes', 'fa-route'), ('constats', 'Constats', 'fa-file-signature'), ('rapports', 'Rapports', 'fa-file-medical'), ('utilisateurs', 'Utilisateurs (Admin)', 'fa-users-cog'), ('roles', 'Rôles & Permissions', 'fa-user-shield'), ('activites', 'Journal d\'activités', 'fa-history') ] %}
{% for key, name, icon in modules_list %} {% set allowed = role[key] or role.name == 'SUPER ADMIN' %}
{{ name }} {% if allowed %} {% else %} {% endif %}
{% endfor %}
Actions CRUD autorisées
{% set actions_list = [ ('can_add', 'Créer (Ajouter)', 'fa-plus-circle'), ('can_edit', 'Modifier (Mise à jour)', 'fa-edit'), ('can_delete', 'Supprimer (Effacement)', 'fa-trash'), ('export_data', 'Exporter CSV/PDF', 'fa-file-export'), ('valider_demande', 'Valider des demandes', 'fa-check-double') ] %} {% for key, name, icon in actions_list %} {% set allowed = role[key] or role.name == 'SUPER ADMIN' %}
{{ name }} {% if allowed %} {% else %} {% endif %}
{% endfor %}
Notifications par défaut
{% set notifs_list = [ ('nouvelle_intervention', 'Nouvelle intervention', 'fa-clipboard-list'), ('intervention_urgente', 'Intervention très urgente', 'fa-bolt'), ('intervention_traitee', 'Intervention traitée', 'fa-check-circle'), ('stock_alerte', 'Alerte stock pièces', 'fa-exclamation-triangle'), ('maintenance_preventive', 'Maintenance préventive', 'fa-calendar-check'), ('ordre_travail', 'Ordre de travail créé', 'fa-tools') ] %} {% for key, name, icon in notifs_list %} {% set allowed = notif_config.get(key, '0') == '1' or role.name == 'SUPER ADMIN' %}
{{ name }} {% if allowed %} {% else %} {% endif %}
{% endfor %}
{% endblock %}