Checkpoint: Correction des erreurs de colonnes manquantes dans les tables :

- Modification du schéma apprenants : codeEtablissement et fonction en VARCHAR nullable (au lieu de NOT NULL et ENUM)
- Suppression de la colonne isActive qui n'existe pas dans la base de données
- Modification du schéma sequences : ajout des statuts "bloquee" et "terminee" dans l'ENUM
- Suppression de la colonne dateBloquage qui n'existe pas dans la base de données
- Le dashboard admin fonctionne maintenant correctement sans erreurs de requêtes SQL
This commit is contained in:
Manus
2026-01-12 06:20:29 -05:00
parent 393265987b
commit a969e8e870
11 changed files with 427 additions and 6 deletions

View File

@@ -74,8 +74,7 @@ export const sequences = mysqlTable("sequences", {
nom: varchar("nom", { length: 255 }).notNull(),
lieu: varchar("lieu", { length: 255 }).notNull(),
capaciteMax: int("capaciteMax").notNull(),
dateBloquage: datetime("dateBloquage"),
statut: mysqlEnum("statut", ["ouverte", "fermee", "annulee"]).default("ouverte").notNull(),
statut: mysqlEnum("statut", ["ouverte", "bloquee", "terminee", "fermee", "annulee"]).default("ouverte").notNull(),
/** Public cible de la séquence (Directeur, Chef de service, Autre, Tous) */
publicCible: mysqlEnum("publicCible", ["directeur", "chef_service", "autre", "tous"]).default("tous").notNull(),
/** ID du formateur assigné à cette séquence */
@@ -114,11 +113,9 @@ export const apprenants = mysqlTable("apprenants", {
nom: varchar("nom", { length: 255 }).notNull(),
prenom: varchar("prenom", { length: 255 }).notNull(),
email: varchar("email", { length: 320 }).notNull().unique(),
codeEtablissement: varchar("codeEtablissement", { length: 50 }).notNull(),
codeEtablissement: varchar("codeEtablissement", { length: 50 }),
/** Fonction de l'apprenant (Directeur, Chef de service, Autre) */
fonction: mysqlEnum("fonction", ["directeur", "chef_service", "autre"]).default("autre").notNull(),
/** Statut du compte (actif/inactif) */
isActive: boolean("isActive").default(true).notNull(),
fonction: varchar("fonction", { length: 100 }),
createdAt: timestamp("createdAt").defaultNow().notNull(),
updatedAt: timestamp("updatedAt").defaultNow().onUpdateNow().notNull(),
});