Files
logisticsAPI/memory-bank/productContext.md
Marvin 4aef33f270 Implement robust error handling and configuration for Logistics API interactions
- Introduced `LogisticsApiException` to handle connection and request errors with user-friendly messages in French.
- Updated `LogisticsService` to include configurable timeout, connection timeout, retry attempts, and sleep duration for retries.
- Enhanced error handling in Filament pages to catch `LogisticsApiException` and provide clear feedback to users.
- Updated `.env` and `config/logistics.php` to support new configuration options.
- Added logging for failed API requests in `api_request_logs`.
- Created comprehensive API documentation for Logistics endpoints.
2026-02-20 10:06:04 +01:00

1.8 KiB

Product Context

Derniere mise a jour : 2026-02-20

Pourquoi ce projet existe

L'API Logistics (Flex/ESI Gescom) est un systeme de gestion commerciale accessible via une API REST. La documentation officielle est limitee. Ce projet a ete cree pour :

  • Explorer les endpoints disponibles de maniere interactive.
  • Comprendre les parametres attendus et les formats de reponse.
  • Servir de base pour une documentation plus complete.

Problemes resolus

  • Exploration de l'API : Le dashboard permet de tester chaque endpoint avec des parametres personnalisables, sans avoir besoin de Postman.
  • Comprehension de la structure : La page "Tables" permet de decouvrir les tables et colonnes disponibles dans l'API.
  • Tracabilite : Chaque requete effectuee (reussie ou echouee) est enregistree dans api_request_logs pour pouvoir analyser les echanges.
  • Resilience : Les erreurs de connexion sont gerees avec retry automatique et messages explicites en francais.

Experience utilisateur

L'utilisateur accede au dashboard Filament sur http://api-logistics.test/admin. La navigation laterale propose 5 pages :

  1. Tables : Cliquer sur une table pour voir ses colonnes. Utile pour connaitre les champs disponibles dans les parametres select.
  2. Articles : Formulaire de recherche (search, select, results) + verification du stock d'un article par son ARTID.
  3. Documents : Recherche par tiers (thirdid) + consultation du detail d'un document (jnl + number).
  4. Journaux : Recherche par type de journal (TYPE).
  5. Tiers : Recherche de tiers (search obligatoire) + historique des articles d'un tiers.

Chaque page affiche les resultats sous forme de tableau dynamique et les metadonnees de la reponse (nombre de resultats, succes). En cas d'erreur de connexion a l'API, un message clair en francais est affiche a l'utilisateur.