Commit graph

8 commits

Author SHA1 Message Date
Imugiii
eead733d54 feat(borne): tailles 30/50cl des boissons a la carte (P5 reliquat R4)
All checks were successful
CI / secret-scan (push) Successful in 14s
CI / php-lint (push) Successful in 32s
CI / static-tests (push) Successful in 1m17s
CI / js-tests (push) Successful in 40s
CI / secret-scan (pull_request) Successful in 13s
CI / php-lint (pull_request) Successful in 43s
CI / static-tests (pull_request) Successful in 1m19s
CI / js-tests (pull_request) Successful in 47s
Une taille de boisson est un produit a part entiere (modele identique a
Moyenne Frite / Grande Frite) : nouvelle colonne product.base_product_id
(self-FK ON DELETE CASCADE) groupe les variantes sous leur base, size_cl
porte le volume. Les variantes sont masquees de la grille catalogue
(availableForCatalogue ET findForCatalogue filtrent base_product_id IS NULL :
une 50cl ne s'atteint que via le picker de taille de sa base, jamais en
fiche autonome ni par lien direct). /api/products expose un tableau sizes[]
par base, charge en une requete (sizesByBase, pas de N+1). Le picker borne
(CSP-safe) resout la taille choisie en product_id ; le domaine commande
facture par product_id, flux inchange (resolveLine), stock decremente via
la recette propre de la variante.

Migration 0007 + seed 0005 idempotents (verifies sur MariaDB reel :
migration x2, seed x3, comptes stables, CASCADE confirme). Revue
bmad-compliance : 1 must_fix (filtre findForCatalogue) corrige, mantras 92%.
2026-06-22 12:01:42 +00:00
5cc879c3ea feat(orders): saisie commande comptoir/drive - fondation produits (mlt 4.1) (#85)
All checks were successful
CI / secret-scan (push) Successful in 10s
CI / php-lint (push) Successful in 20s
CI / static-tests (push) Successful in 49s
CI / js-tests (push) Successful in 27s
2026-06-22 12:09:11 +02:00
ea1654c21a feat(menu): accompagnement Maxi en variante Grande automatique (variante en base) (#84)
All checks were successful
CI / secret-scan (push) Successful in 9s
CI / php-lint (push) Successful in 24s
CI / static-tests (push) Successful in 58s
CI / js-tests (push) Successful in 32s
2026-06-22 11:52:04 +02:00
741cfdb02b feat(orders): annulation de commande (CANCEL_ORDER) - PIN + audit + restock (mlt 7.1) (#83)
All checks were successful
CI / secret-scan (push) Successful in 12s
CI / php-lint (push) Successful in 23s
CI / static-tests (push) Successful in 47s
CI / js-tests (push) Successful in 25s
2026-06-22 11:35:55 +02:00
80919f62c1 feat(orders): KDS cuisine + transition paid vers delivered (P3 operationnel) (#81)
All checks were successful
CI / secret-scan (push) Successful in 8s
CI / php-lint (push) Successful in 21s
CI / static-tests (push) Successful in 43s
CI / js-tests (push) Successful in 33s
2026-06-22 09:28:39 +02:00
cb990404e3 feat(api): suivi public du statut commande GET /api/orders/{number} (P4) (#77)
All checks were successful
CI / secret-scan (push) Successful in 9s
CI / php-lint (push) Successful in 20s
CI / static-tests (push) Successful in 47s
CI / js-tests (push) Successful in 26s
2026-06-22 08:53:36 +02:00
60ce3460a5 feat(api): P4 chunk 1b - encaissement + decrement stock (#57)
All checks were successful
CI / secret-scan (push) Successful in 18s
CI / php-lint (push) Successful in 27s
CI / static-tests (push) Successful in 55s
CI / js-tests (push) Successful in 31s
CI / auto-merge (push) Has been skipped
2026-06-18 14:29:22 +02:00
29a191e506 feat(api): P4 chunk 1a - creation de commande + chevalet (#55)
All checks were successful
CI / secret-scan (push) Successful in 10s
CI / js-tests (push) Successful in 35s
CI / auto-merge (push) Has been skipped
CI / php-lint (push) Successful in 29s
CI / static-tests (push) Successful in 1m5s
2026-06-18 14:09:35 +02:00