{% extends "base.html" %}
{% block title %}Aide Planification — GMAO Collège{% endblock %}

{% block content %}
<div class="row mb-4">
    <div class="col-12">
        <h1><i class="bi bi-book"></i> Documentation du Système de Planification</h1>
        <p class="text-muted">Guide complet pour la maintenance préventive</p>
    </div>
</div>

<div class="row">
    <div class="col-md-3 mb-4">
        <div class="list-group position-sticky" style="top: 20px;">
            <a href="#hierarchie" class="list-group-item list-group-item-action">Hiérarchie Équipements</a>
            <a href="#taches" class="list-group-item list-group-item-action">Tâches Préventives</a>
            <a href="#planification" class="list-group-item list-group-item-action">Planification</a>
            <a href="#compteurs" class="list-group-item list-group-item-action">Compteurs</a>
            <a href="#consommables" class="list-group-item list-group-item-action">Consommables</a>
            <a href="#contraintes" class="list-group-item list-group-item-action">Contraintes</a>
            <a href="#workflow" class="list-group-item list-group-item-action">Workflow Complet</a>
        </div>
    </div>
    
    <div class="col-md-9">
        <section id="hierarchie" class="card mb-4">
            <div class="card-header bg-primary text-white">
                <h3><i class="bi bi-diagram-3"></i> Hiérarchie des Équipements</h3>
            </div>
            <div class="card-body">
                <p>Les équipements sont organisés en <strong>3 niveaux</strong>:</p>
                
                <table class="table table-bordered">
                    <thead class="table-light">
                        <tr>
                            <th>Niveau</th>
                            <th>Description</th>
                            <th>Exemple</th>
                            <th>Lot</th>
                        </tr>
                    </thead>
                    <tbody>
                        <tr>
                            <td><strong>Parent</strong></td>
                            <td>Groupe d'équipements du collège</td>
                            <td>Fenêtres du collège</td>
                            <td>Menuiseries</td>
                        </tr>
                        <tr>
                            <td><strong>Enfant</strong></td>
                            <td>Groupe d'équipements d'une salle</td>
                            <td>Fenêtres B01</td>
                            <td>Hérité du parent</td>
                        </tr>
                        <tr>
                            <td><strong>Individuel</strong></td>
                            <td>Équipement spécifique</td>
                            <td>Fenêtre 1 (B01)</td>
                            <td>Hérité du parent</td>
                        </tr>
                    </tbody>
                </table>
                
                <div class="alert alert-info">
                    <strong>Héritage:</strong> Un équipement enfant ou individuel hérite automatiquement du lot et de la catégorie de son parent.
                </div>
                
                <h5>Avantages de cette hiérarchie:</h5>
                <ul>
                    <li>Création rapide d'équipements par lot</li>
                    <li>Les tâches préventives s'appliquent à tous les enfants</li>
                    <li>Compteurs individuels pour chaque équipement</li>
                    <li>Suivi précis des maintenances</li>
                </ul>
            </div>
        </section>
        
        <section id="taches" class="card mb-4">
            <div class="card-header bg-success text-white">
                <h3><i class="bi bi-list-check"></i> Tâches Préventives</h3>
            </div>
            <div class="card-body">
                <p>Une <strong>tâche préventive</strong> définit une maintenance récurrente.</p>
                
                <table class="table table-bordered">
                    <thead class="table-light">
                        <tr>
                            <th>Champ</th>
                            <th>Description</th>
                            <th>Exemple</th>
                        </tr>
                    </thead>
                    <tbody>
                        <tr>
                            <td>Lot</td>
                            <td>Lot de maintenance concerné</td>
                            <td>Menuiseries</td>
                        </tr>
                        <tr>
                            <td>Catégorie (optionnel)</td>
                            <td>Filtre par type d'équipement</td>
                            <td>Fenêtre</td>
                        </tr>
                        <tr>
                            <td>Périodicité</td>
                            <td>Tous les combiens de jours</td>
                            <td>365 (annuel)</td>
                        </tr>
                        <tr>
                            <td>Durée</td>
                            <td>Temps estimé en minutes</td>
                            <td>15 min</td>
                        </tr>
                        <tr>
                            <td>Déclenchement</td>
                            <td>Temps ou compteur</td>
                            <td>time / meter</td>
                        </tr>
                        <tr>
                            <td>Gestionnaire</td>
                            <td>Qui réalise la tâche</td>
                            <td>collège / département / externe</td>
                        </tr>
                    </tbody>
                </table>
                
                <h5>Modification de périodicité</h5>
                <p>La périodicité peut être modifiée à tout moment. Le système recalculera automatiquement la prochaine échéance pour les équipements concernés.</p>
            </div>
        </section>
        
        <section id="compteurs" class="card mb-4">
            <div class="card-header bg-warning">
                <h3><i class="bi bi-speedometer2"></i> Compteurs</h3>
            </div>
            <div class="card-body">
                <p>Les <strong>compteurs</strong> permettent un suivi précis des équipements.</p>
                
                <h5>Types de compteurs:</h5>
                <ul>
                    <li><strong>Heures</strong> - Pour les chaudières, ventilateurs, etc.</li>
                    <li><strong>Cycles</strong> - Pour les ouvertures/fermetures (fenêtres, portes)</li>
                    <li><strong>Distance</strong> - Pour les kilomètres (véhicules)</li>
                    <li><strong>Énergie</strong> - Pour les consommations (kWh)</li>
                </ul>
                
                <h5>Seuils d'alerte:</h5>
                <table class="table table-bordered">
                    <thead class="table-light">
                        <tr>
                            <th>Niveau</th>
                            <th>Condition</th>
                            <th>Action</th>
                        </tr>
                    </thead>
                    <tbody>
                        <tr class="table-warning">
                            <td>Warning</td>
                            <td>Valeur ≥ warning_threshold</td>
                            <td>Alerte stock</td>
                        </tr>
                        <tr class="table-danger">
                            <td>Critical</td>
                            <td>Valeur ≥ critical_threshold</td>
                            <td>Maintenance urgente</td>
                        </tr>
                        <tr class="table-info">
                            <td>Maintenance</td>
                            <td>Valeur ≥ dernière maintenance + intervalle</td>
                            <td>Planifier maintenance</td>
                        </tr>
                    </tbody>
                </table>
            </div>
        </section>
        
        <section id="consommables" class="card mb-4">
            <div class="card-header bg-info text-white">
                <h3><i class="bi bi-box"></i> Consommables</h3>
            </div>
            <div class="card-body">
                <p>Les <strong>consommables</strong> sont les pièces et produits utilisés lors des maintenances.</p>
                
                <h5>Gestion du stock:</h5>
                <ul>
                    <li>Stock actuel</li>
                    <li>Stock minimum (alerte)</li>
                    <li>Lieu de stockage</li>
                    <li>Fournisseur</li>
                </ul>
                
                <h5>Association aux équipements:</h5>
                <p>Un consommable peut être associé à une catégorie d'équipement avec une fréquence de remplacement:</p>
                <ul>
                    <li>Filtre HEPA → Climatiseurs → Tous les 6 mois</li>
                    <li>Joint silicone → Fenêtres → Tous les 5 ans</li>
                </ul>
                
                <div class="alert alert-warning">
                    <strong>Attention:</strong> Lors de la planification d'une tâche, le système vérifie automatiquement si les consommables nécessaires sont en stock.
                </div>
            </div>
        </section>
        
        <section id="contraintes" class="card mb-4">
            <div class="card-header bg-danger text-white">
                <h3><i class="bi bi-shield-check"></i> Contraintes de Planification</h3>
            </div>
            <div class="card-body">
                <p>Le système vérifie <strong>automatiquement</strong> les contraintes suivantes:</p>
                
                <h5>1. Horaires de travail</h5>
                <ul>
                    <li>Définis par jour de la semaine</li>
                    <li>Pause déjeuner bloquée</li>
                    <li>Week-ends optionnels</li>
                </ul>
                
                <h5>2. Disponibilité du technicien</h5>
                <ul>
                    <li>Vacances</li>
                    <li>Formations</li>
                    <li>Congés</li>
                </ul>
                
                <h5>3. Salles occupées (PRONOTE)</h5>
                <ul>
                    <li>Vérification des cours en temps réel</li>
                    <li>Report automatique si conflit</li>
                </ul>
                
                <h5>4. Zones inaccessibles</h5>
                <ul>
                    <li>Zone = ensemble de salles</li>
                    <li>Si cours dans une salle → zone inaccessible</li>
                    <li>Ex: Parking inaccessible si cours en B01, B02, B03</li>
                </ul>
                
                <h5>5. Tâches administratives</h5>
                <ul>
                    <li>Bloquées dans l'agenda</li>
                    <li>Ex: Courrier tous les jours 09:00-09:30</li>
                </ul>
                
                <h5>6. Pas de chevauchement</h5>
                <ul>
                    <li>Une seule tâche à la fois</li>
                    <li>Ordre de priorité configurable</li>
                </ul>
            </div>
        </section>
        
        <section id="workflow" class="card mb-4">
            <div class="card-header bg-secondary text-white">
                <h3><i class="bi bi-arrow-repeat"></i> Workflow Complet</h3>
            </div>
            <div class="card-body">
                <ol>
                    <li><strong>Configuration initiale</strong>
                        <ul>
                            <li>Créer les Lots (Chauffage, Menuiseries...)</li>
                            <li>Créer les Catégories (Fenêtre, Porte...)</li>
                            <li>Définir les Zones et règles d'accès</li>
                            <li>Créer les Tâches préventives par lot</li>
                            <li>Importer/créer les Équipements</li>
                            <li>Associer compteurs et consommables</li>
                        </ul>
                    </li>
                    <li><strong>Génération automatique (quotidienne)</strong>
                        <ul>
                            <li>Pour chaque tâche préventive échéance</li>
                            <li>Trouver les équipements concernés</li>
                            <li>Créer les tâches planifiées</li>
                            <li>Vérifier toutes les contraintes</li>
                            <li>Planifier ou reporter</li>
                        </ul>
                    </li>
                    <li><strong>Exécution</strong>
                        <ul>
                            <li>Technicien consulte son agenda</li>
                            <li>Réalise la maintenance</li>
                            <li>Relève les compteurs</li>
                            <li>Utilise les consommables</li>
                            <li>Marque comme terminé</li>
                        </ul>
                    </li>
                    <li><strong>Suivi</strong>
                        <ul>
                            <li>Alertes stock bas</li>
                            <li>Alertes compteurs critiques</li>
                            <li>Rapports et statistiques</li>
                        </ul>
                    </li>
                </ol>
            </div>
        </section>
        
        <div class="d-flex justify-content-between mt-4">
            <a href="{{ url_for('planning.index') }}" class="btn btn-secondary">
                <i class="bi bi-arrow-left"></i> Retour
            </a>
            <a href="{{ url_for('planning.tasks') }}" class="btn btn-primary">
                <i class="bi bi-list-check"></i> Configurer les tâches
            </a>
        </div>
    </div>
</div>
{% endblock %}