- 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.
5.2 KiB
5.2 KiB
Active Context
Dernière mise à jour : 2026-02-23
Travail en cours
Aucun travail en cours.
Changements récents (2026-02-23, session investigation endpoints Documents)
- Investigation complète des 9 endpoints Documents : tests systématiques via appels API réels pour documenter chaque endpoint de la page Documents.php. Résultats principaux :
document_list: le paramètreresultsfonctionne (contrairement àart_listetthird_list). Défaut ~108 résultats.selectpar défaut retourne uniquementthirdid. Body vide = erreur 400.document_detail: structure de réponse riche documentée (en-tête du document au premier niveau + tableauxdetail[]etattach[]). Métadonnées spécifiques :detailRowCount,attachRowCount,totalExecutionTimeMs.Document_GetStatusList: retourne{code, desc}. Statuts documentés pour 6 types de journaux (03VEN, 01COM, 02NEV, 04NCV, 11COMF, 09OFFRE).Document_GetUnitPriceAndVat:QTYdoit être string (int = HTTP 400).DATEdoit êtreYYYY-MM-DD(autre format = HTTP 400). Réponse :{unitprice, discount, vatid, vatpc}en strings.Document_GetDueDate: codespaydelayproviennent decodes_listaveccode=PAYDELAY(10 codes documentés : 30, 30F, 45F, 50, 60, 60F, 75F, 90, 90F, 0F).dateau formatYYYY-MM-DD. Réponse :{duedate: "YYYY-MM-DD"}.Document_GetAttachListThumbnail: codes d'erreur 003 (document non trouvé), 004 (pas d'image).- Document_GetPDF est FONCTIONNEL : le paramètre
LAYOUTdoit être une valeur numérique en string (ex:"1"). Les valeurs textuelles provoquent une erreur. Retourne le PDF en base64 dansdata.pdf. document_add/document_mod: pas de logs antérieurs, documentation existante cohérente.
- Documentation massivement mise à jour :
documentation/documentation_api_logistics.mdenrichie avec exemples de réponses réelles, structures de données détaillées, codes paydelay, format de date YYYY-MM-DD, Document_GetPDF reclassé comme fonctionnel. Ajout de la section "8. Endpoints partiellement fonctionnels". Numérotation des sections mise à jour. - Page Documents.php modifiée : ajout de la propriété
$results(int, défaut 108), transmission du paramètreresultsen string à l'API viasearchDocuments(). - Vue documents.blade.php modifiée : ajout du champ
results(input numérique) dans le formulairedocument_list. Suppression du bandeau "non fonctionnel" deDocument_GetPDF, mise à jour du placeholder LAYOUT ("Ex: 1"), mise à jour de la description. - 1 nouveau test Pest ajouté dans
DocumentsPageTest.php: vérification queresultsest envoyé en string à l'API. - Modes de paiement documentés :
codes_listaveccode=PAYMODEretourne CAS (Cash), VIR (Virement), BC (Bancontact), CBEF (Cash BEF). - Total : 125 tests passent, 2 tests pré-existants en échec (FilamentDashboardTest).
Décisions récentes
- Document_GetPDF fonctionnel (2026-02-23) : L'endpoint a été reclassé de "non fonctionnel" à "partiellement fonctionnel". Le paramètre LAYOUT doit être une valeur numérique en string. Le bandeau d'avertissement a été retiré de la vue.
- Format de date YYYY-MM-DD (2026-02-23) : Confirmé par tests que tous les endpoints acceptant une date exigent strictement le format
YYYY-MM-DD. Documenté dans la section "Remarques et points d'attention". - Paramètre results sur document_list (2026-02-23) : Le paramètre
resultsfonctionne réellement surdocument_list(contrairement àart_listetthird_list). Ajouté dans le formulaire et le code PHP. - Toggle Lecture/Ecriture (2026-02-21) : Toutes les pages entité disposent d'un toggle.
- Endpoints Documents complétés (2026-02-21) : 9 endpoints couverts.
- Convention d'écriture avec accents (2026-02-20) : Tous les contenus en français utilisent les accents.
Historique
2026-02-23 (session investigation art_list)
- Investigation paramètre
results: sans effet surart_list(5 max) etthird_list(10 max). - Investigation paramètre
barcode: sans effet observable,searchreste obligatoire. - Page Articles :
$resultssupprimé,$barcodeajouté. - Documentation
art_listetthird_listcorrigée. - 2 nouveaux tests barcode.
2026-02-23 (session gestion erreurs et validation)
- Création de
ApiErrorTranslator. Validation des champs obligatoires. Propriétés de tracking. - 4 nouveaux fichiers de tests. Total : 122 tests.
2026-02-21 (session endpoints manquants)
- 2 méthodes ajoutées à
LogisticsService. Pages Documents, Divers, toggle sur toutes les pages. - 23 nouveaux tests.
2026-02-20
- Page Documentation, système de design, composants Blade, thème personnalisé, robustesse service.
2026-02-19
- Installation Filament v5, 5 pages, LogisticsService, migration api_request_logs.
Prochaines étapes
- Corriger les 2 tests pré-existants
FilamentDashboardTest. - Tester toutes les pages avec de vraies données API et vérifier le rendu visuel.
- Éventuellement : pagination / tri côté client pour les grands tableaux.
- Éventuellement : page de consultation des logs API.
- Éventuellement : investiguer
custom_geninv_updatestock(clarifier STKID, TOCHECK, MODE auprès du fournisseur).