@adaptware/eagles-db 0.1.54 → 0.1.56

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -27,6 +27,7 @@ model Application {
27
27
  job_description JobDescription @relation(fields: [job_description_id], references: [id], onDelete: Cascade, onUpdate: Cascade)
28
28
  fit_check FitCheck? @relation(fields: [fit_check_id], references: [id], onDelete: Cascade, onUpdate: Cascade)
29
29
  interviews Interview[]
30
+ assignments Assignment[]
30
31
  ongoing_evaluations OngoingEvaluation[]
31
32
  activity_logs ActivityLog[]
32
33
  // Audit fields
@@ -10,29 +10,30 @@ enum AssessmentStatus {
10
10
  }
11
11
 
12
12
  model Assessment {
13
- id String @id @default(uuid())
14
- assessment_id String
15
- candidate_id String
16
- reviewer_id String?
17
- score Float?
18
- feedback String?
19
- scheduled_start_time DateTime? @default(now()) // Start Time to start the assessment
20
- assessment_status AssessmentStatus @default(SCHEDULED)
21
- created_at DateTime @default(now())
22
- updated_at DateTime @updatedAt
23
- created_by String
24
- updated_by String
25
- is_active Boolean @default(true)
13
+ id String @id @default(uuid())
14
+ assessment_library_id String
15
+ candidate_id String
16
+ reviewer_id String?
17
+ score Float?
18
+ feedback String?
19
+ scheduled_start_time DateTime? @default(now()) // Start Time to start the assessment
20
+ assessment_status AssessmentStatus @default(SCHEDULED)
21
+ created_at DateTime @default(now())
22
+ updated_at DateTime @updatedAt
23
+ created_by String
24
+ updated_by String
25
+ is_active Boolean @default(true)
26
26
  // Relations
27
- assessment_libarary AssessmentLibrary @relation(fields: [assessment_id], references: [id], onDelete: Cascade, onUpdate: Cascade)
28
- candidate User @relation("CandidateAssessments", fields: [candidate_id], references: [id], onDelete: Cascade, onUpdate: Cascade)
29
- reviewer User? @relation("ReviewerAssessments", fields: [reviewer_id], references: [id], onDelete: SetNull, onUpdate: Cascade)
30
- questions AssessmentQuestion[] @relation("AssessmentToAssessmentQuestion")
31
- candidateResponse CandidateQuestionResponse[]
32
- User User? @relation(fields: [userId], references: [id])
33
- userId String?
27
+ assessment_library AssessmentLibrary @relation(fields: [assessment_library_id], references: [id], onDelete: Cascade, onUpdate: Cascade)
28
+ candidate User @relation("CandidateAssessments", fields: [candidate_id], references: [id], onDelete: Cascade, onUpdate: Cascade)
29
+ reviewer User? @relation("ReviewerAssessments", fields: [reviewer_id], references: [id], onDelete: SetNull, onUpdate: Cascade)
30
+ questions AssessmentQuestion[] @relation("AssessmentToAssessmentQuestion")
31
+ candidateResponse CandidateQuestionResponse[]
32
+ panelistId String?
33
+ User User? @relation(fields: [userId], references: [id])
34
+ userId String?
34
35
 
35
- @@unique([assessment_id, candidate_id])
36
- @@index([assessment_id])
36
+ @@unique([assessment_library_id, candidate_id])
37
+ @@index([assessment_library_id])
37
38
  @@index([candidate_id])
38
39
  }
@@ -0,0 +1,41 @@
1
+ enum AssignmentStatus {
2
+ AVAILABLE
3
+ SCHEDULED
4
+ CANCELLED
5
+ }
6
+
7
+ model Assignment {
8
+ id String @id @default(uuid())
9
+ candidate_id String
10
+ assignment_library_id String
11
+ reviewer_id String?
12
+ application_id String?
13
+ job_description_id String
14
+ organisation_id String
15
+ ongoing_evaluation_id String? @unique
16
+ overallScore Int?
17
+ feedback Json?
18
+ status AssignmentStatus @default(AVAILABLE)
19
+ cancel_reason String?
20
+ solution_url String?
21
+ scheduled_start_time DateTime?
22
+ scheduled_end_time DateTime?
23
+ created_at DateTime @default(now())
24
+ updated_at DateTime @updatedAt
25
+ created_by String
26
+ updated_by String
27
+ is_active Boolean @default(true)
28
+ // Relations
29
+ candidate User? @relation("CandidateAssignments", fields: [candidate_id], references: [id], onDelete: Cascade)
30
+ assignment_library AssignmentLibrary @relation(fields: [assignment_library_id], references: [id], onDelete: Cascade, onUpdate: Cascade)
31
+ reviewer User? @relation("AssignmentReviewer", fields: [reviewer_id], references: [id], onDelete: SetNull)
32
+ organisation Organisation @relation(fields: [organisation_id], references: [id], onDelete: Cascade, onUpdate: Cascade)
33
+ job_description JobDescription @relation(fields: [job_description_id], references: [id], onDelete: Cascade, onUpdate: Cascade)
34
+ application Application? @relation(fields: [application_id], references: [id], onDelete: Cascade, onUpdate: Cascade)
35
+ ongoing_evaluation OngoingEvaluation? @relation(fields: [ongoing_evaluation_id], references: [id], onDelete: Cascade, onUpdate: Cascade)
36
+
37
+ @@unique([candidate_id, ongoing_evaluation_id])
38
+ @@index([candidate_id])
39
+ @@index([reviewer_id])
40
+ @@index([job_description_id])
41
+ }
@@ -14,6 +14,7 @@ model AssignmentLibrary {
14
14
  jobDescription JobDescription @relation(fields: [job_description_id], references: [id], onDelete: Cascade, onUpdate: Cascade)
15
15
  /// Back-relation: one-to-one from EvaluationPlan (FK lives on EvaluationPlan.assignment_library_id)
16
16
  evaluationPlan EvaluationPlan[]
17
+ assignments Assignment[]
17
18
 
18
19
  @@index([job_description_id])
19
20
  }
@@ -28,6 +28,7 @@ model JobDescription {
28
28
  organisation Organisation @relation(fields: [organisation_id], references: [id], onDelete: Cascade, onUpdate: Cascade)
29
29
  applications Application[]
30
30
  interviews Interview[]
31
+ assignments Assignment[]
31
32
  fit_check FitCheck[] // one-to-many link
32
33
  job_description_data JobDescriptionData[] // one-to-many link
33
34
  evaluationPlan EvaluationPlan[] // relation to evaluation methods
@@ -34,6 +34,7 @@ model OngoingEvaluation {
34
34
  job_description_id String
35
35
  evaluation_plan_id String
36
36
  interview_id String? @unique
37
+ assignment_id String? @unique
37
38
  status OngoingEvaluationStatus?
38
39
  state OngoingEvaluationState? @default(NOT_STARTED)
39
40
  round_status OngoingEvaluationRoundStatus? @default(NOT_SCHEDULED)
@@ -46,6 +47,7 @@ model OngoingEvaluation {
46
47
  organisation Organisation? @relation(fields: [organisation_id], references: [id], onDelete: Cascade, onUpdate: Cascade)
47
48
  evaluation_plan EvaluationPlan @relation(fields: [evaluation_plan_id], references: [id], onDelete: Cascade, onUpdate: Cascade)
48
49
  interview Interview? @relation(fields: [interview_id], references: [id], onDelete: SetNull, onUpdate: Cascade)
50
+ assignment Assignment?
49
51
  created_at DateTime @default(now())
50
52
  updated_at DateTime @updatedAt
51
53
  created_by String
@@ -31,6 +31,7 @@ model Organisation {
31
31
  assessment_library AssessmentLibrary[]
32
32
  assignment_library AssignmentLibrary[]
33
33
  interviews Interview[]
34
+ assignments Assignment[]
34
35
  fit_check FitCheck[] // one-to-many link
35
36
  resumes Resume[] // one-to-many link
36
37
  approvals Approval[] // one-to-many link
@@ -39,6 +39,8 @@ model User {
39
39
  assessment_results Assessment[]
40
40
  candidate_assessments Assessment[] @relation("CandidateAssessments")
41
41
  reviewer_assessments Assessment[] @relation("ReviewerAssessments")
42
+ candidate_assignments Assignment[] @relation("CandidateAssignments")
43
+ reviewer_assignments Assignment[] @relation("AssignmentReviewer")
42
44
  candidateResponses CandidateQuestionResponse[]
43
45
  questions Question[]
44
46
  ongoing_evaluations OngoingEvaluation[] // optional one-to-many
package/prisma/.DS_Store DELETED
Binary file