- Introduced new endpoints for creating and modifying articles (`art_add`, `art_mod`) and tiers (`third_add`, `third_mod`), allowing users to manage these entities effectively. - Updated the Articles and Tiers pages to include forms for adding and modifying records, complete with parameter tables for clear guidance on required inputs. - Enhanced the API documentation to include detailed descriptions, examples, and metadata for the new endpoints, improving usability and understanding for developers. - Created a new rule for writing conventions with French accents to ensure consistency across the project. - Updated existing documentation to reflect structural changes and added a summary table for CRUD operations. - Added tests to verify the functionality of the new features and ensure robust error handling.
5.5 KiB
5.5 KiB
Active Context
Dernière mise à jour : 2026-02-23
Travail en cours
Aucun travail en cours.
Changements récents (2026-02-23, session documentation écriture + CRUD)
- Découverte de 4 nouveaux endpoints CRUD via investigation directe de l'API :
art_add(HTTP 400 sans paramètres = existe) : création d'article. RequiertARTID(MAJUSCULES). AccepteNAME1,SALEPRICEet autres colonnes de la tableart.art_mod(HTTP 400 sans paramètres = existe) : modification d'article. RequiertARTIDexistant.third_add(HTTP 200 sans paramètres = existe, très permissif) : création de tiers. Aucun paramètre obligatoire, génère un ID automatique_@NNNNNNNN. AccepteNAME,VAT,EMAIL.third_mod(HTTP 400 sans paramètres = existe) : modification de tiers. RequiertCUSTIDexistant (MAJUSCULES).
- Endpoints inexistants (HTTP 404) :
art_del,third_del,jnl_add,jnl_mod,jnl_del,document_del. - 4 nouvelles méthodes dans
LogisticsService:artAdd(),artMod(),thirdAdd(),thirdMod(). Total : 23 méthodes. - Page Articles enrichie : mode écriture avec formulaires
art_add(création) etart_mod(modification), avec tableaux de paramètres et blocs JSON de résultat. - Page Tiers enrichie : mode écriture avec formulaires
third_add(création) etthird_mod(modification), avec tableaux de paramètres et blocs JSON de résultat. - Section 7 de la documentation réécrite : 7 endpoints d'écriture documentés (document_add, document_mod, art_add, art_mod, third_add, third_mod, custom_geninv_updatestock). Chaque endpoint inclut : description, paramètres, métadonnées, exemples de requête, exemples de réponse (succès + erreur), remarques.
- Tableau récapitulatif CRUD ajouté en introduction de la section 7 (création/modification/suppression par page).
- Table des matières mise à jour avec sous-sections 7.1 à 7.4.
- Règle Cursor
.cursor/rules/accents.mdccréée : formalise la convention d'écriture avec accents français. - Règle
.cursor/rules/update-documentation.mdcmise à jour : structure corrigée (sections 6/7/8 au lieu de 5/6/7, section "Endpoints non fonctionnels" supprimée, nouveaux endpoints ajoutés). DocumentationTest.phpcorrigé : ancres mises à jour (suppression de8-endpoints-non-fonctionnels), assertions ajoutées pourcustom_geninv_updatestock,art_add,art_mod,third_add,third_mod.- 6 nouveaux tests dans
LogisticsServiceTest.php:documentAdd,documentMod,artAdd,artMod,thirdAdd,thirdMod. - 7 nouveaux tests dans
ArticlesPageTest.php:art_add(succès, validation, paramètres optionnels, erreur doublon),art_mod(succès, validation, erreur inexistant). - 6 nouveaux tests dans
TiersPageTest.php:third_add(succès, paramètres optionnels, exception),third_mod(succès, validation, erreur inexistant). - Pint : formatage validé.
Décisions récentes
- Investigation CRUD via requêtes directes (2026-02-23) : Envoi de requêtes POST à des endpoints hypothétiques pour découvrir lesquels existent. HTTP 400 (validation error) = endpoint existe. HTTP 404 = endpoint inexistant.
- Paramètres en MAJUSCULES pour CRUD (2026-02-23) : Les endpoints
art_add,art_mod,third_add,third_modexigent les noms de paramètres en MAJUSCULES (ARTID,CUSTID,NAME1,NAME, etc.). third_addsans paramètre obligatoire (2026-02-23) : L'endpoint crée un tiers même avec un body vide. L'UI ne bloque pas l'envoi sans paramètre car l'API l'accepte, mais un avertissement est documenté.- Règle Cursor accents (2026-02-23) : Formalisation de la convention existante (memory bank 2026-02-20) dans une règle
.cursor/rules/accents.mdcpour garantir son application systématique. - Composant
param-tableplutôt que HTML brut (2026-02-23) : Le tableau de paramètres existant dansdivers.blade.phpa été extrait dans un composant réutilisable. - Toggle Lecture/Ecriture (2026-02-21) : Toutes les pages entité disposent d'un toggle.
- Convention d'écriture avec accents (2026-02-20) : Tous les contenus en français utilisent les accents.
Historique
2026-02-23 (session tableaux de paramètres)
- Nouveau composant Blade
<x-logistics.param-table>. - Tableaux de paramètres ajoutés sur toutes les pages (17 endpoints).
- Total : 11 composants Blade dans le design system.
2026-02-23 (session investigation endpoints Divers)
- Investigation complète des 3 endpoints Divers.
custom_geninv_updatestockreclassé fonctionnel en MODE=1 Restock.- 12 nouveaux tests.
2026-02-23 (session investigation endpoints Tiers)
- Investigation complète des 2 endpoints Tiers.
- 7 nouveaux tests.
2026-02-23 (session investigation endpoints Documents)
- Investigation complète des 9 endpoints Documents.
- 1 nouveau test.
2026-02-21 (session endpoints manquants)
- 2 méthodes ajoutées à
LogisticsService. Pages Documents, Divers, toggle sur toutes les pages.
2026-02-20
- Page Documentation, système de design, composants Blade, thème personnalisé.
2026-02-19
- Installation Filament v5, 5 pages, LogisticsService, migration api_request_logs.
Prochaines étapes
- Corriger les tests pré-existants
FilamentDashboardTest(2 tests en échec). - 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.