feat(api): P4 chunk 2 - read API catalogue borne (categories/produits/menus) #60
No reviewers
Labels
No labels
auto-merge
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: AcadeNice/corentin_wakdo#60
Loading…
Add table
Reference in a new issue
No description provided.
Delete branch "feat/p4-read-api-catalogue"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
5 endpoints publics anonymes en lecture seule (docs/api/conventions.md 5.2) : GET /api/categories, /api/products, /api/products/{id}, /api/menus, /api/menus/{id}. - CatalogueController : projection explicite (types entiers garantis cote JSON), enveloppe {data,total} / {data:null,error:{code,message}}, 404 NOT_FOUND. - Repos lecture : CategoryRepository::activeForCatalogue ; Product/Menu ::availableForCatalogue + findForCatalogue. Filtres is_available=1 ET categorie active : la borne ne voit que le commandable (liste ET detail). Menu detail porte ses slots (slotsWithOptions, option_product_ids). - Payload canonique snake_case ; vat_rate exclu (fiscal serveur), is_available retire (toujours dispo), is_required du slot en booleen, sans timestamp. - Dispo calculee RG-T21 differee au seed des recettes (filtre actuel = flag). - Tests : 11 unit (FakeCatalogueDatabase, read-only) + 2 integration (filtres + slots vs vraie MariaDB).