doll active state

This commit is contained in:
2025-12-21 02:07:48 +08:00
parent 5bed1fc92e
commit cd71e97655
10 changed files with 310 additions and 5 deletions

View File

@@ -0,0 +1,5 @@
-- AlterTable
ALTER TABLE "users" ADD COLUMN "active_doll_id" TEXT;
-- AddForeignKey
ALTER TABLE "users" ADD CONSTRAINT "users_active_doll_id_fkey" FOREIGN KEY ("active_doll_id") REFERENCES "dolls"("id") ON DELETE SET NULL ON UPDATE CASCADE;

View File

@@ -42,6 +42,10 @@ model User {
/// Timestamp of last login
lastLoginAt DateTime? @map("last_login_at")
// The ID of the currently active doll for the user
activeDollId String? @map("active_doll_id")
activeDoll Doll? @relation("ActiveDoll", fields: [activeDollId], references: [id])
sentFriendRequests FriendRequest[] @relation("SentFriendRequests")
receivedFriendRequests FriendRequest[] @relation("ReceivedFriendRequests")
userFriendships Friendship[] @relation("UserFriendships")
@@ -90,6 +94,9 @@ model Doll {
user User @relation(fields: [userId], references: [id], onDelete: Cascade)
// Reverse relation for the active doll
activeForUser User[] @relation("ActiveDoll")
@@map("dolls")
}