- Added a toggle for switching between read and write modes on the Articles, Documents, Journaux, Tiers, and Divers pages, allowing users to access both data retrieval and data submission endpoints. - Updated the Documents page to cover all 9 documented endpoints, including 7 for reading and 2 for writing, with appropriate error handling. - Created a new Divers page to handle three endpoints: getserialnumber, codes_list, and custom_geninv_updatestock (the latter being non-functional). - Introduced new methods in LogisticsService for handling PDF generation and stock updates, with corresponding updates in the API documentation. - Improved form field components for better visual spacing in input fields.
46 lines
2.2 KiB
Markdown
46 lines
2.2 KiB
Markdown
# Project Brief
|
|
|
|
Dernière mise à jour : 2026-02-21
|
|
|
|
## Vision
|
|
|
|
Application Laravel de test dont l'objectif est de comprendre le fonctionnement de l'API Logistics (Flex/ESI Gescom) et d'en produire une documentation complète et compréhensible.
|
|
|
|
## Objectifs
|
|
|
|
1. Comprendre le fonctionnement de l'API Logistics.
|
|
2. Créer une application simple permettant d'envoyer et de récupérer des données vers/depuis l'API.
|
|
3. Produire une documentation complète et compréhensible de l'API.
|
|
|
|
## Périmètre fonctionnel
|
|
|
|
- Dashboard Filament v5 accessible sans authentification sur `/admin`.
|
|
- Pages de consultation et d'envoi pour les principales entités de l'API : tables, articles, documents, journaux, tiers, divers.
|
|
- Toggle Lecture/Ecriture sur chaque page entité pour basculer entre les endpoints de récupération et d'envoi de données.
|
|
- Page de documentation intégrée avec rendu stylisé du markdown et export PDF.
|
|
- Formulaires de recherche et d'envoi paramétrables pour chaque endpoint (19 au total).
|
|
- Affichage des résultats sous forme de tableaux structurés et de blocs JSON formatés.
|
|
- Système de design unifié avec composants Blade réutilisables (`x-logistics.*`).
|
|
- Traçage des requêtes effectuées dans une table `api_request_logs`.
|
|
- Gestion robuste des erreurs API (timeout, retry, messages utilisateur en français).
|
|
- Avertissements visuels pour les endpoints non fonctionnels (Document_GetPDF, custom_geninv_updatestock).
|
|
|
|
## Contraintes
|
|
|
|
- Pas d'authentification sur le dashboard (projet de test interne).
|
|
- L'API Logistics est hébergée sur le serveur TSE-10-TEST (`http://tse-10-test.esi.local`).
|
|
- Le serveur API est accessible via le réseau interne.
|
|
- Toutes les requêtes API sont en POST et nécessitent un header `X-API-KEY`.
|
|
- Le nom du dossier dans les URLs de l'API doit être en minuscules.
|
|
|
|
## Convention d'écriture
|
|
|
|
Tous les contenus rédigés en français (documentation, memory bank, règles Cursor, commentaires) doivent utiliser les accents appropriés.
|
|
|
|
## Ressources
|
|
|
|
- Documentation Postman : https://documenter.getpostman.com/view/40440561/2sB2qaj2Pz
|
|
- Documentation interne : `documentation/documentation_api_logistics.md`
|
|
- Documentation originale fournisseur : `documentation/WEB-A-1 (3).md`
|
|
- Fichier projet : `project.md`
|