AdminJO Front - Documentation API - v0.1.0
    Preparing search index...

    Function useClientsManagement

    • Hook useClientsManagement - Gestion complète des clients

      Ce hook fournit une interface unifiée pour la gestion des clients de l'application AdminJO. Il combine les opérations de lecture, filtrage, recherche et modification des états d'activation des comptes utilisateurs clients.

      Returns {
          clients: Client[];
          loading: boolean;
          error: string | null;
          searchTerm: string;
          statusFilter: "all" | "active" | "inactive";
          loadClients: () => Promise<void>;
          handleSearch: (term: string) => void;
          handleStatusFilter: (status: "all" | "active" | "inactive") => void;
          toggleClientActive: (clientId: number) => Promise<void>;
      }

      Interface complète de gestion des clients

      • clients: Client[]
      • loading: boolean
      • error: string | null
      • searchTerm: string
      • statusFilter: "all" | "active" | "inactive"
      • loadClients: () => Promise<void>

        Charge la liste des clients

      • handleSearch: (term: string) => void

        Gère la recherche de clients

      • handleStatusFilter: (status: "all" | "active" | "inactive") => void

        Gère le filtre par statut

      • toggleClientActive: (clientId: number) => Promise<void>

        change l'etat actif/inactif d'un client

      useClientsManagement

      • Chargement automatique : Récupération de tous les clients au montage
      • Gestion d'état : États de chargement et d'erreur pour les opérations
      • Mise à jour optimiste : Modification immédiate de l'UI avant confirmation serveur
      • Synchronisation : Maintien de la cohérence avec les données backend
      • Recherche textuelle : Filtrage par nom, email ou autres champs
      • Filtrage par statut : Clients actifs, inactifs ou tous
      • Filtres combinés : Application simultanée de plusieurs critères
      • Mise à jour temps réel : Filtrage immédiat lors des changements
      • Toggle activation : Activation/désactivation des comptes clients
      • Mise à jour optimiste : Changement immédiat d'état dans l'UI
      • Gestion d'erreurs : Rollback en cas d'échec de l'opération
      • Feedback visuel : Indicateurs de statut en temps réel
      • clients : Liste complète des clients avec informations utilisateur
      • loading : État de chargement pour les opérations principales
      • error : Messages d'erreur pour les opérations échouées
      • searchTerm : Terme de recherche textuelle actuel
      • statusFilter : Filtre par statut ('all', 'active', 'inactive')
      • loadClients() : Récupération de tous les clients depuis l'API
      • Gestion d'erreurs : Capture et affichage des erreurs de chargement
      • États de chargement : Indicateurs visuels pendant les opérations
      • toggleClientActive() : Basculer l'état actif/inactif d'un client
      • Mise à jour optimiste : Changement immédiat avant confirmation serveur
      • Gestion cohérence : Maintien de la synchronisation des données
      • clientService : Service API pour les opérations sur les clients
      • Client type : Interface TypeScript pour la structure des données