Added Participation Page

This commit is contained in:
2026-02-15 14:36:28 +01:00
parent da2e32d004
commit 5185a41bb6
23 changed files with 2643 additions and 67 deletions

View File

@@ -23,25 +23,26 @@ export async function GET(request: NextRequest) {
const startOfYesterday = new Date(now.getFullYear(), now.getMonth(), now.getDate() - 1);
const endOfYesterday = new Date(now.getFullYear(), now.getMonth(), now.getDate() - 1, 23, 59, 59, 999);
// 1. Participations du mois (montant total des trajets validés/terminés + nombre de factures)
// Pour l'instant, on considère qu'un trajet terminé = une facture
// Montant estimé : 6.80€ par trajet (valeur moyenne basée sur l'image)
const trajetsMois = await prisma.trajet.findMany({
// 1. Participations du mois (trajets validés/terminés ce mois)
const participationsMoisData = await prisma.participationFinanciere.findMany({
where: {
archived: false,
statut: {
in: ['Terminé', 'Validé'],
},
date: {
gte: startOfMonth,
lte: endOfMonth,
trajet: {
date: {
gte: startOfMonth,
lte: endOfMonth,
},
},
},
include: { trajet: { select: { date: true } } },
});
const montantMoyenParTrajet = 6.80; // Montant moyen par trajet en euros
const participationsMois = trajetsMois.length * montantMoyenParTrajet;
const nombreFactures = trajetsMois.length;
const participationsCeMois = participationsMoisData;
const montantMoyenParTrajet = 6.80;
const participationsMois = participationsCeMois.reduce(
(sum, p) => sum + (p.montant ?? montantMoyenParTrajet),
0
);
const nombreFactures = participationsCeMois.length;
// 2. Trajets aujourd'hui
const trajetsAujourdhui = await prisma.trajet.count({