fix: mise a jour CategorieEvement

wip-related-pages
sebastien.arod@gmail.com 2024-06-05 21:35:55 +02:00
parent af2e5d157c
commit b74838d482
2 changed files with 32 additions and 14 deletions

View File

@ -29,35 +29,37 @@ export function isProcedureCivile(evenement: EvenementFamille): boolean {
const categorieEvenement: {
[evt in TypeEvenement]: CategorieEvenement;
} = {
["Signalement au procureur"]: "Procédure Civile",
["Classement social sans suite"]: "Procédure Civile",
["Enquête sociale"]: "Procédure Civile",
["Information préoccupante"]: "Procédure Civile",
["Juge pour enfants"]: "Procédure Civile",
["Audition des enfants"]: "Procédure Civile",
["Assistance éducative"]: "Procédure Civile",
["Contrôle forcé"]: "Procédure Civile",
["Récidive gendarmerie"]: "Procédure Pénale",
["Appel du jugement"]: "Procédure Pénale",
["Tribunal de police judiciaire"]: "Procédure Pénale",
["Signalement au procureur"]: "Procédure Civile", // TBC
["Mise en demeure de scolarisation"]: "Procédure Pénale",
["Signalement"]: "Procédure Civile",
["Audition gendarmerie / police"]: "Procédure Pénale",
["Passage police municipale"]: "Procédure Pénale",
["Convocation procureur"]: "Procédure Pénale",
["Audition procureur"]: "Procédure Pénale",
["Composition pénale refusée"]: "Procédure Pénale",
["Composition pénale acceptée"]: "Procédure Pénale",
["Classement social sans suite"]: "Procédure Civile",
["Classement pénal sans suite"]: "Procédure Pénale",
["Enquête sociale"]: "Procédure Civile",
["Information préoccupante"]: "Procédure Civile",
["Juge pour enfants"]: "Procédure Civile",
["Tribunal correctionnel"]: "Procédure Pénale",
["Convocation CRPC"]: "Procédure Pénale",
["Plaidoirie"]: "Procédure Pénale",
["Audience CRPC"]: "Procédure Pénale",
["Refus CRPC"]: "Procédure Pénale",
["Audition des enfants"]: "Procédure Civile",
["Assistance éducative"]: "Procédure Civile",
["Contrôle forcé"]: "Autre",
["Refus de contrôle"]: "Autre",
["Rappel à la loi"]: "Procédure Pénale",
["Passage police municipale"]: "Procédure Pénale",
["Validation désobéissance"]: "Procédure Pénale",
["Plaidoirie"]: "Autre",
["Refus de contrôle"]: "Autre",
["Administrateur AD'HOC"]: "Autre",
["Validation désobéissance"]: "Autre",
["Signalement"]: "Autre",
};
export type CategorieEvenement =
@ -72,6 +74,13 @@ export function isEvenementInPeriod(
return evt.Date && isPeriodContaining(period, evt.Date);
}
export function isEvenementBefore(evt: EvenementFamille, date: Date): unknown {
export function isEvenementBefore(evt: EvenementFamille, date: Date): boolean {
return evt.Date !== null && evt.Date < date;
}
export function isValidEvenementFamille(str: string | null): boolean {
return (
str === null ||
Object.prototype.hasOwnProperty.call(categorieEvenement, str)
);
}

View File

@ -1,3 +1,4 @@
import { isValidEvenementFamille } from "./EvenementFamille";
import { Famille } from "./Famille";
export function checkDataConsistency(families: Famille[]): ConsistencyIssue[] {
@ -59,5 +60,13 @@ function checkFamilyDataConsistency(family: Famille) {
});
}
}
consistencyIssues.push(
...family.Evenements.filter((e) => !isValidEvenementFamille(e.Type)).map(
(e) => ({
familyId: family.Titre,
issueType: "Unknown event Type: " + e.Type,
})
)
);
return consistencyIssues;
}