Selection of multiple officials and role sub-categories

This commit is contained in:
2026-10-03 13:16:13 +03:30
parent 9f97371391
commit 3b128bd980
14 changed files with 904 additions and 95 deletions
+9
View File
@@ -246,6 +246,7 @@ model User {
ownedCompanies Company[] @relation("CompanyOwner")
ownedProjectCards ProjectCard[] @relation("ProjectCardOwner")
activities Activity[] @relation("ActivityAssignee")
assignedActivities Activity[] @relation("ActivityAssignees")
createdActivities Activity[] @relation("ActivityCreator")
notes Note[] @relation("NoteAuthor")
noteRevisions NoteRevision[] @relation("NoteRevisionEditor")
@@ -288,6 +289,10 @@ model OrgRole {
permissions String[] @default([])
/// owner | admin | sales | support — نقش‌های سیستمی قابل حذف نیستند
systemKey String?
/// نقش والد برای سلسله‌مراتب زیرنقش‌ها
parentId String?
parent OrgRole? @relation("OrgRoleTree", fields: [parentId], references: [id], onDelete: Restrict)
children OrgRole[] @relation("OrgRoleTree")
users User[]
memberships Membership[]
createdAt DateTime @default(now())
@@ -295,6 +300,8 @@ model OrgRole {
@@unique([organizationId, name])
@@index([organizationId])
@@index([parentId])
@@index([organizationId, parentId])
}
model Membership {
@@ -579,6 +586,8 @@ model Activity {
deal Deal? @relation(fields: [dealId], references: [id], onDelete: SetNull)
assigneeId String?
assignee User? @relation("ActivityAssignee", fields: [assigneeId], references: [id], onDelete: SetNull)
/// مسئولان مشترک (علاوه بر assigneeId به‌عنوان مسئول اصلی)
assignees User[] @relation("ActivityAssignees")
createdById String?
createdBy User? @relation("ActivityCreator", fields: [createdById], references: [id], onDelete: SetNull)
notes Note[]