- Added a new `$results` property to the Documents page to allow users to specify the maximum number of results returned by the `document_list` endpoint, defaulting to ~108. - Updated the `searchDocuments` method to include the `results` parameter in API requests, ensuring it is sent as a string. - Modified the documents.blade.php view to include an input field for the `results` parameter, with appropriate placeholder text and guidance. - Improved the documentation for the `document_list` endpoint to clarify the behavior of the `results` parameter and its interaction with `thirdid`. - Updated the `Document_GetPDF` section to reflect its functionality and correct usage of the `LAYOUT` parameter. - Added a new test to verify that the `results` parameter is correctly sent to the API. - Overall, enhanced the user experience and API interaction for document management.
2.5 KiB
2.5 KiB
Project Brief
Dernière mise à jour : 2026-02-23
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
- Comprendre le fonctionnement de l'API Logistics.
- Créer une application simple permettant d'envoyer et de récupérer des données vers/depuis l'API.
- 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, traduction avec explications via
ApiErrorTranslator). - Validation des champs obligatoires avant chaque appel API avec messages en français.
- Distinction "jamais recherché" / "recherché sans résultat" via propriétés de tracking.
- Avertissement visuel pour l'endpoint non fonctionnel (custom_geninv_updatestock). L'endpoint Document_GetPDF est désormais fonctionnel (LAYOUT numérique).
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