refactor : remplacement du SQL brut par du DQL UPDATE dans les hooks PostPersist

- Reception et Shipment utilisent createQuery au lieu de executeStatement
- Bypass toujours l'unit of work, même comportement, mais via Doctrine
- Mise à jour de la règle CLAUDE.md : repository custom autorisé, SQL brut interdit

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-04-27 17:10:37 +02:00
parent 569d3b373f
commit aa401f48f9
3 changed files with 9 additions and 17 deletions

View File

@@ -82,7 +82,7 @@ frontend/
- Code en anglais ; "pont-bascule" est un terme métier conservé tel quel.
- Les opérations API Platform sont définies directement sur les entités Doctrine.
- Pas de classes Repository custom : utiliser `EntityManagerInterface` avec les repos par défaut.
- Repository custom autorisé dès qu'on a une requête métier non-triviale (agrégations, jointures spécifiques, filtres multiples). Toujours via DQL/QueryBuilder, **jamais de SQL brut** (pas de `Connection::executeQuery`, `fetchAssociative`, etc.). Les CRUD basiques restent sur le repo Doctrine par défaut via `EntityManagerInterface`.
- `config/reference.php` est auto-généré — ne pas modifier à la main.
- Endpoints toujours au pluriel (convention API Platform).
- Ne jamais créer de GET qui crée des ressources : utiliser POST + PATCH.