feat(api): P4 chunk 1a - creation de commande + chevalet #55

Merged
Corentin merged 1 commit from feat/p4-order-create into dev 2026-06-18 14:09:36 +02:00
Owner

Quoi

P4 chunk 1a : la LOGIQUE de creation de commande (repository teste), + la colonne chevalet.

Changements

  • OrderRepository::createPending : transaction RG-5 (1-4) -> commande pending_payment, prix recalcules serveur, TVA par ligne (RG-4), numero K+id, idempotence.
  • OrderValidationException (-> 422 cote controleur a venir).
  • Migration 0003 : service_tag (chevalet B4) sur customer_order.

Verification

6 tests unitaires (double DatabaseInterface) : TVA produit/menu, modifier add, idempotence, refus produit/selection. PHPUnit 307 + PHPStan L6 verts.

Suite (chunk 1b)

OrderController (POST /api/orders + /pay) + route + pay() (decrement stock RG-T20). Le pay necessite le seed des recettes (product_ingredient, differe). Regles de calcul documentees dans le repo, a confirmer.

## Quoi P4 chunk 1a : la LOGIQUE de creation de commande (repository teste), + la colonne chevalet. ## Changements - OrderRepository::createPending : transaction RG-5 (1-4) -> commande pending_payment, prix recalcules serveur, TVA par ligne (RG-4), numero K+id, idempotence. - OrderValidationException (-> 422 cote controleur a venir). - Migration 0003 : service_tag (chevalet B4) sur customer_order. ## Verification 6 tests unitaires (double DatabaseInterface) : TVA produit/menu, modifier add, idempotence, refus produit/selection. PHPUnit 307 + PHPStan L6 verts. ## Suite (chunk 1b) OrderController (POST /api/orders + /pay) + route + pay() (decrement stock RG-T20). Le pay necessite le seed des recettes (product_ingredient, differe). Regles de calcul documentees dans le repo, a confirmer.
Corentin added 1 commit 2026-06-18 14:01:02 +02:00
feat(api): P4 chunk 1a - creation de commande (OrderRepository) + chevalet
Some checks failed
CI / secret-scan (push) Successful in 19s
CI / php-lint (push) Successful in 26s
CI / static-tests (push) Successful in 1m0s
CI / js-tests (push) Successful in 34s
CI / secret-scan (pull_request) Successful in 13s
CI / php-lint (pull_request) Successful in 24s
CI / js-tests (pull_request) Successful in 31s
CI / auto-merge (push) Has been skipped
CI / auto-merge (pull_request) Failing after 5s
CI / static-tests (pull_request) Successful in 59s
25acae771b
OrderRepository::createPending : persiste une commande borne en pending_payment
(customer_order + order_item + selection + modifier) en UNE transaction. Prix
recalcules serveur (RG-T16), TVA par ligne (RG-4 : product.vat_rate ; menu = TVA du
burger), numero K+id, idempotence (anti retry borne). Validation des references /
disponibilite / selections-hors-slot / modifiers (OrderValidationException -> 422).
Migration 0003 : colonne service_tag (chevalet, B4) sur customer_order.

NB : le decrement de stock (RG-T20) + transition paid = pay(), chunk 1b (necessite
aussi le seed des recettes, differe). Regles de calcul (produit normal, extras add,
TVA menu=burger) documentees dans le repo, a confirmer en revue.

6 tests unitaires (calcul d'argent, K+id, idempotence, validations). PHPUnit 307 + PHPStan L6.
Corentin added the
auto-merge
label 2026-06-18 14:01:03 +02:00
Corentin merged commit 29a191e506 into dev 2026-06-18 14:09:36 +02:00
Corentin deleted branch feat/p4-order-create 2026-06-18 14:09:37 +02:00
Sign in to join this conversation.
No reviewers
No labels
auto-merge
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: AcadeNice/corentin_wakdo#55
No description provided.