feat(roster): implement class roster management and submission validation

This commit is contained in:
gameloader
2025-11-18 09:12:04 +08:00
parent 3c80510e9c
commit 35b4d7470f
19 changed files with 583 additions and 34 deletions

View File

@ -1,5 +1,6 @@
generator client {
provider = "prisma-client-js"
output = "../src/generated/prisma"
}
datasource db {
@ -29,6 +30,7 @@ model Class {
teacherId String
course Course @relation(fields: [courseId], references: [id], onDelete: Cascade)
assignments Assignment[]
students ClassStudent[]
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
@ -73,3 +75,15 @@ model Submission {
@@unique([assignmentId, studentId])
}
model ClassStudent {
id Int @id @default(autoincrement())
classroomId Int
studentId String
studentName String
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
classroom Class @relation(fields: [classroomId], references: [id], onDelete: Cascade)
@@unique([classroomId, studentId])
}