feat(DailyCheckbox): associate checkboxes with users and enhance daily view functionality

- Added userId field to DailyCheckbox model for user association.
- Updated DailyService methods to handle user-specific checkbox retrieval and management.
- Integrated user authentication checks in API routes and actions for secure access to daily data.
- Enhanced DailyPage to display user-specific daily views, ensuring proper session handling.
- Updated client and service interfaces to reflect changes in data structure.
This commit is contained in:
Julien Froidefond
2025-10-10 08:54:52 +02:00
parent 6748799a90
commit 6bfcd1f100
9 changed files with 142 additions and 36 deletions

View File

@@ -8,20 +8,21 @@ datasource db {
}
model User {
id String @id @default(cuid())
email String @unique
name String?
firstName String?
lastName String?
avatar String? // URL de l'avatar
role String @default("user") // user, admin, etc.
isActive Boolean @default(true)
lastLoginAt DateTime?
password String // Hashé avec bcrypt
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
preferences UserPreferences?
notes Note[]
id String @id @default(cuid())
email String @unique
name String?
firstName String?
lastName String?
avatar String? // URL de l'avatar
role String @default("user") // user, admin, etc.
isActive Boolean @default(true)
lastLoginAt DateTime?
password String // Hashé avec bcrypt
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
preferences UserPreferences?
notes Note[]
dailyCheckboxes DailyCheckbox[]
@@map("users")
}
@@ -98,11 +99,14 @@ model DailyCheckbox {
type String @default("task")
order Int @default(0)
taskId String?
userId String
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
task Task? @relation(fields: [taskId], references: [id])
user User @relation(fields: [userId], references: [id], onDelete: Cascade)
@@index([date])
@@index([userId])
@@map("daily_checkboxes")
}