Aller au contenu

Réservation de salles

À quoi ça sert

Ce module permet de consulter les ressources partagées (salles de réunion, matériel) disponibles dans votre société, de réserver un créneau, de suivre le statut de vos réservations et de laisser un retour après usage.

Prérequis

Prérequis

  • Modules sous licence : BOOKING
  • Permissions : booking.create, booking.manage, resource.manage
  • Rôles : EMPLOYEE, MANAGER, ORG_ADMIN

Comment ça marche

Réserver une ressource

  1. Ouvrez Réservations dans le menu latéral, sous-menu Ressources disponibles (/dashboard/booking/resources).
  2. Utilisez la barre de recherche pour trouver une ressource par nom ou par localisation, et les puces de filtre par type (salle de réunion, véhicule, matériel…) pour affiner la liste.
  3. Chaque ressource est présentée sous forme de carte avec sa photo (ou une pastille de couleur si aucune photo n'est définie), son nom, son type, sa localisation et une courte description. Un badge Accès instantané indique que la réservation ne nécessite pas de validation manuelle.
  4. Cliquez sur Réserver sur la carte de la ressource souhaitée. Un formulaire s'ouvre :
    • Ressource (pré-remplie),
    • Objet de la réservation (obligatoire, ex. « Réunion d'équipe », « Entretien »),
    • Début et Fin du créneau (date + heure).
  5. Le formulaire vérifie la disponibilité en temps réel : si le créneau est déjà occupé, un message d'indisponibilité s'affiche avant même la soumission.
  6. Validez. Si la ressource nécessite une validation, la réservation part au statut PENDING (en attente) vers son responsable ; si l'accès est instantané, elle passe directement à APPROVED.

Suivre mes réservations

  1. Ouvrez Mes réservations (/dashboard/booking/my-bookings).
  2. Filtrez par statut : Toutes, En attente, Approuvées, Annulées, Terminées.
  3. Chaque ligne affiche la ressource, le créneau et un badge de statut.
  4. Tant qu'une réservation est PENDING ou APPROVED, un bouton Annuler reste disponible si vos plans changent.
  5. Une fois la réservation COMPLETED (terminée), un bouton Donner un avis ouvre une fenêtre où vous notez la ressource et laissez un commentaire libre — utile pour signaler un problème (matériel manquant, salle trop petite…).

Consulter le calendrier partagé

  1. Ouvrez Calendrier (/dashboard/booking/calendar) pour visualiser l'ensemble des réservations sur une vue calendrier (jour/semaine/mois), tous types de ressources confondus ou filtrées par type.
  2. Un abonnement iCal est proposé pour synchroniser vos réservations avec votre agenda personnel (Outlook, Google Calendar…).

Qui peut faire quoi

Permission requise Rôles concernés
booking.create EMPLOYEE, MANAGER, ORG_ADMIN
booking.manage EMPLOYEE, MANAGER, ORG_ADMIN
resource.manage EMPLOYEE, MANAGER, ORG_ADMIN
Action Permission requise
Consulter les ressources, réserver, gérer ses propres réservations booking.create
Approuver / rejeter une réservation en attente, gérer les réservations de tous booking.manage
Créer / modifier des ressources et types de ressources resource.manage

Détails techniques

Détails techniques
  • Backend : module app.jigi.booking. BookingController (booking.create / booking.manage), ResourceController et ResourceTypeController (consultation en booking.create, administration en resource.manage), IcalController pour l'abonnement calendrier.
  • Entités : Resource, ResourceType, ResourceBooking (statut BookingStatus : PENDING, APPROVED, REJECTED, CANCELLED, COMPLETED), ResourceBookingAttendee, ResourceBookingFeedback, ResourceBlockout (indisponibilités planifiées), ResourceBookingHistory (audit des changements de statut).
  • Rappels automatiques : BookingReminderJob / BookingReminderService envoient une notification avant le début du créneau réservé.
  • Workflow : les réservations soumises à validation passent par le moteur de workflow générique (BookingWorkflowCallback).
  • Migrations : V164__rh154_booking_resource_types.sql, V166__rh154_booking_bookings.sql, V169__workflow_integration_onboarding_booking.sql.
  • Frontend : frontend/src/app/(dashboard)/dashboard/booking/resources/page.tsx (parcourir + réserver via BookingForm), .../booking/my-bookings/page.tsx (suivi + annulation + feedback), .../booking/calendar/page.tsx.

Cas d'erreur et FAQ

Pourquoi ma réservation reste-t-elle « en attente » ? Certaines ressources exigent une validation manuelle par leur responsable (pas de badge « Accès instantané »). Le statut passera à « Approuvée » une fois la validation effectuée.

Puis-je réserver une salle déjà occupée sur le créneau souhaité ? Non, le formulaire vérifie la disponibilité en temps réel et vous empêche de soumettre un créneau en conflit.

Comment ajouter mes réservations à mon agenda Outlook ou Google ? Utilisez le lien d'abonnement iCal proposé sur la page Calendrier — il synchronise automatiquement vos réservations à venir.

J'ai annulé ma réservation trop tard, que se passe-t-il ? L'annulation reste possible tant que le statut est « En attente » ou « Approuvée » ; au-delà de l'heure de fin du créneau, la réservation passe automatiquement à « Terminée » et n'est plus annulable.

Puis-je laisser un avis sur une salle avant la fin de ma réservation ? Non, le bouton « Donner un avis » n'apparaît qu'une fois la réservation au statut « Terminée ».

Voir aussi