generator client { provider = "prisma-client-js" } datasource db { provider = "postgresql" url = env("DATABASE_URL") // This will be your Aiven Postgres URL } enum Role { USER ADMIN } enum VerificationStatus { PENDING APPROVED REJECTED } model User { id String @id @default(uuid()) name String email String @unique whatsappNumber String password String // Hashed password for dashboard login // Demographics isStudent Boolean college String? // Nullable if not a student course String? semester String? profession String? // Nullable if student // Verification & Status role Role @default(USER) accountStatus VerificationStatus @default(PENDING) // Relations payment Payment? discountClaim DiscountClaim? createdAt DateTime @default(now()) } model Payment { id String @id @default(uuid()) userId String @unique user User @relation(fields: [userId], references: [id]) amount Int // 399 or 199 upiReference String @unique screenshotUrl String // Cloudinary URL createdAt DateTime @default(now()) } model DiscountClaim { id String @id @default(uuid()) userId String @unique user User @relation(fields: [userId], references: [id]) platform String // 'Instagram' or 'LinkedIn' postedAt DateTime // Date and time they claim to have posted screenshotUrl String // Cloudinary URL } model WorkshopClass { id Int @id @default(autoincrement()) dayNumber Int @unique // 1 through 6 title String meetingLink String? // Admin can update this later date DateTime? // Scheduled date of the class }