← Index des services · SI FGA · spécification de service

svc-documents

Catégorie : Socle  ·  Périmètre : Transverse  ·  Module : services/svc-documents (monorepo fga-services — ADR-0001)  ·  Stack : Java · Quarkus · Gradle · YAML  ·  Architecture : hexagonale

1. Rôle et responsabilités

Génération de documents à partir de modèles (bons, lettres, mises en demeure, PV, quittances), dépôt et consultation GED/SAE, métadonnées documentaires, archivage à valeur probante. Anti-corruption layer devant la GED.

2. Modèle de domaine (agrégats)

DocumentTemplateGeneratedDocumentArchiveEntry

3. API exposée

/v1/templates/v1/documents/v1/documents/{id}/archive

API REST versionnée, contrat OpenAPI généré et versionné avec le service. Authentification par jeton Keycloak (JWT RS256) validé par le service (Quarkus OIDC).

4. Événements publiés

5. Événements consommés

événements déclencheurs via routage configuré : guarantee-letter.requested, formal-notice.issued, ...

Topics sigfga.<service>.<aggregate> · enveloppe CloudEvents 1.0 · publication via outbox pattern · consommateurs idempotents (déduplication par event id).

6. Dépendances synchrones

GED / SAE (port out)

7. Flux principal

svc-documents · flux principalrecevoir la demande de génération(API ou événement déclencheur)charger le templatefusionner les donnéesgénérer le documentpublierdocument.generateddéposer en GED / SAErejouer le dépôtpublierdocument.archive-failedsi échec persistantnonarchivage réussi ?publierdocument.archivedoui

8. Backlog Jira rattaché

27 tickets du backlog Jira se rattachent à ce service, via 2 épics :

ÉpicIntituléEnfants
FSD-44[PEC] Archivage sécurisé des dossiers sinistres · clôturée en v2 (fusion)
FSD-1054[PORT] Gestion documentaire20
L'épic portail « Gestion documentaire » (FSD-1054) et l'archivage PEC (FSD-44) se rattachent ici. La GED/SAE en tant que brique (choix produit, arborescence, politique de conservation) n'a aucun ticket.

9. Implémentation

Structure hexagonale standard : domain (modèle, événements, services purs, sans dépendance framework), application (use cases, ports in/out, transactions), adapter (in/rest, in/messaging, out/persistence, out/messaging, out/client). Dépendances verrouillées par test ArchUnit. Base de données dédiée (schéma PostgreSQL propre), migrations Liquibase (changesets exclusivement en SQL formaté — ADR-0002). Code intégralement en anglais ; textes utilisateur en fichiers i18n français.

10. Schéma de données

svc-documents