Journaux d'historique (une ligne par changement) pour les entités du module binomes : statut, état, sandbox, mails, prise de contact, score, etc. Toutes ces tables sont écrites en append-only, jamais mises à jour.

LogStatut

Table : log-statut Description : Historique des changements de statut d'un jeune, binôme ou bénévole.

Champ Type Description
id bigint (PK, auto-généré) Identifiant unique de l'entrée de log
statut varchar Statut enregistré
dateUpdate timestamp (nullable) Date de la mise à jour du statut
origin varchar (nullable) Origine de la modification
jeuneId bigint (nullable) Référence au jeune concerné
benevoleId bigint (nullable) Référence au bénévole concerné
binomeId bigint (nullable) Référence au binôme concerné

Relations :

  • jeune : ManyToOne → Jeune (FK jeune_id)
  • benevole : ManyToOne → Benevole (FK benevole_id)
  • binome : ManyToOne → Binome (FK binome_id)

LogState

Table : log-state Description : Historique des changements d'état (state) d'un binôme, avec suivi de rappel à 48h et d'appel mensuel effectué.

Champ Type Description
id bigint (PK, auto-généré) Identifiant unique de l'entrée de log
dateUpdate timestamp (nullable) Date de la mise à jour de l'état
state varchar (nullable) État enregistré
twoDaysReminder timestamp (nullable) Date du rappel à 48h
callMonthDone boolean (défaut: false) Indique si l'appel mensuel a été effectué
origin varchar (nullable) Origine de la modification
originUserId varchar (nullable) Référence à l'utilisateur à l'origine de la modification
binomeId bigint (nullable) Référence au binôme concerné
jeuneId bigint (nullable) Référence au jeune concerné
benevoleId bigint (nullable) Référence au bénévole concerné

Relations :

  • originUser : ManyToOne → User (FK origin_user_id)
  • binome : ManyToOne → Binome (FK binome_id)
  • jeune : ManyToOne → Jeune (FK jeune_id)
  • benevole : ManyToOne → Benevole (FK benevole_id)

LogMail

Table : log-mail Description : Historique des e-mails envoyés (sujet, message, destinataire) liés à un jeune, un bénévole, un binôme ou un utilisateur.

Champ Type Description
id bigint (PK, auto-généré) Identifiant unique de l'entrée de log
slug varchar Identifiant/slug du modèle de mail envoyé
destinataire varchar Adresse ou identifiant du destinataire
dateEnvoi timestamp (nullable) Date d'envoi du mail
subject text (nullable) Sujet du mail
message text (nullable) Contenu du mail
jeuneId bigint (nullable) Référence au jeune concerné
userId bigint (nullable) Référence à l'utilisateur concerné
benevoleId bigint (nullable) Référence au bénévole concerné
binomeId bigint (nullable) Référence au binôme concerné

Relations :

  • jeune : ManyToOne → Jeune (FK jeune_id)
  • user : ManyToOne → User (FK user_id)
  • benevole : ManyToOne → Benevole (FK benevole_id)
  • binome : ManyToOne → Binome (FK binome_id)

LogNonDispo

Table : log-non-dispo Description : Historique des périodes d'indisponibilité déclarées par un jeune ou un bénévole.

Champ Type Description
id bigint (PK, auto-généré) Identifiant unique de l'entrée de log
raison varchar Raison de l'indisponibilité
dateUpdate timestamp Date de la mise à jour
nonDispoUntil timestamp Date de fin de l'indisponibilité
origin varchar (nullable) Origine de la modification
jeuneId bigint (nullable) Référence au jeune concerné
benevoleId bigint (nullable) Référence au bénévole concerné

Relations :

  • jeune : ManyToOne → Jeune (FK jeune_id)
  • benevole : ManyToOne → Benevole (FK benevole_id)

LogPriseContact

Table : log-prise-contact Description : Historique de la prise de contact effective entre les membres d'un binôme.

Champ Type Description
id bigint (PK, auto-généré) Identifiant unique de l'entrée de log
priseContact boolean Indique si la prise de contact a eu lieu
dateUpdate timestamp Date de la mise à jour
origin varchar (nullable) Origine de la modification (manual ou auto)
originDetail varchar(500) (nullable) Détail de l'origine, ex : "Réponse mentor J45: On est en contact"
binomeId bigint (nullable) Référence au binôme concerné
originUserId bigint (nullable) Référence à l'utilisateur à l'origine de la modification

Relations :

  • binome : ManyToOne → Binome (FK binome_id)
  • originUser : ManyToOne → User (FK origin_user_id)

LogProgramme

Table : log-programme Description : Historique du programme (et de l'orientation STEM) associé à un jeune.

Champ Type Description
id bigint (PK, auto-généré) Identifiant unique de l'entrée de log
programme varchar Nom du programme enregistré
stem boolean (nullable) Indique si le programme est orienté STEM
dateUpdate timestamp Date de la mise à jour
origin varchar (nullable) Origine de la modification
jeuneId bigint (nullable) Référence au jeune concerné

Relations :

  • jeune : ManyToOne → Jeune (FK jeune_id)

LogSandbox

Table : log-sandbox Description : Historique des changements de valeur "sandbox" liés à un jeune, un bénévole ou un binôme.

Champ Type Description
id bigint (PK, auto-généré) Identifiant unique de l'entrée de log
sandbox varchar Valeur sandbox enregistrée
dateUpdate timestamp Date de la mise à jour
origin varchar (nullable) Origine de la modification
jeuneId bigint (nullable) Référence au jeune concerné
benevoleId bigint (nullable) Référence au bénévole concerné
binomeId bigint (nullable) Référence au binôme concerné

Relations :

  • jeune : ManyToOne → Jeune (FK jeune_id)
  • benevole : ManyToOne → Benevole (FK benevole_id)
  • binome : ManyToOne → Binome (FK binome_id)

LogScoreJeune

Table : log-score-jeune Description : Historique du score attribué à un jeune, avec les raisons ayant conduit à ce score.

Champ Type Description
id bigint (PK, auto-généré) Identifiant unique de l'entrée de log
score bigint Score enregistré
dateUpdate timestamp Date de la mise à jour
origin varchar (nullable) Origine de la modification
reasons json (nullable) Liste des raisons ayant justifié le score
jeuneId bigint (nullable) Référence au jeune concerné

Relations :

  • jeune : ManyToOne → Jeune (FK jeune_id)

LogAdminAssocie

Table : log-admin-associe Description : Historique de l'association d'un administrateur à un binôme, jeune ou bénévole.

Champ Type Description
id bigint (PK, auto-généré) Identifiant unique de l'entrée de log
dateUpdate timestamp (nullable) Date de la mise à jour
origin varchar Origine de la modification
originUserId varchar (nullable) Référence à l'utilisateur à l'origine de la modification
adminAssocieId varchar (nullable) Référence à l'administrateur associé
binomeId bigint (nullable) Référence au binôme concerné
jeuneId bigint (nullable) Référence au jeune concerné
benevoleId bigint (nullable) Référence au bénévole concerné

Relations :

  • adminAssocie : ManyToOne → User (FK admin_associe_id)
  • binome : ManyToOne → Binome (FK binome_id)
  • jeune : ManyToOne → Jeune (FK jeune_id)
  • benevole : ManyToOne → Benevole (FK benevole_id)

LogUpdate

Table : log-update Description : Historique générique des mises à jour effectuées sur un jeune ou un bénévole, avec traçabilité de l'utilisateur à l'origine.

Champ Type Description
id bigint (PK, auto-généré) Identifiant unique de l'entrée de log
dateUpdate timestamp (nullable) Date de la mise à jour
origin varchar (nullable) Origine de la modification
originUserId varchar (nullable) Référence à l'utilisateur à l'origine de la modification
jeuneId bigint (nullable) Référence au jeune concerné
benevoleId bigint (nullable) Référence au bénévole concerné

Relations :

  • originUser : ManyToOne → User (FK origin_user_id)
  • jeune : ManyToOne → Jeune (FK jeune_id)
  • benevole : ManyToOne → Benevole (FK benevole_id)

LogUpdateAdmin

Table : log-update-admin Description : Historique des mises à jour effectuées sur un compte administrateur.

Champ Type Description
id bigint (PK, auto-généré) Identifiant unique de l'entrée de log
dateUpdate timestamp (nullable) Date de la mise à jour
origin varchar (nullable) Origine de la modification
originUserId varchar (nullable) Référence à l'utilisateur à l'origine de la modification
adminId bigint (nullable) Référence à l'administrateur concerné

Relations :

  • admin : ManyToOne → User (FK admin_id)

LogCible

Table : log-cible Description : Historique de la "cible" (public visé) associée à un bénévole.

Champ Type Description
id bigint (PK, auto-généré) Identifiant unique de l'entrée de log
cible varchar Valeur de la cible enregistrée
dateUpdate timestamp (nullable) Date de la mise à jour
origin varchar (nullable) Origine de la modification
benevoleId bigint (nullable) Référence au bénévole concerné

Relations :

  • benevole : ManyToOne → Benevole (FK benevole_id)