[FEATURE] Ajouter la suppression de participations / assessment / badge / trainings lors de la suppression d'un import SUP (PIX-18074)
🔆 Problème
Lorsqu'on fait un import sur une orga SUP pour remplacer des prescrits, on supprime les anciens prescrits non présents dans le fichier avant d'ajouter / modifier ceux du fichier. mais les prescrits ne sont jamais anonymisés.
⛱️ Proposition
Modifier le job d'import du SUP pour qu'il utilise le usecase de suppression des prescrits car il supporte le feature flag (et on ré-utilise du code et c'est beau)
🌊 Remarques
En passant par le usecase de suppression de learner, on modifie aussi le updatedAt sur l'organizationLearner supprimé (ce qui n'était pas fait avant)
🏄 Pour tester
Avec le Flag d'anonymisation à false
- Faire un import sup avec le fichier sup-ok (voir les fichiers de test de la prescription)
- Enlever 2 prescrit du fichier
- Faire un import sup avec le nouveau fichier
- Se connecter avec pgsql-console
select * from "organization-learners" where "organizationId"=1001
- valider que les learners sont supprimés mais pas anonymisés
select * from "campaign-participations" JOIN "organization-learners" ON "organization-learners".id="organizationLearnerId" AND "organization-learners"."deletedAt" IS NOT NULL where "organizationId"=1001;
- valider que les participations sont supprimées mais pas anonymisées.
Avec le Flag d'anonymisation à true
- Dans Faire un import sup avec le fichier sup-ok (voir les fichiers de test de la prescription)
- Faire un import sup avec le fichier modifié
- Se connecter avec pgsql-console
select * from "organization-learners" where "organizationId"=1001
- valider que les learners sont supprimés ET anonymisés.
select * from "campaign-participations" JOIN "organization-learners" ON "organization-learners".id="organizationLearnerId" AND "organization-learners"."deletedAt" IS NOT NULL where "organizationId"=1001;
- valider que les participations sont supprimées ET anonymisées.
Une fois les applications déployées, elles seront accessibles via les liens suivants :
- App (.fr)
- App (.org)
- Orga (.fr)
- Orga (.org)
- Certif (.fr)
- Certif (.org)
- Junior
- Admin
- API
- API MaDDo
- Audit Logger
Les variables d'environnement seront accessibles via les liens suivants :
:tada: This PR is included in version 5.136.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket: