3.2 KiB
3.2 KiB
🚀 Application de Gestion Chauffagiste
Description
Cette application permet de gérer les interventions, les utilisateurs (chauffagistes, secrétaires, admins), les pièces détachées, les véhicules, et les plannings dans une entreprise de chauffagistes.
Fonctionnalités principales
- Gestion des utilisateurs : création de chauffagistes, secrétaires, et admins avec des rôles spécifiques.
- Gestion des interventions : assignation des chauffagistes, véhicules, pièces détachées, ajout de remarques.
- Gestion des stocks et des véhicules : CRUD complet pour les pièces détachées et les véhicules.
- Planning des interventions : chaque rôle accède à un planning personnalisé (chauffagiste, secrétaire, admin).
- Sécurisation par rôles : accès aux pages limité par rôle (Admin, Secrétaire, Chauffagiste).
Fonctionnalités avancées
- ✅ Contrôle d’unicité : interdiction de double-assignation d’un même chauffagiste ou véhicule sur une même date/heure.
- ✅ Calendrier FullCalendar dynamique : affichage différent selon le rôle + clic pour afficher l’intervention.
- ✅ Sélecteurs intelligents : seuls les chauffagistes apparaissent pour l’assignation dans les interventions.
- ✅ Remarque chauffagiste : chaque chauffagiste peut ajouter une remarque à ses interventions uniquement.
- ✅ Sécurité renforcée : vérifications d’accès sur toutes les routes sensibles.
Rôles & restrictions
Rôle | Droits |
---|---|
Admin | Accès complet à tous les modules (utilisateurs, stocks, véhicules...) |
Secrétaire | Accès complet à tous les modules mais pas aux utilisateurs |
Chauffagiste | Accède uniquement à ses interventions et peut y ajouter des remarques |
Installation
Prérequis :
- PHP 8.x
- Composer
- Symfony 7.x
- Base de données PostgreSQL ou MySQL
Étapes :
1. Clonez le projet
git clone https://gitea.btssio-poitiers.fr/sermandm/HegreEtConfort.git
cd HegreEtConfort
2. Installez les dépendances
composer install
3. Créez la base de données
php bin/console doctrine:database:create
4. Appliquez les migrations
php bin/console doctrine:migrations:migrate
5. Créez un utilisateur admin (exemple PostgreSQL) :
INSERT INTO "HegreEtConfort".public.utilisateur (
id, email, first_name, last_name, birth_date, phone, roles, password
)
VALUES (
1000, 'admin@admin.admin', 'admin', 'admin', '2025-04-10', '0000000000',
'["ROLE_ADMIN"]',
'$2y$13$4jqoZVgncgDJ6oPFDswZeeiVmt9TF2AC.xoBwyyrrbNl5Xz8r.50e'
);
6. Démarrez le serveur Symfony :
symfony server:start
➡️ Accédez ensuite à l’application : http://localhost:8000
Technologies utilisées
- Symfony 7.x
- Doctrine ORM
- Twig
- PHP 8.x
- FullCalendar.js
- PostgreSQL (ou MySQL selon config)
Auteur
Développé dans le cadre du BTS SIO - D'Hegre Et Confort
- Maxim SERMAND
- Alyssa ALLARD
- Giovanny BRUNET
- Lucas RAGUENEAU