Compare commits
6 Commits
2a5098a89c
...
03acd7be29
| Author | SHA1 | Date | |
|---|---|---|---|
| 03acd7be29 | |||
| 183642805d | |||
| 72a33377eb | |||
| 9d6857f08c | |||
| b43210fca6 | |||
| f35e38b1fe |
@ -73,6 +73,18 @@ enum status_submission {
|
|||||||
rejected
|
rejected
|
||||||
}
|
}
|
||||||
|
|
||||||
|
enum like_type {
|
||||||
|
like
|
||||||
|
dislike
|
||||||
|
}
|
||||||
|
|
||||||
|
enum audit_action {
|
||||||
|
delete
|
||||||
|
restore
|
||||||
|
edit
|
||||||
|
flag
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -113,6 +125,17 @@ model User {
|
|||||||
reviewed_media MediaSubmission[] @relation("MediaSubmissionReviewer")
|
reviewed_media MediaSubmission[] @relation("MediaSubmissionReviewer")
|
||||||
updated_media Media[] @relation("MediaUpdater")
|
updated_media Media[] @relation("MediaUpdater")
|
||||||
deleted_media Media[] @relation("MediaDeleter")
|
deleted_media Media[] @relation("MediaDeleter")
|
||||||
|
created_episodes Episode[]
|
||||||
|
submitted_videos VideoSubmission[] @relation("VideoSubmissionSubmitter")
|
||||||
|
reviewed_videos VideoSubmission[] @relation("VideoSubmissionReviewer")
|
||||||
|
submitted_video_services VideoServiceSubmission[] @relation("VideoServiceSubmissionSubmitter")
|
||||||
|
reviewed_video_services VideoServiceSubmission[] @relation("VideoServiceSubmissionReviewer")
|
||||||
|
comments Comment[]
|
||||||
|
comment_likes CommentLike[]
|
||||||
|
comment_audit_logs CommentAuditLog[]
|
||||||
|
comment_reports CommentReport[]
|
||||||
|
@@index([email])
|
||||||
|
@@index([username])
|
||||||
@@map("users")
|
@@map("users")
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -534,6 +557,157 @@ model Staff {
|
|||||||
@@map("staff")
|
@@map("staff")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
model Episode {
|
||||||
|
id String @id @db.Uuid @default(uuid(7))
|
||||||
|
media_id String @db.Uuid
|
||||||
|
episode Int @db.SmallInt
|
||||||
|
mal_url String? @db.VarChar(255)
|
||||||
|
forum_url String? @db.VarChar(255)
|
||||||
|
title String @db.VarChar(155)
|
||||||
|
title_origin String? @db.VarChar(155)
|
||||||
|
title_romanji String? @db.VarChar(155)
|
||||||
|
aired_at DateTime? @db.Date
|
||||||
|
filler Boolean
|
||||||
|
recap Boolean
|
||||||
|
total_score Int @default(0)
|
||||||
|
score_count Int @default(0)
|
||||||
|
deleted_at DateTime? @db.Timestamptz()
|
||||||
|
updated_at DateTime @updatedAt @db.Timestamptz()
|
||||||
|
created_at DateTime @default(now()) @db.Timestamptz()
|
||||||
|
created_by User @relation(fields: [created_by_id], references: [id])
|
||||||
|
|
||||||
|
videos Video[]
|
||||||
|
created_by_id String @db.Uuid
|
||||||
|
comments Comment[]
|
||||||
|
@@index([media_id, episode])
|
||||||
|
@@map("episodes")
|
||||||
|
}
|
||||||
|
|
||||||
|
model Video {
|
||||||
|
id String @id @db.Uuid @default(uuid(7))
|
||||||
|
service VideoService[]
|
||||||
|
Episode Episode @relation(fields: [episode_id], references: [id])
|
||||||
|
video_code String @db.VarChar(255)
|
||||||
|
short_code String? @db.VarChar(255)
|
||||||
|
thumbnail_code String? @db.VarChar(255)
|
||||||
|
download_code String? @db.VarChar(255)
|
||||||
|
created_at DateTime @default(now()) @db.Timestamptz()
|
||||||
|
deleted_at DateTime? @db.Timestamptz()
|
||||||
|
updated_at DateTime @updatedAt @db.Timestamptz()
|
||||||
|
|
||||||
|
episode_id String @db.Uuid
|
||||||
|
created_by_id String @db.Uuid
|
||||||
|
video_submission VideoSubmission?
|
||||||
|
@@map("videos")
|
||||||
|
}
|
||||||
|
|
||||||
|
model VideoSubmission {
|
||||||
|
video_id String @id @db.Uuid
|
||||||
|
created_by User @relation(fields: [created_by_id], references: [id], name: "VideoSubmissionSubmitter")
|
||||||
|
reviewer User? @relation(fields: [reviewer_id], references: [id], name: "VideoSubmissionReviewer")
|
||||||
|
status status_submission @default(pending)
|
||||||
|
reviewed_at DateTime? @db.Timestamptz()
|
||||||
|
reason String? @db.Text
|
||||||
|
created_at DateTime @default(now()) @db.Timestamptz()
|
||||||
|
|
||||||
|
created_by_id String @db.Uuid
|
||||||
|
reviewer_id String? @db.Uuid
|
||||||
|
video Video @relation(fields: [video_id], references: [id])
|
||||||
|
@@map("video_submissions")
|
||||||
|
}
|
||||||
|
|
||||||
|
model VideoService {
|
||||||
|
id String @id @db.Uuid @default(uuid(7))
|
||||||
|
name String @db.VarChar(155)
|
||||||
|
resolution Int @db.SmallInt
|
||||||
|
domain String @db.VarChar(255)
|
||||||
|
image_url String? @db.VarChar(255)
|
||||||
|
hex_color String? @db.VarChar(10)
|
||||||
|
endpoint_video String @db.VarChar(255)
|
||||||
|
endpoint_short String? @db.VarChar(255)
|
||||||
|
endpoint_image String? @db.VarChar(255)
|
||||||
|
endpoint_download String? @db.VarChar(255)
|
||||||
|
deleted_at DateTime? @db.Timestamptz()
|
||||||
|
updated_at DateTime @updatedAt @db.Timestamptz()
|
||||||
|
created_at DateTime @default(now()) @db.Timestamptz()
|
||||||
|
|
||||||
|
videos Video[]
|
||||||
|
video_service_submissions VideoServiceSubmission?
|
||||||
|
@@unique([name, resolution])
|
||||||
|
@@map("video_services")
|
||||||
|
}
|
||||||
|
|
||||||
|
model VideoServiceSubmission {
|
||||||
|
video_service_id String @id @db.Uuid
|
||||||
|
created_by User @relation(fields: [created_by_id], references: [id], name: "VideoServiceSubmissionSubmitter")
|
||||||
|
status status_submission @default(pending)
|
||||||
|
reviewer User? @relation(fields: [reviewer_id], references: [id], name: "VideoServiceSubmissionReviewer")
|
||||||
|
reviewed_at DateTime? @db.Timestamptz()
|
||||||
|
reason String? @db.Text
|
||||||
|
created_at DateTime @default(now()) @db.Timestamptz()
|
||||||
|
|
||||||
|
video_service VideoService @relation(fields: [video_service_id], references: [id])
|
||||||
|
created_by_id String @db.Uuid
|
||||||
|
reviewer_id String? @db.Uuid
|
||||||
|
@@map("video_service_submissions")
|
||||||
|
}
|
||||||
|
|
||||||
|
model Comment {
|
||||||
|
id String @id @db.Uuid @default(uuid(7))
|
||||||
|
user User @relation(fields: [user_id], references: [id])
|
||||||
|
episode Episode @relation(fields: [episode_id], references: [id])
|
||||||
|
content String @db.Text
|
||||||
|
created_at DateTime @default(now()) @db.Timestamptz()
|
||||||
|
updated_at DateTime @updatedAt @db.Timestamptz()
|
||||||
|
deleted_at DateTime? @db.Timestamptz()
|
||||||
|
|
||||||
|
user_id String @db.Uuid
|
||||||
|
episode_id String @db.Uuid
|
||||||
|
likes CommentLike[]
|
||||||
|
audit_logs CommentAuditLog[]
|
||||||
|
reports CommentReport[]
|
||||||
|
@@map("comments")
|
||||||
|
}
|
||||||
|
|
||||||
|
model CommentLike {
|
||||||
|
user_id String @db.Uuid
|
||||||
|
comment_id String @db.Uuid
|
||||||
|
type like_type
|
||||||
|
created_at DateTime @default(now()) @db.Timestamptz()
|
||||||
|
|
||||||
|
user User @relation(fields: [user_id], references: [id])
|
||||||
|
comment Comment @relation(fields: [comment_id], references: [id])
|
||||||
|
@@id([user_id, comment_id])
|
||||||
|
@@map("comment_likes")
|
||||||
|
}
|
||||||
|
|
||||||
|
model CommentAuditLog {
|
||||||
|
id String @id @db.Uuid @default(uuid(7))
|
||||||
|
comment Comment @relation(fields: [comment_id], references: [id])
|
||||||
|
performed_by User @relation(fields: [performed_by_id], references: [id])
|
||||||
|
action audit_action
|
||||||
|
created_at DateTime @default(now()) @db.Timestamptz()
|
||||||
|
|
||||||
|
comment_id String @db.Uuid
|
||||||
|
performed_by_id String @db.Uuid
|
||||||
|
@@map("comment_audit_logs")
|
||||||
|
}
|
||||||
|
|
||||||
|
model CommentReport {
|
||||||
|
id String @id @db.Uuid @default(uuid(7))
|
||||||
|
reporter User @relation(fields: [reporter_id], references: [id])
|
||||||
|
comment Comment @relation(fields: [comment_id], references: [id])
|
||||||
|
title String @db.VarChar(115)
|
||||||
|
status status_submission
|
||||||
|
description String? @db.Text
|
||||||
|
reported_at DateTime @default(now()) @db.Timestamptz()
|
||||||
|
closed_at DateTime? @db.Timestamptz()
|
||||||
|
|
||||||
|
reporter_id String @db.Uuid
|
||||||
|
comment_id String @db.Uuid
|
||||||
|
@@map("comment_reports")
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
Reference in New Issue
Block a user