Enhance event model and management: Add new fields for room, time, and maxPlaces to the Event model in Prisma schema. Update API routes and UI components to support these fields, improving event details and user interaction in event management and registration processes.

This commit is contained in:
Julien Froidefond
2025-12-10 05:27:35 +01:00
parent fb5c8c1466
commit fdd860c456
13 changed files with 564 additions and 22 deletions

View File

@@ -148,7 +148,7 @@ async function main() {
// Créer des événements (vérifier s'ils existent déjà)
const eventData = [
{
date: "18 NOVEMBRE 2023",
date: "2023-11-18",
name: "Sommet de l'Innovation Tech",
description:
"Rejoignez les leaders de l'industrie et les innovateurs pour une journée de discussions sur les technologies de pointe, les percées de l'IA et des opportunités de networking.",
@@ -156,7 +156,7 @@ async function main() {
status: EventStatus.PAST,
},
{
date: "3 DÉCEMBRE 2023",
date: "2023-12-03",
name: "Lancement de la Révolution IA",
description:
"Assistez au lancement de systèmes d'IA révolutionnaires qui vont remodeler le paysage du gaming. Aperçus exclusifs et opportunités d'accès anticipé.",
@@ -164,7 +164,7 @@ async function main() {
status: EventStatus.PAST,
},
{
date: "22 DÉCEMBRE 2023",
date: "2023-12-22",
name: "Festival du Code d'Hiver",
description:
"Une célébration de l'excellence en programmation avec des hackathons, des défis de codage et des prix. Montrez vos compétences et rivalisez avec les meilleurs développeurs.",
@@ -172,7 +172,7 @@ async function main() {
status: EventStatus.PAST,
},
{
date: "15 JANVIER 2024",
date: "2024-01-15",
name: "Expo Informatique Quantique",
description:
"Explorez l'avenir de l'informatique quantique dans le gaming. Démonstrations interactives, conférences d'experts et ateliers pratiques pour tous les niveaux.",
@@ -180,7 +180,7 @@ async function main() {
status: EventStatus.UPCOMING,
},
{
date: "8 FÉVRIER 2024",
date: "2024-02-08",
name: "Championnat Cyber Arena",
description:
"L'événement de gaming compétitif ultime. Compétissez pour la gloire, des récompenses exclusives et le titre de Champion Cyber Arena. Inscriptions ouvertes.",
@@ -188,13 +188,24 @@ async function main() {
status: EventStatus.UPCOMING,
},
{
date: "12 MARS 2024",
date: "2024-03-12",
name: "Gala Tech du Printemps",
description:
"Une soirée élégante célébrant les réalisations technologiques. Cérémonie de remise de prix, networking et annonces exclusives des plus grandes entreprises tech.",
type: EventType.FESTIVAL,
status: EventStatus.UPCOMING,
},
{
date: "2024-12-15",
name: "Builder pattern : construction et refactoring",
description:
"Lors de cet atelier, nous utiliserons le design pattern Builder pour structurer pas à pas la création d'objets complexes… sans transformer notre code en film digne de Red Is Dead.\n\nVous découvrirez comment ce pattern permet de découpler proprement la logique de construction, d'améliorer la lisibilité et de faciliter l'évolution du code — notamment lors de phases de refactoring où les responsabilités se mélangent plus vite que la foule au Palais des Festivals.\n\nL'objectif : poser les fondations pour introduire un vrai modèle, sans rien casser du comportement existant.\n\nQue vous souhaitiez renforcer vos compétences en conception, préparer votre prochain refactoring, ou simplement coder avec plus de style que Serge Karamazov dansant la carioca, venez construire avec nous.",
type: EventType.CODE_KATA,
status: EventStatus.UPCOMING,
room: "Nautilus",
time: "11h-12h",
maxPlaces: 25,
},
];
const events = await Promise.all(
@@ -202,7 +213,12 @@ async function main() {
const existing = await prisma.event.findFirst({
where: { name: data.name },
});
if (existing) return existing;
if (existing) {
return prisma.event.update({
where: { id: existing.id },
data,
});
}
return prisma.event.create({ data });
})
);