mirror of
https://framagit.org/enfance-libre/statistiques
synced 2025-12-07 12:53:45 +00:00
feat: ajoute stats
*nbFamillesAvecProcedurePenale, *nbFamillesTribunalDePolice * nbFamillesAdministrateurAdhoc
This commit is contained in:
parent
24d20a4fe0
commit
689dc41ead
3 changed files with 39 additions and 6 deletions
|
|
@ -12,7 +12,8 @@ export type EvenementFamille = Readonly<{
|
||||||
}>;
|
}>;
|
||||||
|
|
||||||
export function isProcedurePenale(evenement: EvenementFamille): boolean {
|
export function isProcedurePenale(evenement: EvenementFamille): boolean {
|
||||||
return categorieEvenement[evenement.Type] === "Procédure Pénale";
|
return categorieEvenement[evenement.Type] === "Procédure Pénale" && evenement.Type !== "Validation désobéissance"
|
||||||
|
&& evenement.Type !== "Mise en demeure de scolarisation";
|
||||||
}
|
}
|
||||||
|
|
||||||
export function isCompositionPenale(evenement: EvenementFamille): boolean {
|
export function isCompositionPenale(evenement: EvenementFamille): boolean {
|
||||||
|
|
|
||||||
|
|
@ -6,6 +6,11 @@ export const statsPenalesDesc = {
|
||||||
nbFamillesMisesEnDemeure: {
|
nbFamillesMisesEnDemeure: {
|
||||||
label: "Nb familles mises en demeure",
|
label: "Nb familles mises en demeure",
|
||||||
},
|
},
|
||||||
|
|
||||||
|
nbFamillesAvecProcedurePenale: {
|
||||||
|
label:
|
||||||
|
"Nb familles avec une procédure pénale (Gendarmerie, Procureur, Tribunal...)",
|
||||||
|
},
|
||||||
nbFamillesAvecGendarmerie: {
|
nbFamillesAvecGendarmerie: {
|
||||||
label:
|
label:
|
||||||
"Nb familles avec un évènement Gendarmerie ou autre Force de l'ordre",
|
"Nb familles avec un évènement Gendarmerie ou autre Force de l'ordre",
|
||||||
|
|
@ -52,6 +57,7 @@ export const statsPenalesDesc = {
|
||||||
nbFamillesRappelALaLoi: {
|
nbFamillesRappelALaLoi: {
|
||||||
label: "Nb familles avec Rappel à la loi",
|
label: "Nb familles avec Rappel à la loi",
|
||||||
},
|
},
|
||||||
|
|
||||||
/*
|
/*
|
||||||
nbFamillesAvertissementPénalProbatoire: {
|
nbFamillesAvertissementPénalProbatoire: {
|
||||||
label: "Nb familles avec Avertissement Pénal Probatoire",
|
label: "Nb familles avec Avertissement Pénal Probatoire",
|
||||||
|
|
@ -76,7 +82,12 @@ export const statsPenalesDesc = {
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
nbFamillesTribunalDePolice: {
|
||||||
|
label: "Nb familles avec Tribunal de police",
|
||||||
|
},
|
||||||
|
nbFamillesAdministrateurAdhoc: {
|
||||||
|
label: "Nb familles avec Administrateur AD'HOC",
|
||||||
|
},
|
||||||
intervalGendarmerieProcureur: {
|
intervalGendarmerieProcureur: {
|
||||||
label: "Délai moyen entre Gendarmerie et Procureur",
|
label: "Délai moyen entre Gendarmerie et Procureur",
|
||||||
unit: " jours",
|
unit: " jours",
|
||||||
|
|
|
||||||
|
|
@ -5,6 +5,7 @@ import {
|
||||||
isEvenementBefore,
|
isEvenementBefore,
|
||||||
isEvtProcureur,
|
isEvtProcureur,
|
||||||
isGendarmerie,
|
isGendarmerie,
|
||||||
|
isProcedurePenale,
|
||||||
} from "../../../data/EvenementFamille";
|
} from "../../../data/EvenementFamille";
|
||||||
import { Famille } from "../../../data/Famille";
|
import { Famille } from "../../../data/Famille";
|
||||||
import { average } from "../../../utils/math/average";
|
import { average } from "../../../utils/math/average";
|
||||||
|
|
@ -24,17 +25,35 @@ export function computeStatsPenales(familles: Famille[]): StatsPenales {
|
||||||
const statsPenales: StatsPenales = {
|
const statsPenales: StatsPenales = {
|
||||||
nbFamillesMisesEnDemeure: famillesMisesEnDemeure.length,
|
nbFamillesMisesEnDemeure: famillesMisesEnDemeure.length,
|
||||||
nbFamillesAvecGendarmerie: famillesAvecGendarmerie.length,
|
nbFamillesAvecGendarmerie: famillesAvecGendarmerie.length,
|
||||||
|
nbFamillesAvecProcedurePenale: filterFamillesWithOneOfEvenements(
|
||||||
|
familles,
|
||||||
|
isProcedurePenale
|
||||||
|
).length,
|
||||||
procureur: {
|
procureur: {
|
||||||
nbFamillesAuditionProcureur: filterFamillesWithOneOfEvenements(
|
nbFamillesAuditionProcureur: filterFamillesWithOneOfEvenements(
|
||||||
familles,
|
familles,
|
||||||
isEvtProcureur
|
isEvtProcureur
|
||||||
).length,
|
).length,
|
||||||
compositionPenales: computeCompositionPenales(familles),
|
compositionPenales: computeCompositionPenales(familles),
|
||||||
crpc: computeCrpc(familles),
|
crpc: computeCrpc(familles),
|
||||||
nbFamillesClassementSansSuite: filterFamillesWithOneOfEvenementsOfType(familles, "Classement pénal sans suite").length,
|
nbFamillesClassementSansSuite: filterFamillesWithOneOfEvenementsOfType(
|
||||||
nbFamillesRappelALaLoi: filterFamillesWithOneOfEvenementsOfType(familles, "Rappel à la loi").length
|
familles,
|
||||||
|
"Classement pénal sans suite"
|
||||||
|
).length,
|
||||||
|
nbFamillesRappelALaLoi: filterFamillesWithOneOfEvenementsOfType(
|
||||||
|
familles,
|
||||||
|
"Rappel à la loi"
|
||||||
|
).length,
|
||||||
},
|
},
|
||||||
tribunalCorrectionnel: computeTribunalCorrectionnel(familles),
|
tribunalCorrectionnel: computeTribunalCorrectionnel(familles),
|
||||||
|
nbFamillesAdministrateurAdhoc: filterFamillesWithOneOfEvenementsOfType(
|
||||||
|
familles,
|
||||||
|
"Administrateur AD'HOC"
|
||||||
|
).length,
|
||||||
|
nbFamillesTribunalDePolice: filterFamillesWithOneOfEvenementsOfType(
|
||||||
|
familles,
|
||||||
|
"Tribunal de police judiciaire"
|
||||||
|
).length,
|
||||||
intervalGendarmerieProcureur: computeIntervalGendarmerieProcureur(familles),
|
intervalGendarmerieProcureur: computeIntervalGendarmerieProcureur(familles),
|
||||||
intervalProcureurTribunalCorrectionnel:
|
intervalProcureurTribunalCorrectionnel:
|
||||||
computeIntervalProcureurTribunalCorrectionnel(familles),
|
computeIntervalProcureurTribunalCorrectionnel(familles),
|
||||||
|
|
@ -108,7 +127,9 @@ function computeTribunalCorrectionnel(
|
||||||
nbFamillesProgrammees: famillesProgrammees.length,
|
nbFamillesProgrammees: famillesProgrammees.length,
|
||||||
nbFamillesRecidive: famillesRecidiveTribunal.length,
|
nbFamillesRecidive: famillesRecidiveTribunal.length,
|
||||||
nbFamilleAppelDuJugement: filterFamillesWithOneOfEvenementsOfType(
|
nbFamilleAppelDuJugement: filterFamillesWithOneOfEvenementsOfType(
|
||||||
familles, "Appel du jugement").length
|
familles,
|
||||||
|
"Appel du jugement"
|
||||||
|
).length,
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue