4
0

custom-fields.prisma 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. model CustomFieldDefinition {
  2. id String @id @default(cuid())
  3. name String
  4. label String
  5. fieldType String @default("text")
  6. options String?
  7. defaultValue String?
  8. required Boolean @default(false)
  9. entityType String
  10. sortOrder Int @default(0)
  11. isActive Boolean @default(true)
  12. createdAt DateTime @default(now())
  13. updatedAt DateTime @updatedAt
  14. userId String
  15. user User @relation(fields: [userId], references: [id], onDelete: Cascade)
  16. organizationId String?
  17. organization Organization? @relation(fields: [organizationId], references: [id], onDelete: Cascade)
  18. values CustomFieldValue[]
  19. @@unique([organizationId, name, entityType])
  20. @@index([organizationId])
  21. @@map("custom_field_definitions")
  22. }
  23. model CustomFieldValue {
  24. id String @id @default(cuid())
  25. value String
  26. entityId String
  27. entityType String
  28. fieldId String
  29. field CustomFieldDefinition @relation(fields: [fieldId], references: [id], onDelete: Cascade)
  30. @@unique([fieldId, entityId])
  31. @@index([fieldId])
  32. @@map("custom_field_values")
  33. }