import { PrismaClient } from "@prisma/client"; const prisma = new PrismaClient(); async function main() { console.log("🌱 Seeding database..."); // Create test venues const venues = [ { name: "Štadión Lokomotíva", description: "Moderný futbalový štadión s umelým povrchom", address: "Rastislavova 23", city: "Košice", latitude: 48.7164, longitude: 21.2611, sportTypes: ["FOOTBALL", "RUNNING"], amenities: ["parking", "showers", "lockers"], priceRange: "10-15€/hod", phone: "+421 55 123 4567", }, { name: "Steel Aréna", description: "Multifunkčná športová hala", address: "Moldavská cesta 10", city: "Košice", latitude: 48.6975, longitude: 21.2422, sportTypes: ["BASKETBALL", "VOLLEYBALL", "BADMINTON"], amenities: ["parking", "showers", "lockers", "cafe"], priceRange: "15-20€/hod", phone: "+421 55 234 5678", }, { name: "Tenisové kurty Anička", description: "Vonkajšie a kryte tenisové kurty", address: "Anička 12", city: "Košice", latitude: 48.7372, longitude: 21.2599, sportTypes: ["TENNIS"], amenities: ["parking", "showers"], priceRange: "12-18€/hod", phone: "+421 55 345 6789", }, { name: "FitClub Gym", description: "Moderná posilňovňa s najnovším vybavením", address: "Hlavná 45", city: "Košice", latitude: 48.7214, longitude: 21.2581, sportTypes: ["GYM"], amenities: ["showers", "lockers", "sauna"], priceRange: "5-10€/vstup", phone: "+421 55 456 7890", }, { name: "Plavecká hala Košice", description: "50m bazén s tribunou", address: "Trieda SNP 30", city: "Košice", latitude: 48.7098, longitude: 21.2451, sportTypes: ["SWIMMING"], amenities: ["parking", "showers", "lockers", "cafe"], priceRange: "3-5€/vstup", phone: "+421 55 567 8901", }, ]; for (const venue of venues) { const existing = await prisma.venue.findFirst({ where: { name: venue.name }, }); if (!existing) { const created = await prisma.venue.create({ data: venue as any, }); console.log(`✓ Created venue: ${created.name}`); } else { console.log(`⊘ Skipped existing venue: ${venue.name}`); } } console.log("✅ Seeding completed!"); } main() .catch((e) => { console.error("❌ Seeding failed:", e); process.exit(1); }) .finally(async () => { await prisma.$disconnect(); });