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,36 +7,58 @@ export const statsPenalesDesc = {
label: "Nb familles mises en demeure",
},
nbFamillesAvecGendarmerie: {
label: "Nb familles avec un evenement lié à la Gendarmerie",
label:
"Nb familles avec un évènement Gendarmerie ou autre Force de l'ordre",
},
compositionPenales: {
label: "Compositions Pénales",
procureur: {
label: "Procureur",
stats: {
nbFamilles: {
label: "Nb familles concernées",
nbFamillesAuditionProcureur: {
label: "Nb familles avec une audition procureur (CRPC ou non)",
},
acceptees: {
label: "Nb familles ayant acceptées",
compositionPenales: {
label: "Compositions Pénales",
stats: {
nbFamilles: {
label: "Nb familles concernées",
},
acceptees: {
label: "Nb familles ayant acceptées",
},
refusees: {
label: "Nb familles ayant refusées",
},
},
},
refusees: {
label: "Nb familles ayant refusées",
},
},
},
crpc: {
label: "CRPC",
stats: {
nbFamilles: {
label: "Nb familles concernées",
},
acceptees: {
label: "Nb familles ayant acceptées",
},
refusees: {
label: "Nb familles ayant refusées",
crpc: {
label: "CRPC",
stats: {
nbFamilles: {
label: "Nb familles concernées",
},
acceptees: {
label: "Nb familles ayant acceptées",
},
refusees: {
label: "Nb familles ayant refusées",
},
},
},
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: {
label: "Tribunal Correctionnel",
stats: {
@ -49,6 +71,9 @@ export const statsPenalesDesc = {
nbFamillesRecidive: {
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 = {
nbFamillesMisesEnDemeure: famillesMisesEnDemeure.length,
nbFamillesAvecGendarmerie: famillesAvecGendarmerie.length,
compositionPenales: computeCompositionPenales(familles),
crpc: computeCrpc(familles),
procureur: {
nbFamillesAuditionProcureur: filterFamillesWithOneOfEvenements(
familles,
isEvtProcureur
).length,
compositionPenales: computeCompositionPenales(familles),
crpc: computeCrpc(familles),
nbFamillesClassementSansSuite: filterFamillesWithOneOfEvenementsOfType(familles, "Classement pénal sans suite").length,
nbFamillesRappelALaLoi: filterFamillesWithOneOfEvenementsOfType(familles, "Rappel à la loi").length
},
tribunalCorrectionnel: computeTribunalCorrectionnel(familles),
intervalGendarmerieProcureur: computeIntervalGendarmerieProcureur(familles),
intervalProcureurTribunalCorrectionnel:
@ -34,7 +42,7 @@ export function computeStatsPenales(familles: Famille[]): StatsPenales {
return statsPenales;
}
function computeCrpc(familles: Famille[]): StatsPenales["crpc"] {
function computeCrpc(familles: Famille[]): StatsPenales["procureur"]["crpc"] {
const famillesConcernees = filterFamillesWithOneOfEvenements(familles, (e) =>
isCRPC(e)
);
@ -56,7 +64,7 @@ function computeCrpc(familles: Famille[]): StatsPenales["crpc"] {
function computeCompositionPenales(
familles: Famille[]
): StatsPenales["compositionPenales"] {
): StatsPenales["procureur"]["compositionPenales"] {
const famillesConcernees = filterFamillesWithOneOfEvenements(familles, (e) =>
isCompositionPenale(e)
);
@ -99,6 +107,8 @@ function computeTribunalCorrectionnel(
nbFamillesPassees: famillesPassees.length,
nbFamillesProgrammees: famillesProgrammees.length,
nbFamillesRecidive: famillesRecidiveTribunal.length,
nbFamilleAppelDuJugement: filterFamillesWithOneOfEvenementsOfType(
familles, "Appel du jugement").length
};
}