@adaptware/eagles-db 0.1.55 → 0.1.57

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adaptware/eagles-db",
3
- "version": "0.1.55",
3
+ "version": "0.1.57",
4
4
  "description": "A Prisma client package for Treadspace database operations",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -13,9 +13,8 @@ model Assignment {
13
13
  job_description_id String
14
14
  organisation_id String
15
15
  ongoing_evaluation_id String? @unique
16
- score Int?
17
- ai_result String?
18
- ai_reasoning String?
16
+ overallScore Int?
17
+ feedback Json?
19
18
  status AssignmentStatus @default(AVAILABLE)
20
19
  cancel_reason String?
21
20
  solution_url String?
@@ -0,0 +1,92 @@
1
+ enum IntegrationProvider {
2
+ NAUKRI
3
+ ZOHO_RECRUIT
4
+ }
5
+
6
+ enum IntegrationAuthType {
7
+ OAUTH2
8
+ API_KEY
9
+ }
10
+
11
+ enum SyncDirection {
12
+ PUSH
13
+ PULL
14
+ BIDIRECTIONAL
15
+ }
16
+
17
+ enum SyncEntityType {
18
+ CANDIDATE
19
+ JOB_OPENING
20
+ INTERVIEW
21
+ APPLICATION
22
+ }
23
+
24
+ enum SyncStatus {
25
+ SYNCED
26
+ PENDING
27
+ FAILED
28
+ }
29
+
30
+ model IntegrationCredential {
31
+ id String @id @default(uuid())
32
+ organisation_id String?
33
+ provider IntegrationProvider
34
+ auth_type IntegrationAuthType
35
+ access_token String?
36
+ refresh_token String?
37
+ token_expires_at DateTime?
38
+ api_key String?
39
+ api_secret String?
40
+ metadata Json @default("{}")
41
+ is_active Boolean @default(true)
42
+
43
+ organisation Organisation? @relation(fields: [organisation_id], references: [id], onDelete: Cascade)
44
+
45
+ created_at DateTime @default(now())
46
+ updated_at DateTime @updatedAt
47
+ created_by String
48
+ updated_by String
49
+
50
+ @@unique([organisation_id, provider])
51
+ @@index([provider])
52
+ }
53
+
54
+ model IntegrationJobSync {
55
+ id String @id @default(uuid())
56
+ job_description_id String
57
+ provider IntegrationProvider
58
+ external_id String?
59
+ sync_enabled Boolean @default(true)
60
+ last_synced_at DateTime?
61
+ sync_direction SyncDirection @default(PUSH)
62
+ metadata Json @default("{}")
63
+
64
+ job_description JobDescription @relation(fields: [job_description_id], references: [id], onDelete: Cascade)
65
+
66
+ created_at DateTime @default(now())
67
+ updated_at DateTime @updatedAt
68
+
69
+ @@unique([job_description_id, provider])
70
+ @@index([provider])
71
+ }
72
+
73
+ model ZohoSyncMapping {
74
+ id String @id @default(uuid())
75
+ organisation_id String
76
+ entity_type SyncEntityType
77
+ treadspace_id String
78
+ zoho_module String
79
+ zoho_record_id String
80
+ last_synced_at DateTime @default(now())
81
+ sync_status SyncStatus @default(PENDING)
82
+ error_message String?
83
+
84
+ organisation Organisation @relation(fields: [organisation_id], references: [id], onDelete: Cascade)
85
+
86
+ created_at DateTime @default(now())
87
+ updated_at DateTime @updatedAt
88
+
89
+ @@unique([organisation_id, entity_type, treadspace_id])
90
+ @@index([zoho_record_id])
91
+ @@index([sync_status])
92
+ }
@@ -40,6 +40,7 @@ model JobDescription {
40
40
  hiring_manager User? @relation("HiringManager", fields: [hiring_manager_id], references: [id], onDelete: SetNull, onUpdate: Cascade)
41
41
  recruiters User[]
42
42
  transcripts Transcript[]
43
+ integration_job_syncs IntegrationJobSync[]
43
44
 
44
45
  @@index([organisation_id])
45
46
  @@index([hiring_manager_id])
@@ -37,7 +37,9 @@ model Organisation {
37
37
  approvals Approval[] // one-to-many link
38
38
  suggestions Suggestion[]
39
39
  ongoing_evaluations OngoingEvaluation[] // optional one-to-many
40
- actions Action[]
40
+ actions Action[]
41
+ integration_credentials IntegrationCredential[]
42
+ zoho_sync_mappings ZohoSyncMapping[]
41
43
 
42
44
  @@index([name])
43
45
  }