Entités binomes — Cœur métier
Retour : sommaire du module.
Jeune
Table : jeune
Description : Profil d'un jeune accompagné dans le cadre du programme de mentorat, avec ses informations personnelles, scolaires, ses préférences et son statut dans le parcours.
| Champ | Type | Description |
|---|---|---|
id |
bigint |
Identifiant primaire. |
charteJeune |
boolean (nullable) |
Charte mentorat signée dans l'ancien funnel d'inscription (toggle inscriptionJeuneV2 à off). Aussi posée à true dans le cas V2. |
academy |
varchar(255) (nullable) |
Académie scolaire du jeune. Recalculée automatiquement à partir de schoolDepartment à l'inscription et à chaque update. |
acceptSurvey |
boolean (nullable) |
Acceptation de participer à des enquêtes. |
qpv |
boolean (nullable) |
Résidence en quartier prioritaire de la ville. |
zrr |
boolean (nullable) |
Résidence en zone de revitalisation rurale. |
appel |
boolean (nullable) |
Obsolète. Ancien flag d’appel positif (premier contact EL). Conservé en base, plus saisi ni affiché. |
bam |
boolean (nullable) |
Indicateur lié au programme BAM. |
stem |
boolean (nullable) |
Indicateur lié à une filière STEM (étudiantes gender = female en PP en filière STEM, indépendamment de la région d'études). |
stemAppel1 |
timestamp (nullable) |
Date du 1er appel STEM. |
stemAppel2 |
timestamp (nullable) |
Date du 2e appel STEM. |
stemSms1 |
timestamp (nullable) |
Date du 1er SMS STEM. |
stemSms2 |
timestamp (nullable) |
Date du 2e SMS STEM. |
stemNotInterested |
tinyint (nullable) |
Le jeune n'est pas intéressé par le programme STEM. |
stemInterested |
tinyint (nullable) |
Le jeune est intéressé par le programme STEM. |
stemNoResponse |
tinyint (nullable) |
Absence de réponse du jeune concernant STEM. |
boursier |
varchar(255) (nullable) |
Statut de boursier. |
moyenne |
varchar(255) (nullable) |
Moyenne scolaire du jeune. |
boursierLevel |
varchar(255) (nullable) |
Niveau de bourse. |
firstName |
varchar(255) (nullable) |
Prénom du jeune. |
situation |
varchar(255) (nullable) |
Situation actuelle du jeune. |
cityCode |
varchar(255) (nullable) |
Code postal/commune de l'adresse indiquée lors du bac (personnalisation.vue). Obligatoire à l'inscription sauf si étudiant à l'étranger — règle portée uniquement par le front (nullable en DB, @IsOptional côté back). Modifiable ensuite via l'espace perso ou le back-office ; une valeur vide envoyée n'écrase pas l'ancienne (fallback). |
cityName |
varchar(255) (nullable) |
Nom de la ville de résidence. |
creationDate |
timestamp (nullable) |
Date de création du profil. |
sectors |
json (nullable) |
Obligatoire pour les mentorés et les jeunes avec besoin = pro. Secteurs visés par le jeune. 0 à 2 max. Renseigné lors de l'onboarding mentoré (question « Dans quel(s) secteur(s) aimerais-tu travailler ? »). |
sectorAutre |
varchar(255) (nullable) |
Secteur d'intérêt "autre" saisi librement. |
legalRepresentativePhone |
varchar(255) (nullable) |
Téléphone du représentant légal. |
legalRepresentativeMail |
varchar(255) (nullable) |
Email du représentant légal. |
mail |
varchar(255) (nullable) |
Email du jeune. |
minor |
boolean (nullable) |
Le jeune est mineur. Funnel v2 : posé à la finalisation depuis la date de naissance ; le jeune reste INSCRIT sans onboarding mentorat. |
phone |
varchar(255) (nullable) |
Téléphone du jeune. |
validateMailSent |
varchar(255) (nullable) |
Compteur/statut d'envoi de l'email de validation. |
validateSmsSent |
varchar(255) (nullable) |
Compteur/statut d'envoi du SMS de validation. |
precision |
varchar(1000) (nullable) |
Précision libre sur le profil. |
schoolClass |
varchar(255) (nullable) |
Niveau d'études actuel. Obligatoire pour les mentorés. Rempli lors de l'inscription si objectif = reussir-annee, sinon lors de l'onboarding. Valeurs possibles : Bac+1, Bac+2, Bac+3, Bac+4, Bac+5, Au-delà, Autre. Pas de colonne dédiée pour l'année visée par reussir-annee — remplace l'ancienne colonne anneeEnvisage, supprimée. |
schoolRegion |
varchar(255) (nullable) |
Région de l'établissement scolaire. Recalculée à la persistance (JeuneRepository.save / update / merge) à partir de schoolDepartment. |
schoolDepartment |
varchar(255) (nullable) |
Département de l'établissement scolaire. |
schoolName |
varchar(255) (nullable) |
Nom de l'établissement scolaire. |
schoolNameAutre |
varchar(255) (nullable) |
Nom d'établissement "autre" saisi librement. |
filieres |
json (nullable) |
Liste des filières du jeune (en pratique un tableau à un élément). Aussi utilisée pour la filière visée par l'objectif reussir-annee. |
filiereAutre |
varchar(255) (nullable) |
Filière "autre" saisie librement. |
schoolCursus |
varchar(255) (nullable) |
Cursus scolaire suivi (remplace type, voir valeurs usuelles). Aussi utilisé pour le cursus visé par l'objectif reussir-annee. |
cursusAutre |
varchar(255) (nullable) |
Cursus "autre" saisi librement. |
bacDepartment |
varchar(255) (nullable) |
Département du baccalauréat. |
scoreEngagement |
bigint (nullable) |
Score d'engagement historique. Plus calculé ni affiché ; conservé en base pour les jeunes qui l'avaient déjà. |
reasonsScoreEngagement |
json (nullable) |
Raisons historiques du score d'engagement. Plus calculé ni affiché ; conservé en base pour les jeunes qui l'avaient déjà. |
bacSchool |
varchar(255) (nullable) |
Établissement du baccalauréat. |
status |
varchar(255) (nullable) |
Statut du jeune dans le parcours. |
raisonNonDispo |
varchar(255) (nullable) |
Raison d'indisponibilité. |
raisonLockInscription |
varchar(255) (nullable) |
Raison de blocage de l'inscription. |
raisonLeaveFlash |
varchar(255) (nullable) |
Raison de sortie du dispositif Flash. |
statusUpdateDate |
timestamp (nullable) |
Date de dernière mise à jour du statut. |
streetName |
varchar(255) (nullable) |
Nom de rue de l'adresse. |
streetNumber |
varchar(255) (nullable) |
Numéro de rue de l'adresse. |
besoins |
json (nullable) |
Liste des besoins du jeune (slug + sous-catégories). |
tempbesoins |
json (nullable) |
Besoins temporaires du jeune (slug + sous-catégories). |
passions |
json (nullable) |
Liste des passions du jeune. |
keywords |
json (nullable) |
Mots-clés associés au jeune. |
type |
varchar(255) (nullable) |
Obsolète, remplacé par schoolCursus (voir valeurs usuelles). |
state |
varchar(255) (nullable) (défaut: 'Autonome') |
État courant du jeune dans le parcours. |
stateUpdateDate |
timestamp (nullable) |
Date de dernière mise à jour de l'état. |
mood |
varchar(255) (nullable) |
Humeur/ressenti général du jeune. |
knowledge |
varchar(255) (nullable) |
Niveau de connaissance déclaré. |
moodBuild |
varchar(255) (nullable) |
Ressenti sur la phase de construction. |
moodInsertion |
varchar(255) (nullable) |
Ressenti sur la phase d'insertion. |
entourage |
varchar(255) (nullable) |
Information sur l'entourage du jeune. |
tutors |
json (nullable) |
Informations sur les tuteurs du jeune. |
situations |
json (nullable) |
Liste des situations du jeune. |
about |
varchar(1000) (nullable) |
Motivation du jeune à rejoindre le mentorat (programme EL) — label « Peux-tu nous partager en quelques lignes ta motivation à rejoindre ce programme ? », étape "A propos du mentorat" de l'onboarding, modifiable ensuite en profil et en BO (section "EL"). |
readStory |
boolean (nullable) |
Le jeune a lu la "story" de présentation. |
seeVideo |
boolean (nullable) |
Le jeune a vu la vidéo de présentation. |
refusePremer |
integer (nullable) |
Compteur/indicateur de refus de premier rendez-vous. |
linkedin |
varchar (nullable) |
Lien du profil LinkedIn. |
diplomeName |
varchar (nullable) |
Nom du diplôme visé/obtenu. |
userId |
varchar |
Référence vers le compte utilisateur associé. |
knownBy |
varchar (nullable) |
Origine de la connaissance du dispositif (comment le jeune en a entendu parler). |
dispoEvents |
boolean (nullable) |
Disponibilité pour participer à des événements. |
filiereBac |
varchar (nullable) |
Filière du baccalauréat. |
mentionBac |
varchar (nullable) |
Mention obtenue au baccalauréat. |
projetteEtude |
varchar (nullable) |
Obligatoire pour les mentorés. Réponse à la question Quel niveau d'études aimerais-tu atteindre ? dans l'onboarding mentoré. |
jobIdeal |
varchar (nullable) |
Obligatoire pour les mentorés. Réponse à la question « Quel est ton job idéal ? » de l'onboarding mentoré. |
spSoutiensProches |
varchar (nullable) |
Obligatoire pour les mentorés. Réponse à la question « Tes proches peuvent-ils te soutenir dans tes choix ? » de l'onboarding mentoré. |
spNiveauParents |
varchar (nullable) |
Obligatoire pour les mentorés. Réponse à la question « Quel est le niveau d'études de tes parents ou tuteurs ? » de l'onboarding mentoré. |
spBesoinsMensuels |
varchar (nullable) |
Facultatif. Réponse à l'affirmation « Je considère que je n'ai pas assez d'argent pour couvrir mes besoins mensuels » (situations particulières de l'onboarding mentoré). |
spActiviteRemuneree |
varchar (nullable) |
Facultatif. Réponse à l'affirmation « J'ai une activité rémunérée, qui n'est pas liée au contenu de mes études » (situations particulières de l'onboarding mentoré). |
spIsolementFamilial |
varchar (nullable) |
Facultatif. Réponse à l'affirmation « Je vis loin de ma famille » (situations particulières de l'onboarding mentoré). |
spIsolementEtudiant |
varchar (nullable) |
Facultatif. Réponse à l'affirmation « Je me sens isolé(e) des autres étudiants de ma formation » (situations particulières de l'onboarding mentoré). |
objectifs |
varchar (nullable) |
Objectif du jeune (slug). Pas de contrainte en base ; valeurs posées par le funnel v2 selon besoins (voir front/static/model/BesoinsJeuneV2.js) — cas pro : stage, alternance, emploi ; cas study : reussir-annee, candidater, concours. D'anciennes valeurs issues du funnel legacy (libellés en clair, ex. "Valider mon année d'étude", voir front/static/model/Objectifs.js) peuvent subsister sur des jeunes plus anciens. |
posteEnvisage |
varchar (nullable) |
Poste envisagé par le jeune. |
localisationEnvisage |
varchar (nullable) |
Localisation envisagée par le jeune. |
diplomeOuConcoursEnvisage |
varchar (nullable) |
Diplôme ou concours envisagé. |
dateEnvisage |
date (nullable) |
Date envisagée pour l'objectif. |
frequence |
varchar (nullable) |
Fréquence d'accompagnement souhaitée. |
programme |
varchar (nullable) |
Programme suivi par le jeune (PP / PNP). Valeur EL obsolète, remplacée par le booléen EL. Posé à l'inscription / QPV-ZRR, modifiable admin, pas recalculé à la MAJ profil. |
EL |
boolean (défaut: false) |
Facultatif. Indique si le jeune est considéré EL. MAJ à la fin de l’onboarding (et à la MAJ profil). |
wannaBeEL |
boolean (nullable) |
Obsolète. Ancien souhait de devenir EL. Conservé en base, plus utilisé par le calcul. |
badges |
json (nullable) |
Badges obtenus par le jeune. |
registerBamDate |
timestamp (nullable) |
Date d'inscription au programme BAM. |
plannedBamDate |
timestamp (nullable) |
Date planifiée pour le BAM. |
participationBamDate |
timestamp (nullable) |
Date de participation effective au BAM. |
proposedCallDate |
timestamp (nullable) |
Obsolète. Ancienne date d'appel proposée (premier contact EL). Conservé en base. |
callDate |
timestamp (nullable) |
Obsolète. Ancienne date de l'appel (premier contact EL). Conservé en base. |
participationCallDate |
timestamp (nullable) |
Obsolète. Ancienne date de participation à l'appel (premier contact EL). Conservé en base. |
resultCall |
varchar (nullable) |
Obsolète. Ancien résultat d'appel (premier contact EL). Conservé en base, plus saisi ni affiché. |
hasVisitedDashboard |
boolean (nullable) (défaut: false) |
Le jeune a visité son tableau de bord. |
hasDismissedOnboardingMentoratPopup |
boolean (nullable) (défaut: false) |
Le jeune a fermé la pop-up dashboard de reprise d'inscription mentorat (one-shot, colonne has_dismissed_onboarding_mentorat_popup). |
matchingInstantaneRefuse |
tinyint (nullable) |
true si le jeune a refusé explicitement les 3 mentors du matching instantané ; NULL sinon (vidé au passage MATCHE). |
sourceMentoratLp |
boolean (nullable) |
Inscription issue du CTA LP ?source_mentorat_LP=true. |
sourceMentoratBesoin |
boolean (nullable) |
Inscription ayant sélectionné le besoin lost au moment de la finalisation. |
sourceMentoratDashboard |
boolean (nullable) |
Facultatif. Le mentoré a cliqué sur l’encart mentorat depuis le dashboard. Marqueur uniquement (ne déclenche pas l’onboarding à lui seul) ; posé avec status et status_onboarding au clic « Commence l’aventure ». |
statusOnboarding |
varchar(16) (nullable) |
Progression de l'onboarding mentorat : NON_COMMENCE, EN_COURS ou TERMINE; null hors mentorat. Post-MEP (toggle v2, hors MVLS) : le bouton Gestion passe les APTE non TERMINE en EN_COURS_ONBOARDING ; statusOnboarding n'est remis à NON_COMMENCE que s'il n'était pas déjà EN_COURS. |
charteMentorat |
boolean (défaut: false) |
Charte mentorat signée dans l'onboarding V2 (toggle inscriptionJeuneV2 à on). |
onboardingStartedDate |
datetime (nullable) |
Facultatif. Date et heure où le mentoré a cliqué sur Commencer dans l'étape 1 de l’onboarding mentoré |
onboardingEndedDate |
datetime (nullable) |
Facultatif. Date et heure où le mentoré a terminé son onboarding en validant la charte. |
datePassageMentor |
datetime (nullable) |
Facultatif. Date et heure où le jeune a commencé son inscription mentor (passage mentoré → mentor). Non renseigné tant que le parcours n’est pas livré. |
prioritization |
smallint (nullable) |
Score de priorisation calculé à la fin de l'onboarding mentoré (validation charte). Valeur de 0 à 100. Calculé par ScorePrioritizationAlgorithm. null si onboarding non complété. |
prioritizationBreakdown |
text (nullable) |
Détail du score de priorisation par critère, au format JSON ({ criterion: score }). Stocké en même temps que prioritization. |
suiviRenforce |
boolean (nullable) |
Indique si le jeune bénéficie d'un suivi renforcé de l'équipe Article 1. Calculé à la validation de la charte : true si prioritization >= 40, false sinon. Seuil statique en v1, modifiable ultérieurement. |
etudiantEtranger |
boolean (nullable) |
Le jeune est étudiant étranger. |
ase |
boolean (nullable) |
Le jeune relève de l'Aide Sociale à l'Enfance. |
suiviAve |
boolean (nullable) |
Suivi dans le cadre du dispositif AVE. |
commentAve |
varchar (nullable) |
Commentaire lié au suivi AVE. |
bourseAve |
varchar (nullable) |
Information de bourse liée à l'AVE. |
chiffreAve |
varchar (nullable) |
Donnée chiffrée liée à l'AVE. |
anneeAve |
varchar (nullable) |
Année liée au suivi AVE. |
callMonthDone |
boolean (défaut: false) |
Obsolète. Ancien appel de suivi 45j effectué. Conservé en base, plus saisi ni affiché. |
adminId |
varchar (nullable) |
Référence vers l'administrateur en charge. Non renseigné à l'inscription : uniquement via matching instantané ou assignation manuelle. |
externalInfos |
json (nullable) |
Informations externes additionnelles. |
Relations :
extraitPrecision: OneToOne →JeuneExtraitPrecisionbinomes: OneToMany →Binomeflashs: OneToMany →Flashadmin: ManyToOne →User(FKadmin_id)user: OneToOne →User(FKuser_id)denyProlongation: OneToMany →DenyProlongationadminReservation: OneToMany →AdminReservationinstantMatchingReservation: OneToMany →InstantMatchingReservationemailCampaign: OneToMany →CampaignEmailsMonitoringlogStatuts: OneToMany →LogStatutlogNonDispos: OneToMany →LogNonDispologProgrammes: OneToMany →LogProgrammelogUpdates: OneToMany →LogUpdatelogAdminAssocies: OneToMany →LogAdminAssocielogMails: OneToMany →LogMailcomments: OneToMany →CommentscommentsIndiv: OneToMany →CommentsIndivave: OneToMany →JeuneAvelogStates: OneToMany →LogStatelogSandbox: OneToMany →LogSandboxlogMatchingInstantaneRefuses: OneToMany →LogMatchingInstantaneRefuselogScoreJeunes: OneToMany →LogScoreJeunenotifs: OneToMany →Notif
Benevole
Table : benevole
Description : Profil d'un bénévole (mentor) accompagnant un ou plusieurs jeunes, avec ses informations personnelles, professionnelles et son statut dans le parcours.
| Champ | Type | Description |
|---|---|---|
id |
bigint |
Identifiant primaire. |
creationDate |
timestamp (nullable) |
Date de création du profil. |
department |
varchar(255) (nullable) |
Département de résidence. |
helpType |
varchar(255) (nullable) |
Type d'aide proposée par le bénévole. |
charteBenevole |
boolean (nullable) |
Acceptation de la charte bénévole. |
acceptSurvey |
boolean (nullable) |
Acceptation de participer à des enquêtes. |
mail |
varchar(255) (nullable) |
Email du bénévole. |
majorWithNoCriminalRecord |
boolean (nullable) |
Majeur et sans casier judiciaire. |
formation |
boolean (nullable) |
Formation suivie par le bénévole. |
phone |
varchar(255) (nullable) |
Téléphone du bénévole. |
validateMailSent |
varchar(255) (nullable) |
Compteur/statut d'envoi de l'email de validation. |
validateSmsSent |
varchar(255) (nullable) |
Compteur/statut d'envoi du SMS de validation. |
region |
varchar(255) (nullable) |
Région de résidence. |
status |
varchar(255) (nullable) |
Statut du bénévole dans le parcours. |
raisonNonDispo |
varchar(255) (nullable) |
Raison d'indisponibilité. |
infosEp |
varchar(2000) (nullable) |
Informations "extrait précision" (visible admin uniquement). |
nonDispoUntil |
timestamp (nullable) |
Date de fin d'indisponibilité. |
statusUpdateDate |
timestamp (nullable) |
Date de dernière mise à jour du statut. |
linkedin |
varchar(1000) (nullable) |
Lien du profil LinkedIn. |
besoins |
json (nullable) |
Liste des besoins du bénévole (slug + sous-catégories). |
precision |
varchar(1000) (nullable) |
Précision libre sur le profil. |
firstName |
varchar(255) (nullable) |
Prénom du bénévole. |
type |
varchar(255) (nullable) |
Type de profil bénévole. |
boursier |
boolean (nullable) |
Statut de boursier (étudiant). |
alternance |
boolean (nullable) |
Le bénévole est en alternance. |
formationPosture |
boolean (nullable) |
Formation "posture" suivie. |
formationStartedDate |
timestamp (nullable) |
Date de début de la formation. |
formationEndedDate |
timestamp (nullable) |
Date de fin de la formation. |
statusFormation |
varchar(255) (nullable) |
Statut d'avancement de la formation. |
noDiplome |
tinyint (nullable) |
Absence de diplôme. |
badgeCollectifMentorat |
tinyint (nullable) |
Badge collectif de mentorat obtenu. |
userId |
varchar |
Référence vers le compte utilisateur associé. |
knownBy |
varchar |
Origine de la connaissance du dispositif. |
cible |
varchar (nullable) |
Cible/segment du bénévole. |
badges |
json (nullable) |
Badges obtenus par le bénévole. |
accompagnementDuration |
json (nullable) |
Durées d'accompagnement proposées. |
experience |
varchar(255) (nullable) |
Expérience du bénévole. |
statutActivite |
varchar(255) (nullable) |
Statut d'activité professionnelle. |
secteurMetier |
varchar(255) (nullable) |
Secteur du métier du bénévole. |
secteurMetierAutre |
varchar(255) (nullable) |
Secteur métier "autre" saisi librement. |
secteurEmploi |
varchar(255) (nullable) |
Secteur d'emploi du bénévole. |
secteurEmploiAutre |
varchar(255) (nullable) |
Secteur d'emploi "autre" saisi librement. |
passions |
json (nullable) |
Liste des passions du bénévole. |
multibinome |
boolean (défaut: false) |
Le bénévole est engagé dans plusieurs binômes. |
excluInstantMatching |
boolean (défaut: false) |
Réservé pour le matching manuel : exclu du matching instantané et des résultats de l'algo. |
nbBinomeActif |
real (nullable) |
Nombre de binômes actifs. |
popupMultibinome |
boolean (défaut: false) |
Popup multibinôme déjà affichée. |
futureTraitement |
boolean (défaut: false) |
Traitement futur en attente. |
multibinomeDate |
timestamp (nullable) |
Date liée au passage en multibinôme. |
state |
varchar(255) (nullable) (défaut: 'Autonome') |
État courant du bénévole dans le parcours. |
stateUpdateDate |
timestamp (nullable) |
Date de dernière mise à jour de l'état. |
externalInfos |
json (nullable) |
Informations externes additionnelles. |
adminAssocieId |
varchar (nullable) |
Référence vers l'administrateur associé/suivi. |
Relations :
extraitPrecision: OneToOne →BenevoleExtraitPrecisionadminAssocie: ManyToOne →User(FKadmin_associe_id)user: OneToOne →User(FKuser_id)binomes: OneToMany →Binomeflashs: OneToMany →Flashpostes: OneToMany →PosteBenevolecursus: OneToMany →CursusBenevoledenyProlongation: OneToMany →DenyProlongationadminReservation: OneToMany →AdminReservationinstantMatchingReservation: OneToMany →InstantMatchingReservationemailCampaign: OneToMany →CampaignEmailsMonitoringlogStatuts: OneToMany →LogStatutlogNonDispos: OneToMany →LogNonDispologUpdates: OneToMany →LogUpdatelogMails: OneToMany →LogMaillogCibles: OneToMany →LogCiblelogMultibinomes: OneToMany →LogMultibinomelogAdminAssocies: OneToMany →LogAdminAssociecomments: OneToMany →CommentscommentsIndiv: OneToMany →CommentsIndivlogStates: OneToMany →LogStatelogSandbox: OneToMany →LogSandboxnotifs: OneToMany →Notif
Binome
Table : binome
Description : Association entre un jeune et un bénévole formant un binôme de mentorat, avec son cycle de vie (statut, étapes, scoring, impact).
| Champ | Type | Description |
|---|---|---|
id |
bigint |
Identifiant primaire. |
comment |
varchar(1000) (nullable) |
Commentaire libre sur le binôme. |
score |
real (nullable) |
Score de matching du binôme. |
scoreDetails |
varchar(2048) (nullable) |
Détail du calcul du score. |
raisonAdmin |
varchar(400) (nullable) |
Raison saisie par l'administrateur. |
status |
varchar(255) (nullable) |
Statut du binôme. |
state |
varchar(255) (nullable) |
État courant du binôme dans le parcours. |
stateUpdateDate |
timestamp (nullable) |
Date de dernière mise à jour de l'état. |
twoDaysReminder |
timestamp (nullable) |
Date de relance à 48h. |
callMonthDone |
boolean (défaut: false) |
Obsolète. Ancien appel de suivi 45j effectué. Conservé en base, plus saisi ni affiché. |
callDoneInfos |
varchar(255) (nullable) |
Obsolète. Ancien motif du call de suivi 45j. Conservé en base, plus saisi ni affiché. |
callDoneInfosAutre |
varchar(900) (nullable) |
Obsolète. Ancienne précision du call de suivi 45j. Conservé en base, plus saisi ni affiché. |
cancellationReason |
varchar(255) (nullable) |
Raison d'annulation du binôme. |
statusUpdateDate |
timestamp (nullable) |
Date de dernière mise à jour du statut. |
creationDate |
timestamp (nullable) |
Date de création du binôme. |
buildDate |
timestamp (nullable) |
Date de constitution du binôme. |
nextStepDate |
timestamp (nullable) |
Date de la prochaine étape. |
lastStepDone |
varchar(255) (nullable) |
Dernière étape réalisée. |
sawVideoJeune |
boolean (nullable) |
Le jeune a vu la vidéo de présentation. |
readMemoBenevole |
boolean (nullable) |
Le bénévole a lu le mémo. |
priseContact |
boolean (nullable) |
Prise de contact effectuée. |
datePriseContact |
timestamp (nullable) |
Date de la prise de contact. |
sandbox |
enum('DEMA1N','SANDBOX','VOIEPRO','AFE','CAP ESSEC','HG Fondation','Fondation C&D','MJT','DRAJES','MVLS') (défaut: 'DEMA1N') |
Environnement/programme sandbox du binôme. |
type |
enum('manuel','auto','instant') (défaut: 'manuel') |
Mode de création du binôme. |
typeAlgo |
enum('classic','v2') (défaut: 'classic') |
Version de l'algorithme de matching utilisé. |
main |
boolean (défaut: true) |
Indique si c'est le binôme principal. |
alternativeId |
varchar (nullable) |
Référence vers un binôme alternatif. |
highlightedPoste |
int (nullable) |
Poste mis en avant pour le binôme. |
ignorePremerReason |
varchar (nullable) |
Raison d'ignorance du premier rendez-vous. |
impactJ |
json (nullable) |
Données d'impact côté jeune (non sélectionné par défaut en requête). |
impactB |
json (nullable) |
Données d'impact côté bénévole (non sélectionné par défaut en requête). |
linkImpactJ |
varchar (nullable) |
Lien vers l'enquête d'impact jeune (visible admin/historique uniquement). |
linkImpactB |
varchar (nullable) |
Lien vers l'enquête d'impact bénévole (visible admin/historique uniquement). |
jeuneId |
varchar |
Référence vers le jeune du binôme. |
benevoleId |
varchar |
Référence vers le bénévole du binôme. |
adminId |
varchar (nullable) |
Référence vers l'administrateur en charge. |
creatorMail |
varchar (nullable) |
Email de la personne à l'origine de la création. |
firstMessageJeune |
text (nullable) |
Premier message envoyé par le jeune. |
stepSequenceId |
varchar |
Référence vers la séquence d'étapes du binôme. |
Relations :
alternativeBinome: ManyToOne →Binome(FKalternative_id)jeune: ManyToOne →Jeune(FKjeune_id)benevole: ManyToOne →Benevole(FKbv_id)admin: ManyToOne →User(FKadmin_id)stepSequence: ManyToOne →StepSequence(FKstepSequence_id)reponseBinomeLog: OneToMany →ReponseBinomeLogsuivistatus: OneToMany →SuivistatusstepMessageBinome: OneToMany →StepMessageBinomeimpacts: OneToMany →ImpactdenyProlongation: OneToMany →DenyProlongationcomments: OneToMany →Commentsprolongation: OneToMany →Prolongationlists: OneToMany →TodoListlogStatuts: OneToMany →LogStatutlogMails: OneToMany →LogMaillogAdminAssocies: OneToMany →LogAdminAssocielogStates: OneToMany →LogStatelogSandbox: OneToMany →LogSandboxlogPriseContact: OneToMany →LogPriseContactnotifs: OneToMany →Notif
User
Table : user
Description : Compte utilisateur générique de la plateforme, support commun des profils jeune, bénévole et administrateur, lié à l'authentification SSO.
| Champ | Type | Description |
|---|---|---|
id |
bigint |
Identifiant primaire. |
ssoId |
varchar(255) (nullable) |
Identifiant SSO (A1Connect) de l'utilisateur. |
email |
varchar(127) (nullable) |
Email de l'utilisateur. |
firstName |
varchar(255) (nullable) |
Prénom de l'utilisateur. |
lastName |
varchar(255) (nullable) |
Nom de l'utilisateur. |
gender |
varchar(255) (nullable) |
Genre de l'utilisateur. |
birthday |
datetime (nullable) |
Date de naissance. |
password |
varchar(255) (nullable) |
Mot de passe (non sélectionné par défaut en requête). |
rgpdAccepted |
varchar(255) (nullable) |
Acceptation RGPD. |
createdAt |
timestamp (nullable) |
Date de création du compte. |
updatedAt |
timestamp (nullable) |
Date de dernière mise à jour du compte. |
code |
varchar (nullable) |
Code associé à l'utilisateur. |
activated |
boolean (défaut: false) |
Compte activé. |
newsletter |
boolean (nullable) |
Abonnement à la newsletter. |
activationToken |
varchar (nullable) |
Jeton d'activation du compte. |
profile |
enum('user','admin','superadmin','observer','admin_deleted') (défaut: 'user') |
Profil/rôle de l'utilisateur. |
sandbox |
enum('DEMA1N','SANDBOX','VOIEPRO','AFE','CAP ESSEC','HG Fondation','Fondation C&D','MJT','DRAJES','MVLS') (défaut: 'DEMA1N') |
Environnement/programme sandbox de l'utilisateur. |
Relations :
benevole: OneToOne →Benevolejeune: OneToOne →Jeuneadministrator: OneToOne →Administratorbinomes: OneToMany →BinomejeunesAssocies: OneToMany →Jeuneimpacts: OneToMany →Impactregions: OneToMany →RegionAdminfiltersAdmin: OneToMany →FiltersAdminadminReservation: OneToMany →AdminReservationemailCampaign: OneToMany →CampaignEmailsMonitoringtutorials: OneToMany →TutoriallogUpdates: OneToMany →LogUpdatelogUpdateAdmins: OneToMany →LogUpdateAdminlogStates: OneToMany →LogStatelogMails: OneToMany →LogMaillogAdminAssocies: OneToMany →LogAdminAssociecomments: OneToMany →CommentscommentsIndiv: OneToMany →CommentsbinomesSuivis: OneToMany →Benevolenotifs: OneToMany →NotiflogPriseContact: OneToMany →LogPriseContact
Administrator
Table : administrator
Description : Informations complémentaires d'un utilisateur ayant un rôle d'administrateur (équipe, options, sandbox accessibles).
| Champ | Type | Description |
|---|---|---|
id |
bigint |
Identifiant primaire. |
userId |
bigint |
Référence vers l'utilisateur associé. |
code |
varchar (nullable) |
Code de l'administrateur. |
team |
enum (nullable) |
Équipe de l'administrateur (valeurs définies dans TeamsList.json). |
options |
json (nullable) |
Options de configuration de l'administrateur (vip, stem, manager, coordo, etc.). Le champ historique matching_instant n'est plus utilisé pour l'assignation MI. |
availableSandbox |
json (nullable) |
Liste des sandbox/programmes accessibles à l'administrateur. |
equipeId |
bigint (nullable) |
Équipe (groupe d'admins) à laquelle l'administrateur appartient. Un admin n'est dans qu'une seule équipe. L'appartenance ne se modifie pas via PUT /admin : uniquement via le CRUD equipe. |
disponible |
boolean |
Si false, le CD n'est pas choisi pour un nouveau binôme en matching instantané. Défaut true. Édité par le coordo via PUT /equipe/me/members/:cdId. Pour recevoir un binôme MI, le CD doit aussi avoir un equipeId. |
maxBinomes |
int |
Plafond de binômes du portefeuille (défaut 550). Le % de remplissage peut dépasser 100 %. |
Relations :
user: OneToOne →User(FKuser_id)equipe: ManyToOne →Equipe(FKequipe_id)
Equipe
Table : equipe
Description : Groupe d'administrateurs (CDs) dirigé par un unique coordo. Distinguer de administrator.team (équipe géographique).
| Champ | Type | Description |
|---|---|---|
id |
bigint |
Identifiant primaire. |
name |
varchar |
Nom de l'équipe. |
coordoUserId |
bigint |
Utilisateur coordo de l'équipe (NOT NULL + UNIQUE : 1 équipe = 1 coordo, 1 coordo = 1 équipe). |
createdAt |
timestamp |
Date de création. |
updatedAt |
timestamp |
Date de dernière mise à jour. |
Invariants :
- Une équipe a forcément un coordo (
coordo_user_idobligatoire). - Un coordo ne dirige qu'une seule équipe.
- Un admin ne peut être coordo que s'il dirige une équipe (flag
options.options.coordo+ ligneequipe). - Un admin n'appartient qu'à une seule équipe (
administrator.equipe_id). - L'appartenance (
equipe_id) n'est écrite que par le CRUD équipe, pas par la fiche admin. - Au moins un CD de l'équipe (hors coordo) doit rester
disponiblepour de nouveaux binômes instantanés. - Le DTO liste (
membersCount) compte les CDs hors coordo dont le profil n'est pasadmin_deleted. Le tableaumembersconserve aussi les CDs supprimés.
Relations :
coordo: OneToOne →User(FKcoordo_user_id)
AdminReservation
Table : adminReservation
Description : Réservation d'un jeune et/ou d'un bénévole par un administrateur, avec suppression logique (soft delete).
| Champ | Type | Description |
|---|---|---|
id |
bigint |
Identifiant primaire. |
reservationDate |
timestamp |
Date de la réservation. |
deletedAt |
timestamp (nullable) |
Date de suppression logique. |
benevoleId |
varchar (nullable) |
Référence vers le bénévole réservé. |
jeuneId |
varchar (nullable) |
Référence vers le jeune réservé. |
adminId |
varchar |
Référence vers l'administrateur ayant fait la réservation. |
Relations :
benevole: ManyToOne →Benevole(FKbenevole_id)jeune: ManyToOne →Jeune(FKjeune_id)admin: ManyToOne →User(FKadmin_id)
RegionAdmin
Table : regionadmin
Description : Association entre un administrateur et une région géographique dont il a la charge.
| Champ | Type | Description |
|---|---|---|
id |
bigint |
Identifiant primaire. |
region |
varchar(255) (nullable) |
Nom de la région. |
userId |
varchar |
Référence vers l'administrateur associé. |
Relations :
user: ManyToOne →User(FKuser_id)
PosteBenevole
Table : postebenevole
Description : Poste professionnel occupé (ou occupé précédemment) par un bénévole.
| Champ | Type | Description |
|---|---|---|
id |
bigint |
Identifiant primaire. |
secteur |
varchar(255) (nullable) |
Secteur d'activité du poste. |
secteurAutre |
varchar(255) (nullable) |
Secteur d'activité "autre" saisi librement. |
poste |
varchar(255) (nullable) |
Intitulé du poste. |
entreprise |
varchar(255) (nullable) |
Entreprise associée au poste. |
infosEp |
varchar(2000) (nullable) |
Informations "extrait précision" (visible admin uniquement). |
benevoleId |
varchar |
Référence vers le bénévole occupant le poste. |
current |
boolean (nullable) |
Poste actuellement occupé. |
dateDebut |
date (nullable) |
Date de début du poste. |
dateFin |
date (nullable) |
Date de fin du poste. |
Relations :
benevole: ManyToOne →Benevole(FKbenevole_id)
CursusBenevole
Table : cursusbenevole
Description : Cursus scolaire ou académique suivi (ou suivi précédemment) par un bénévole.
| Champ | Type | Description |
|---|---|---|
id |
bigint |
Identifiant primaire. |
filiere |
varchar(255) (nullable) |
Filière du cursus. |
filiereAutre |
varchar(255) (nullable) |
Filière "autre" saisie librement. |
cursus |
varchar(255) (nullable) |
Nom du cursus. |
cursusAutre |
varchar(255) (nullable) |
Cursus "autre" saisi librement. |
niveau |
varchar(255) (nullable) |
Niveau d'études. |
diplome |
varchar(255) (nullable) |
Diplôme obtenu ou visé. |
annee |
integer (nullable) |
Année du cursus. |
etablissement |
varchar(255) (nullable) |
Établissement fréquenté. |
benevoleId |
varchar |
Référence vers le bénévole associé au cursus. |
Relations :
benevole: ManyToOne →Benevole(FKbenevole_id)
Companies
Table : companies
Description : Entreprise partenaire, synchronisée avec Salesforce, utilisée pour rattacher des bénévoles ou des données à une organisation.
| Champ | Type | Description |
|---|---|---|
id |
bigint |
Identifiant primaire. |
name |
varchar(255) |
Nom de l'entreprise. |
idSalesforce |
varchar(255) (nullable) |
Identifiant Salesforce de l'entreprise (unique). |
etiquette |
varchar(255) (nullable) |
Étiquette/label associée à l'entreprise. |
lastModifiedDate |
varchar(255) |
Date de dernière modification (issue de Salesforce). |
alias |
json (nullable) |
Liste des noms alternatifs de l'entreprise. |
Partner
Table : partner
Description : Partenaire externe de la plateforme, identifié par son email, avec des options de configuration libres.
| Champ | Type | Description |
|---|---|---|
id |
varchar |
Identifiant primaire. |
creationDate |
timestamp (nullable) |
Date de création du partenaire. |
mail |
varchar(255) (nullable) |
Email du partenaire (unique). |
options |
json (nullable) |
Options de configuration du partenaire. |
name |
varchar(255) (nullable) |
Nom du partenaire. |