Spaces:
Sleeping
Sleeping
| 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 | |
| name String | |
| email String | |
| 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 | |
| accountStatus VerificationStatus | |
| // Relations | |
| payment Payment? | |
| discountClaim DiscountClaim? | |
| createdAt DateTime | |
| } | |
| model Payment { | |
| id String | |
| userId String | |
| user User | |
| amount Int // 399 or 199 | |
| upiReference String | |
| screenshotUrl String // Cloudinary URL | |
| createdAt DateTime | |
| } | |
| model DiscountClaim { | |
| id String | |
| userId String | |
| user User | |
| platform String // 'Instagram' or 'LinkedIn' | |
| postedAt DateTime // Date and time they claim to have posted | |
| screenshotUrl String // Cloudinary URL | |
| } | |
| model WorkshopClass { | |
| id Int | |
| dayNumber Int // 1 through 6 | |
| title String | |
| meetingLink String? // Admin can update this later | |
| date DateTime? // Scheduled date of the class | |
| } |