Files
nBiqoz 0f2adca44a new
2025-10-06 19:16:20 +02:00

36 lines
1003 B
TypeScript

import { NextResponse } from "next/server";
import { getDatabase } from "@/lib/db/mongodb";
export async function GET() {
try {
const db = await getDatabase();
// Récupérer tous les utilisateurs
const users = await db.collection("users").find({}).toArray();
// Calculer les utilisateurs actifs (30 derniers jours)
const thirtyDaysAgo = new Date();
thirtyDaysAgo.setDate(thirtyDaysAgo.getDate() - 30);
let activeUsers = 0;
let inactiveUsers = 0;
users.forEach(user => {
const lastActivity = new Date(user.updatedAt || user.createdAt);
if (lastActivity >= thirtyDaysAgo) {
activeUsers++;
} else {
inactiveUsers++;
}
});
return NextResponse.json({
activeUsers,
inactiveUsers,
totalUsers: users.length
});
} catch (error) {
console.error("Erreur lors du calcul de l'activité des utilisateurs:", error);
return NextResponse.json({ error: "Erreur serveur" }, { status: 500 });
}
}