""" Lots Routes - GMAO Collège Gestion des lots de maintenance """ from flask import Blueprint, render_template, request, flash, redirect, url_for from flask_login import login_required from app_new.extensions import db from ..core.models.maintenance import Lot, LotTask from ..core.models.company import Company lots_bp = Blueprint('lots', __name__) @lots_bp.route('/') @login_required def index(): """Liste des lots.""" lots = Lot.query.order_by(Lot.name).all() return render_template('lots/index.html', lots=lots) @lots_bp.route('/') @login_required def detail(id): """Détail d'un lot.""" from app_new.core.models.equipment import Equipment lot = Lot.query.get_or_404(id) # Récupérer les équipements de ce lot equipments = Equipment.query.filter_by(lot_id=id).order_by(Equipment.name).all() return render_template('lots/detail.html', lot=lot, equipments=equipments) @lots_bp.route('//edit') @login_required def edit(id): """Modifier un lot (formulaire).""" lot = Lot.query.get_or_404(id) # TODO: formulaire d'édition flash("Fonctionnalité en cours de développement", "info") return redirect(url_for('lots.detail', id=id)) @lots_bp.route('//delete', methods=['POST']) @login_required def delete(id): """Supprimer un lot.""" lot = Lot.query.get_or_404(id) # TODO: suppression avec déplacement vers corbeille flash("Fonctionnalité en cours de développement", "info") return redirect(url_for('lots.index'))