File size: 4,923 Bytes
e6f1924
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
generator client {
  provider = "prisma-client-js"
  output   = "../src/generated/prisma"
}

datasource db {
  provider = "postgresql"
}

model cv_file {
  file_id       String    @id @default(dbgenerated("uuid_generate_v4()")) @db.Uuid
  user_id       String    @db.Uuid
  file_type     String    @db.VarChar
  filename      String    @db.VarChar
  url           String    @db.VarChar
  is_extracted  Boolean
  uploaded_at   DateTime? @default(dbgenerated("timezone('Asia/Jakarta'::text, now())")) @db.Timestamptz(6)
  date_modified DateTime? @default(dbgenerated("timezone('Asia/Jakarta'::text, now())")) @db.Timestamptz(6)
}

model cv_filter {
  criteria_id     String    @id @default(dbgenerated("uuid_generate_v4()")) @db.Uuid
  gpa_edu_1       Float?
  gpa_edu_2       Float?
  gpa_edu_3       Float?
  univ_edu_1      String?   @db.VarChar
  univ_edu_2      String?   @db.VarChar
  univ_edu_3      String?   @db.VarChar
  major_edu_1     String?   @db.VarChar
  major_edu_2     String?   @db.VarChar
  major_edu_3     String?   @db.VarChar
  domicile        String?   @db.VarChar
  yoe             Int?
  hardskills      String[]  @db.VarChar
  softskills      String[]  @db.VarChar
  certifications  String[]  @db.VarChar
  business_domain String[]  @db.VarChar
  created_at      DateTime? @default(dbgenerated("timezone('Asia/Jakarta'::text, now())")) @db.Timestamptz(6)
}

model cv_matching {
  matching_id     String    @id @default(dbgenerated("uuid_generate_v4()")) @db.Uuid
  profile_id      String?   @db.Uuid
  criteria_id     String?   @db.Uuid
  gpa_edu_1       Boolean?
  gpa_edu_2       Boolean?
  gpa_edu_3       Boolean?
  univ_edu_1      Boolean?
  univ_edu_2      Boolean?
  univ_edu_3      Boolean?
  major_edu_1     Boolean?
  major_edu_2     Boolean?
  major_edu_3     Boolean?
  domicile        Boolean?
  yoe             Boolean?
  hardskills      Boolean?
  softskills      Boolean?
  certifications  Boolean?
  business_domain Boolean?
  created_at      DateTime? @default(dbgenerated("timezone('Asia/Jakarta'::text, now())")) @db.Timestamptz(6)
}

model cv_profile {
  profile_id      String    @id @default(dbgenerated("uuid_generate_v4()")) @db.Uuid
  fullname        String    @db.VarChar
  gpa_edu_1       Float?
  univ_edu_1      String?   @db.VarChar
  major_edu_1     String?   @db.VarChar
  gpa_edu_2       Float?
  univ_edu_2      String?   @db.VarChar
  major_edu_2     String?   @db.VarChar
  gpa_edu_3       Float?
  univ_edu_3      String?   @db.VarChar
  major_edu_3     String?   @db.VarChar
  domicile        String?   @db.VarChar
  yoe             Int?
  hardskills      String[]  @db.VarChar
  softskills      String[]  @db.VarChar
  certifications  String[]  @db.VarChar
  business_domain String[]  @db.VarChar
  filename        String    @unique @db.VarChar
  file_id         String?   @db.Uuid
  created_at      DateTime? @default(dbgenerated("timezone('Asia/Jakarta'::text, now())")) @db.Timestamptz(6)
}

model cv_score {
  scoring_id  String    @id @default(dbgenerated("uuid_generate_v4()")) @db.Uuid
  matching_id String?   @db.Uuid
  score       Int?
  created_at  DateTime? @default(dbgenerated("timezone('Asia/Jakarta'::text, now())")) @db.Timestamptz(6)
}

model cv_tenant {
  tenant_id     String    @id @default(dbgenerated("uuid_generate_v4()")) @db.Uuid
  tenant_name   String    @unique @db.VarChar
  created_at    DateTime? @default(dbgenerated("timezone('Asia/Jakarta'::text, now())")) @db.Timestamptz(6)
  date_modified DateTime? @default(dbgenerated("timezone('Asia/Jakarta'::text, now())")) @db.Timestamptz(6)
  notes         String?   @db.VarChar
}

model cv_user {
  user_id         String    @id @default(dbgenerated("uuid_generate_v4()")) @db.Uuid
  username        String    @unique @db.VarChar
  hashed_password String    @db.VarChar
  email           String    @unique @db.VarChar
  full_name       String    @db.VarChar
  role            String    @db.VarChar
  is_active       Boolean
  tenant_id       String?   @db.Uuid
  created_at      DateTime? @default(dbgenerated("timezone('Asia/Jakarta'::text, now())")) @db.Timestamptz(6)
  date_modified   DateTime? @default(dbgenerated("timezone('Asia/Jakarta'::text, now())")) @db.Timestamptz(6)
  notes           String?   @db.VarChar
}

model cv_weight {
  weight_id       String    @default(dbgenerated("uuid_generate_v4()")) @db.Uuid
  criteria_id     String    @db.Uuid
  gpa_edu_1       Float?
  gpa_edu_2       Float?
  gpa_edu_3       Float?
  univ_edu_1      Float?
  univ_edu_2      Float?
  univ_edu_3      Float?
  major_edu_1     Float?
  major_edu_2     Float?
  major_edu_3     Float?
  domicile        Float?
  yoe             Float?
  hardskills      Float?
  softskills      Float?
  certifications  Float?
  business_domain Float?
  created_at      DateTime? @default(dbgenerated("timezone('Asia/Jakarta'::text, now())")) @db.Timestamptz(6)

  @@id([weight_id, criteria_id])
}