pix icon indicating copy to clipboard operation
pix copied to clipboard

[FEATURE] Ajouter la suppression de participations / assessment / badge / trainings lors de la suppression d'un import SUP (PIX-18074)

Open xav-car opened this issue 7 months ago • 1 comments

🔆 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.

xav-car avatar Jun 12 '25 12:06 xav-car

Une fois les applications déployées, elles seront accessibles via les liens suivants :

Les variables d'environnement seront accessibles via les liens suivants :

pix-bot-github avatar Jun 12 '25 12:06 pix-bot-github

:tada: This PR is included in version 5.136.0 :tada:

The release is available on GitHub release

Your semantic-release bot :package::rocket:

pix-service avatar Jun 17 '25 10:06 pix-service