feature: users with treatment edit permission should now have working hours defined. the appointment grid is now being drawn based on the doctor's working hours.

This commit is contained in:
2026-06-10 19:44:09 +03:30
parent 468572a50f
commit 48ecfd05e1
22 changed files with 1571 additions and 116 deletions

View File

@@ -217,6 +217,7 @@ model Membership {
permissions MembershipPermission[]
invitations StaffInvitation[]
workingHoursSchedule StaffWorkingHoursSchedule?
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
@@ -225,6 +226,34 @@ model Membership {
@@map("memberships")
}
model StaffWorkingHoursSchedule {
id String @id @default(uuid())
membershipId String @unique
autoRepeatWeekly Boolean @default(true)
membership Membership @relation(fields: [membershipId], references: [id], onDelete: Cascade)
blocks StaffWorkingHoursBlock[]
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
@@map("staff_working_hours_schedules")
}
model StaffWorkingHoursBlock {
id String @id @default(uuid())
scheduleId String
dayOfWeek Int
startMinute Int
endMinute Int
sortOrder Int @default(0)
schedule StaffWorkingHoursSchedule @relation(fields: [scheduleId], references: [id], onDelete: Cascade)
@@index([scheduleId, dayOfWeek, sortOrder])
@@map("staff_working_hours_blocks")
}
model StaffInvitation {
id String @id @default(uuid())