@@ -8,27 +8,29 @@ datasource db {
8
8
}
9
9
10
10
model Aluno {
11
- id String @id @default (uuid () )
12
- name String
13
- email String @unique
14
- password String
15
- imagem String ?
16
- recoveryPass String ?
17
- token String ?
18
- banner String ?
19
- dataNascimento DateTime ?
20
- endereco String ?
21
- curriculo String ? @default (" " ) @db.VarChar (5000 )
22
- sobre String ?
23
- rm String ? @unique
24
- tentativasRestantes Int @default (5 )
25
- turmas AlunoTurma []
26
- cursosExtracurriculares Extracurricular []
27
- vinculosAluno Vinculo [] @relation (" AlunoVinculo " )
28
- vinculoComoAluno Vinculo [] @relation (" VinculoComAluno " )
29
- validated Boolean @default (false )
30
- createdAt DateTime @default (now () )
31
- updatedAt DateTime @updatedAt
11
+ id String @id @default (uuid () )
12
+ name String
13
+ email String @unique
14
+ password String
15
+ imagem String ?
16
+ recoveryPass String ?
17
+ token String ?
18
+ banner String ?
19
+ dataNascimento DateTime ?
20
+ endereco String ?
21
+ curriculo String ? @default (" " ) @db.VarChar (5000 )
22
+ sobre String ?
23
+ rm String ? @unique
24
+ tentativasRestantes Int @default (5 )
25
+ validated Boolean @default (false )
26
+ turmas AlunoTurma []
27
+ cursosExtracurriculares Extracurricular []
28
+ vinculosAluno Vinculo [] @relation (" AlunoVinculo " )
29
+ vinculoComoAluno Vinculo [] @relation (" VinculoComAluno " )
30
+ mensagensEnviadas Mensagem [] @relation (" MensagensEnviadasAluno " )
31
+ mensagensRecebidas Mensagem [] @relation (" MensagensRecebidasAluno " )
32
+ createdAt DateTime @default (now () )
33
+ updatedAt DateTime @updatedAt
32
34
33
35
@@map (" alunos " )
34
36
}
@@ -43,11 +45,13 @@ model Professor {
43
45
imagem String ?
44
46
banner String ?
45
47
validated Boolean @default (false )
46
- coordenador Coordenador []
47
- atividade Atividade []
48
48
tentativasRestantes Int @default (5 )
49
+ atividade Atividade []
50
+ coordenador Coordenador []
49
51
vinculosProfessor Vinculo [] @relation (" ProfessorVinculo " )
50
52
vinculoComoProfessor Vinculo [] @relation (" VinculoComProfessor " )
53
+ mensagensEnviadas Mensagem [] @relation (" MensagensEnviadasProfessor " )
54
+ mensagensRecebidas Mensagem [] @relation (" MensagensRecebidasProfessor " )
51
55
createdAt DateTime @default (now () )
52
56
updatedAt DateTime @updatedAt
53
57
@@ -73,13 +77,13 @@ model Vinculo {
73
77
}
74
78
75
79
model Admin {
76
- id String @id @default (uuid () )
77
- name String
78
- email String @unique
79
- password String
80
- imagem String ?
81
- createdAt DateTime @default (now () )
82
- updatedAt DateTime @updatedAt
80
+ id String @id @default (uuid () )
81
+ name String
82
+ email String @unique
83
+ password String
84
+ imagem String ?
85
+ createdAt DateTime @default (now () )
86
+ updatedAt DateTime @updatedAt
83
87
84
88
@@map (" admins " )
85
89
}
@@ -107,58 +111,60 @@ enum Turno {
107
111
}
108
112
109
113
model Turma {
110
- id String @id @default (uuid () )
114
+ id String @id @default (uuid () )
111
115
inicio String
112
116
fim String
113
- curso Curso @relation (fields : [cursoId ] , references : [id ] )
117
+ curso Curso @relation (fields : [cursoId ] , references : [id ] )
114
118
cursoId String
115
119
alunos AlunoTurma []
116
- createdAt DateTime @default (now () )
117
- updatedAt DateTime @updatedAt
120
+ createdAt DateTime @default (now () )
121
+ updatedAt DateTime @updatedAt
118
122
119
123
@@map (" turmas " )
120
124
}
121
125
122
126
model AlunoTurma {
123
- alunoId String @default (uuid () )
124
- turmaId String @default (uuid () )
125
- aluno Aluno @relation (fields : [alunoId ] , references : [id ] )
126
- turma Turma @relation (fields : [turmaId ] , references : [id ] )
127
+ alunoId String @default (uuid () )
128
+ turmaId String @default (uuid () )
129
+ aluno Aluno @relation (fields : [alunoId ] , references : [id ] )
130
+ turma Turma @relation (fields : [turmaId ] , references : [id ] )
127
131
128
132
@@id ([alunoId , turmaId ] )
129
133
@@map (" alunos_turmas " )
130
134
}
131
135
132
136
model Extracurricular {
133
- extracurricularId String @id @default (uuid () )
134
- alunoId String
135
- aluno Aluno @relation (fields : [alunoId ] , references : [id ] )
136
- instituicao String
137
- descricao String
138
- inicio DateTime
139
- fim DateTime
140
- createdAt DateTime @default (now () )
141
- updatedAt DateTime @updatedAt
142
-
137
+ extracurricularId String @id @default (uuid () )
138
+ alunoId String
139
+ aluno Aluno @relation (fields : [alunoId ] , references : [id ] )
140
+ instituicao String
141
+ descricao String
142
+ inicio DateTime
143
+ fim DateTime
144
+ createdAt DateTime @default (now () )
145
+ updatedAt DateTime @updatedAt
146
+
143
147
@@map (" extracurriculares " )
144
148
}
145
149
146
150
model Empresa {
147
- id String @id @default (uuid () )
151
+ id String @id @default (uuid () )
148
152
name String
149
- email String @unique
153
+ email String @unique
150
154
password String
151
- imagem String ?
152
- cnpj String @unique
155
+ imagem String ?
156
+ cnpj String @unique
153
157
endereco String ?
154
158
telefone String ?
155
159
token String ?
156
- patrocinador Boolean @default (false )
157
- validated Boolean @default (false )
160
+ patrocinador Boolean @default (false )
161
+ validated Boolean @default (false )
162
+ tentativasRestantes Int @default (5 )
158
163
vaga Vaga []
159
- tentativasRestantes Int @default (5 )
160
- createdAt DateTime @default (now () )
161
- updatedAt DateTime @updatedAt
164
+ mensagensEnviadas Mensagem [] @relation (" MensagensEnviadasEmpresa " )
165
+ mensagensRecebidas Mensagem [] @relation (" MensagensRecebidasEmpresa " )
166
+ createdAt DateTime @default (now () )
167
+ updatedAt DateTime @updatedAt
162
168
163
169
@@map (" empresas " )
164
170
}
@@ -197,18 +203,20 @@ model Coordenador {
197
203
}
198
204
199
205
model Funcionario {
200
- id String @id @default (uuid () )
206
+ id String @id @default (uuid () )
201
207
name String
202
- email String @unique
208
+ email String @unique
203
209
password String
204
210
recoveryPass String ?
205
- imagem String ?
211
+ imagem String ?
206
212
cargo Cargo
213
+ validated Boolean @default (false )
214
+ tentativasRestantes Int @default (5 )
207
215
vaga Vaga []
208
- validated Boolean @default ( false )
209
- tentativasRestantes Int @default ( 5 )
210
- createdAt DateTime @default (now () )
211
- updatedAt DateTime @updatedAt
216
+ mensagensEnviadas Mensagem [] @relation ( " MensagensEnviadasFuncionario " )
217
+ mensagensRecebidas Mensagem [] @relation ( " MensagensRecebidasFuncionario " )
218
+ createdAt DateTime @default (now () )
219
+ updatedAt DateTime @updatedAt
212
220
213
221
@@map (" funcionarios " )
214
222
}
@@ -221,14 +229,39 @@ enum Cargo {
221
229
}
222
230
223
231
model Atividade {
224
- id String @id @default (uuid () )
225
- title String
226
- descricao String @db.VarChar (1000 )
227
- professor Professor @relation (fields : [professorId ] , references : [id ] )
228
- professorId String
229
- imagem String ?
230
- createdAt DateTime @default (now () )
231
- updatedAt DateTime @updatedAt
232
+ id String @id @default (uuid () )
233
+ title String
234
+ descricao String @db.VarChar (1000 )
235
+ professor Professor @relation (fields : [professorId ] , references : [id ] )
236
+ professorId String
237
+ imagem String ?
238
+ createdAt DateTime @default (now () )
239
+ updatedAt DateTime @updatedAt
232
240
233
241
@@map (" atividades " )
234
242
}
243
+
244
+ model Mensagem {
245
+ id String @id @default (uuid () )
246
+ conteudo String
247
+ alunoRemetenteId String ?
248
+ alunoDestinatarioId String ?
249
+ professorRemetenteId String ?
250
+ professorDestinatarioId String ?
251
+ funcionarioRemetenteId String ?
252
+ funcionarioDestinatarioId String ?
253
+ empresaRemetenteId String ?
254
+ empresaDestinatarioId String ?
255
+ alunoRemetente Aluno ? @relation (" MensagensEnviadasAluno " , fields : [alunoRemetenteId ] , references : [id ] , map : " alunoRemetente_FK " )
256
+ alunoDestinatario Aluno ? @relation (" MensagensRecebidasAluno " , fields : [alunoDestinatarioId ] , references : [id ] , map : " alunoDestinatario_FK " )
257
+ professorRemetente Professor ? @relation (" MensagensEnviadasProfessor " , fields : [professorRemetenteId ] , references : [id ] , map : " professorRemetente_FK " )
258
+ professorDestinatario Professor ? @relation (" MensagensRecebidasProfessor " , fields : [professorDestinatarioId ] , references : [id ] , map : " professorDestinatario_FK " )
259
+ funcionarioRemetente Funcionario ? @relation (" MensagensEnviadasFuncionario " , fields : [funcionarioRemetenteId ] , references : [id ] , map : " funcionarioRemetente_FK " )
260
+ funcionarioDestinatario Funcionario ? @relation (" MensagensRecebidasFuncionario " , fields : [funcionarioDestinatarioId ] , references : [id ] , map : " funcionarioDestinatario_FK " )
261
+ empresaRemetente Empresa ? @relation (" MensagensEnviadasEmpresa " , fields : [empresaRemetenteId ] , references : [id ] , map : " empresaRemetente_FK " )
262
+ empresaDestinatario Empresa ? @relation (" MensagensRecebidasEmpresa " , fields : [empresaDestinatarioId ] , references : [id ] , map : " empresaDestinatario_FK " )
263
+ createdAt DateTime @default (now () )
264
+ updatedAt DateTime @updatedAt
265
+
266
+ @@map (" mensagens " )
267
+ }
0 commit comments