Système de prise de rendez-vous

Documentation complète du système de rendez-vous basé sur Laravel Zap, Livewire et Filament.

Aperçu du système

Architecture complète avec Zap pour la gestion des disponibilités, Livewire pour l'interface utilisateur et Filament pour l'administration.

  • • Disponibilités via Zap
  • • Réservation avec verrouillage
  • • Produits/Services typés
  • • Facturation intégrée

Flux utilisateur

Processus complet de prise de rendez-vous depuis la sélection du service jusqu'à la confirmation.

  1. Ouverture de la modale
  2. Sélection du service
  3. Choix date/créneau
  4. Confirmation et paiement

Prévention des conflits

Mécanismes de sécurité pour éviter les réservations multiples sur le même créneau.

  • • Verrouillage pessimiste
  • • Mise à jour immédiate
  • • Création de Schedule

Administration Filament

Interface d'administration complète pour gérer les rendez-vous, disponibilités et facturation.

  • • Gestion des disponibilités
  • • Suivi des rendez-vous
  • • Configuration des services

Configuration & Seed

Configuration Zap et données de démonstration pour démarrer rapidement.

  • • Configuration Zap
  • • Seeder de démonstration
  • • Reset rapide

Détails techniques

Modèles principaux

  • Zap\Models\Schedule – Périodes d'activité (availability/appointment/blocked)
  • Zap\Models\SchedulePeriod – Créneaux journaliers avec disponibilité
  • App\Models\Appointment – Rendez-vous utilisateur avec statuts typés
  • App\Models\Product – Services (SERVICE/VIRTUAL/PHYSICAL) avec référence
  • App\Models\Invoice – Facturation avec statuts enum

Exemple d'utilisation

Intégration dans une vue :

Bouton d'ouverture :

<button @click="$dispatch('open-appointment-modal')">Prendre rendez-vous</button>

Composant Livewire :

<livewire:appointments.appointment-modal />

Commande de reset :

php artisan migrate:fresh --seed

Prêt à utiliser le système ?

Le système de rendez-vous est entièrement fonctionnel. Consultez la documentation Zap pour des fonctionnalités avancées.