feat(technique) : export XLSX du repertoire prestataires (ERP-137) #96
Reference in New Issue
Block a user
Delete Branch "feature/ERP-137-export-xlsx-prestataires"
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?
ERP-137 — Export XLSX des prestataires (M3, § 4.6)
Stack par-dessus ERP-136 (base =
feature/ERP-136-validations-rg-server-side, non encore mergé sur develop).Implémentation
ProviderExportController(#[AsController]) — routeGET /api/providers/export.xlsxavec#[Route(priority: 1)](règle ABSOLUE, conflit API Platform{id}),#[IsGranted('technique.providers.view')].ProviderRepositoryInterface::createListQueryBuilder()(archivage, search, categoryCode, siteId) + hydratation batchée (anti N+1, § 2.12).ProviderProvider(bypass_scope / currentSite →applySiteScope()) — un user cloisonné n'exporte que son site.position), Tél principal, Tél secondaire, Email, Catégories (CSV), Sites (relation directeprovider.sites), SIREN (omis si pastechnique.providers.accounting.view), Date de création.SpreadsheetExporterInterface(Shared). Filenamerepertoire-prestataires-{YYYYMMDD}.xlsx.Tests
ProviderExportControllerTest— 12 cas / 81 assertions (en-têtes, archivage, search, contact principal, catégories+sites, gating SIREN admin/minimal/absent, dedup multi-catégories, cloisonnement site, 403, 401).make php-cs-fixer-allow-risky→ cleanmake test→ OK (647 tests, 3017 assertions)Consolidée dans #100 : toute la pile M3-Prestataire (ERP-134 à ERP-139) a été rebasée sur develop et regroupée dans la MR #100 (mergeable, tests verts). Cette MR intermédiaire est fermée pour ne garder qu'une seule MR ouverte. Les commits de ce ticket restent présents dans #100.
Pull request closed