feat: add moderation center for reports and ratings with user cleanup cron job
This commit is contained in:
@@ -30,12 +30,23 @@ export async function GET(request: Request) {
|
||||
return NextResponse.json({ message: "Aucun compte à supprimer" });
|
||||
}
|
||||
|
||||
// 2. Suppression définitive
|
||||
// Prisma supprimera les données liées si onDelete: Cascade est configuré dans le schéma
|
||||
const userIds = usersToDelete.map(u => u.id);
|
||||
|
||||
// 2. Préserver les avis rédigés en les dissociant du compte (deviennent anonymes / "Utilisateur supprimé")
|
||||
await prisma.rating.updateMany({
|
||||
where: {
|
||||
userId: { in: userIds }
|
||||
},
|
||||
data: {
|
||||
userId: null
|
||||
}
|
||||
});
|
||||
|
||||
// 3. Suppression définitive des comptes utilisateurs
|
||||
const deleteResult = await prisma.user.deleteMany({
|
||||
where: {
|
||||
id: {
|
||||
in: usersToDelete.map(u => u.id)
|
||||
in: userIds
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user