feat: ajoute ClassementSansSuite & Rappel à la loi

wip-related-pages
Sébastien Arod 2024-09-05 17:19:27 +02:00
parent b26b428622
commit 0b2c1fbc70
2 changed files with 62 additions and 27 deletions

View File

@ -7,7 +7,14 @@ export const statsPenalesDesc = {
label: "Nb familles mises en demeure", label: "Nb familles mises en demeure",
}, },
nbFamillesAvecGendarmerie: { nbFamillesAvecGendarmerie: {
label: "Nb familles avec un evenement lié à la Gendarmerie", label:
"Nb familles avec un évènement Gendarmerie ou autre Force de l'ordre",
},
procureur: {
label: "Procureur",
stats: {
nbFamillesAuditionProcureur: {
label: "Nb familles avec une audition procureur (CRPC ou non)",
}, },
compositionPenales: { compositionPenales: {
label: "Compositions Pénales", label: "Compositions Pénales",
@ -37,6 +44,21 @@ export const statsPenalesDesc = {
}, },
}, },
}, },
nbFamillesClassementSansSuite: {
label: "Nb familles avec Classement pénal sans suite",
},
nbFamillesRappelALaLoi: {
label: "Nb familles avec Rappel à la loi",
},
/*
nbFamillesAvertissementPénalProbatoire: {
label: "Nb familles avec Avertissement Pénal Probatoire",
},*/
},
},
tribunalCorrectionnel: { tribunalCorrectionnel: {
label: "Tribunal Correctionnel", label: "Tribunal Correctionnel",
stats: { stats: {
@ -49,6 +71,9 @@ export const statsPenalesDesc = {
nbFamillesRecidive: { nbFamillesRecidive: {
label: "Nb familles recidive", label: "Nb familles recidive",
}, },
nbFamilleAppelDuJugement: {
label: "Nb familles appel du jugement",
},
}, },
}, },

View File

@ -24,8 +24,16 @@ export function computeStatsPenales(familles: Famille[]): StatsPenales {
const statsPenales: StatsPenales = { const statsPenales: StatsPenales = {
nbFamillesMisesEnDemeure: famillesMisesEnDemeure.length, nbFamillesMisesEnDemeure: famillesMisesEnDemeure.length,
nbFamillesAvecGendarmerie: famillesAvecGendarmerie.length, nbFamillesAvecGendarmerie: famillesAvecGendarmerie.length,
procureur: {
nbFamillesAuditionProcureur: filterFamillesWithOneOfEvenements(
familles,
isEvtProcureur
).length,
compositionPenales: computeCompositionPenales(familles), compositionPenales: computeCompositionPenales(familles),
crpc: computeCrpc(familles), crpc: computeCrpc(familles),
nbFamillesClassementSansSuite: filterFamillesWithOneOfEvenementsOfType(familles, "Classement pénal sans suite").length,
nbFamillesRappelALaLoi: filterFamillesWithOneOfEvenementsOfType(familles, "Rappel à la loi").length
},
tribunalCorrectionnel: computeTribunalCorrectionnel(familles), tribunalCorrectionnel: computeTribunalCorrectionnel(familles),
intervalGendarmerieProcureur: computeIntervalGendarmerieProcureur(familles), intervalGendarmerieProcureur: computeIntervalGendarmerieProcureur(familles),
intervalProcureurTribunalCorrectionnel: intervalProcureurTribunalCorrectionnel:
@ -34,7 +42,7 @@ export function computeStatsPenales(familles: Famille[]): StatsPenales {
return statsPenales; return statsPenales;
} }
function computeCrpc(familles: Famille[]): StatsPenales["crpc"] { function computeCrpc(familles: Famille[]): StatsPenales["procureur"]["crpc"] {
const famillesConcernees = filterFamillesWithOneOfEvenements(familles, (e) => const famillesConcernees = filterFamillesWithOneOfEvenements(familles, (e) =>
isCRPC(e) isCRPC(e)
); );
@ -56,7 +64,7 @@ function computeCrpc(familles: Famille[]): StatsPenales["crpc"] {
function computeCompositionPenales( function computeCompositionPenales(
familles: Famille[] familles: Famille[]
): StatsPenales["compositionPenales"] { ): StatsPenales["procureur"]["compositionPenales"] {
const famillesConcernees = filterFamillesWithOneOfEvenements(familles, (e) => const famillesConcernees = filterFamillesWithOneOfEvenements(familles, (e) =>
isCompositionPenale(e) isCompositionPenale(e)
); );
@ -99,6 +107,8 @@ function computeTribunalCorrectionnel(
nbFamillesPassees: famillesPassees.length, nbFamillesPassees: famillesPassees.length,
nbFamillesProgrammees: famillesProgrammees.length, nbFamillesProgrammees: famillesProgrammees.length,
nbFamillesRecidive: famillesRecidiveTribunal.length, nbFamillesRecidive: famillesRecidiveTribunal.length,
nbFamilleAppelDuJugement: filterFamillesWithOneOfEvenementsOfType(
familles, "Appel du jugement").length
}; };
} }