HegreEtConfort/README.md

3.2 KiB
Raw Permalink Blame History

🚀 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 dunicité : interdiction de double-assignation dun 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 lintervention.
  • Sélecteurs intelligents : seuls les chauffagistes apparaissent pour lassignation dans les interventions.
  • Remarque chauffagiste : chaque chauffagiste peut ajouter une remarque à ses interventions uniquement.
  • Sécurité renforcée : vérifications daccè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 à lapplication : 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