41 lines
No EOL
1.2 KiB
Python
41 lines
No EOL
1.2 KiB
Python
"""
|
|
Services Routes - GMAO Collège
|
|
Gestion des services du collège
|
|
"""
|
|
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.company import Service
|
|
|
|
services_bp = Blueprint('services', __name__)
|
|
|
|
@services_bp.route('/')
|
|
@login_required
|
|
def index():
|
|
"""Liste des services."""
|
|
services = Service.query.order_by(Service.name).all()
|
|
return render_template('services/index.html', services=services)
|
|
|
|
@services_bp.route('/<int:id>')
|
|
@login_required
|
|
def detail(id):
|
|
"""Détail d'un service."""
|
|
service = Service.query.get_or_404(id)
|
|
return render_template('services/detail.html', service=service)
|
|
|
|
|
|
@services_bp.route('/new', methods=['GET', 'POST'])
|
|
@login_required
|
|
def create():
|
|
"""Créer un service."""
|
|
if request.method == 'POST':
|
|
service = Service(
|
|
name=request.form.get('name'),
|
|
description=request.form.get('description'),
|
|
)
|
|
db.session.add(service)
|
|
db.session.commit()
|
|
flash('Service créé avec succès.', 'success')
|
|
return redirect(url_for('services.index'))
|
|
|
|
return render_template('services/new.html') |