Matthieu
|
dc75945f3e
|
feat(transport) : schéma + entités Carrier + contrat lecture (ERP-155/157)
Schéma BDD du répertoire transporteurs (M4) + entités + contrat de lecture
(liste + détail), socle du front.
- Migration Version20260615150000 : tables carrier / carrier_address /
carrier_contact / carrier_price (FK cross-module, CHECK enum, index partiel
uq_carrier_name_active, COMMENT ON COLUMN). uploaded_document et
qualimat_carrier réutilisées (non recréées).
- Entités Carrier* (#[Auditable], Timestampable/Blamable) + ApiResource
LECTURE seule (GetCollection + Get via CarrierProvider, anti-N+1, exclusion
archivés + ?includeArchived). Écriture (POST/PATCH + Processor) reportée WT4+.
- QualimatCarrier : mapping ORM lecture seule sur la table référentielle
existante (sortie du schema_filter, mapping aligné DDL ERP-39, schema:update
no-op) + endpoint de recherche read-only (§ 4.7).
- Relations cross-module des prix (Client/Supplier/adresses) via contrats
Shared (ClientInterface, SupplierInterface, ClientAddressInterface,
SupplierAddressInterface) + resolve_target_entities — sans import inter-module
(règle n°1). Ajout du groupe supplier_address:read aux champs de
SupplierAddress pour l'embed.
- Garde-fous : ColumnCommentsCatalog (carrier* + qualimat_carrier), makefile
test-db-setup (index partiel carrier), i18n audit (transport_carrier*),
EntitiesAreTimestampableBlamableTest (QualimatCarrier whitelisté).
- CarrierSerializationContractTest : contrat JSON liste + détail vérifié
(embeds objet, booléens, enveloppe Hydra) ; JSON réel capturé dans
spec-back § 4.0.bis.
make db-reset OK, make test vert (731), make nuxt-test vert (480),
php-cs-fixer OK.
|
2026-06-16 15:13:10 +02:00 |
|