refactor(schema): continue redaction of prisma-postgres schema
This commit is contained in:
parent
77da43e0ed
commit
1e5ad2653d
|
|
@ -14,51 +14,140 @@ datasource db {
|
|||
}
|
||||
|
||||
model Users {
|
||||
user_id Int @id @default(autoincrement())
|
||||
id String @id @default(uuid())
|
||||
first_name String
|
||||
last_name String
|
||||
email String? @unique
|
||||
phone_number Int @unique
|
||||
residence String?
|
||||
role Roles @default(GUEST)
|
||||
|
||||
|
||||
employee Employees? @relation("UserEmployee")
|
||||
customer Customers? @relation("UserCustomer")
|
||||
oauth_access_token OAuthAccessTokens? @relation("UserOAuthAccessToken")
|
||||
|
||||
@@map("users")
|
||||
}
|
||||
|
||||
model Employees {
|
||||
employee_id Int @id @default(autoincrement())
|
||||
user Users @relation("UserEmployee", fields: [user_id], references:[user_id])
|
||||
user_id Int @unique
|
||||
id Int @id @default(autoincrement())
|
||||
user Users @relation("UserEmployee", fields: [user_id], references:[id])
|
||||
user_id String @unique
|
||||
external_payroll_id Int @unique
|
||||
company_code Int
|
||||
first_work_day DateTime
|
||||
last_work_day DateTime?
|
||||
role Roles @default(EMPLOYEE)
|
||||
|
||||
timesheet Timesheets? @relation("TimesheetEmployee")
|
||||
leave_request LeaveRequests? @relation("LeaveRequestEmployee")
|
||||
|
||||
@@map("employees")
|
||||
}
|
||||
|
||||
model Customers {
|
||||
customer_id Int @id @default(autoincrement())
|
||||
user Users @relation("UserCustomer", fields: [user_id], references:[user_id])
|
||||
user_id Int @unique
|
||||
id Int @id @default(autoincrement())
|
||||
user Users @relation("UserCustomer", fields: [user_id], references:[id])
|
||||
user_id String @unique
|
||||
invoice_id Int? @unique
|
||||
role Roles @default(CUSTOMER)
|
||||
|
||||
@@map("customers")
|
||||
}
|
||||
|
||||
model LeaveRequests {
|
||||
id Int @id @default(autoincrement())
|
||||
employee Employees @relation("LeaveRequestEmployee", fields: [employee_id], references:[id])
|
||||
employee_id Int @unique
|
||||
leave_type LeaveTypes
|
||||
start_date_time DateTime
|
||||
end_date_time DateTime?
|
||||
comment String
|
||||
approval_status LeaveApprovalStatus @default(PENDING)
|
||||
|
||||
@@map("leave_requests")
|
||||
}
|
||||
|
||||
model Timesheets {
|
||||
id Int @id @default(autoincrement())
|
||||
employee Employees @relation("TimesheetEmployee", fields: [employee_id], references:[id])
|
||||
employee_id Int @unique
|
||||
is_approved Boolean @default(false)
|
||||
|
||||
|
||||
shift Shifts? @relation("ShiftTimesheet")
|
||||
|
||||
@@map("timesheets")
|
||||
}
|
||||
|
||||
model Shifts {
|
||||
id Int @id @default(autoincrement())
|
||||
timesheet Timesheets @relation("ShiftTimesheet", fields: [timesheet_id], references: [id])
|
||||
timesheet_id Int @unique
|
||||
shift_code ShiftCodes @relation("ShiftShiftCode", fields: [shift_code_id], references: [id])
|
||||
shift_code_id Int @unique
|
||||
date DateTime
|
||||
start_time DateTime
|
||||
end_time DateTime
|
||||
|
||||
@@map("shifts")
|
||||
}
|
||||
|
||||
model ShiftCodes {
|
||||
id Int @id @default(autoincrement())
|
||||
shift_type String
|
||||
bank_code String
|
||||
|
||||
|
||||
shift Shifts? @relation("ShiftShiftCode")
|
||||
|
||||
@@map("shift_codes")
|
||||
}
|
||||
|
||||
model OAuthAccessTokens {
|
||||
id String @id @default(cuid())
|
||||
user Users @relation("UserOAuthAccessToken", fields: [user_id], references: [id])
|
||||
user_id String @unique
|
||||
access_token String @unique
|
||||
refresh_token String @unique
|
||||
access_token_expiry DateTime
|
||||
refresh_token_expiry DateTime?
|
||||
scopes Json @default("[]")
|
||||
created_at DateTime @default(now())
|
||||
updated_at DateTime?
|
||||
|
||||
@@map("refresh_tokens")
|
||||
}
|
||||
|
||||
enum Roles {
|
||||
ADMIN
|
||||
CUSTOMER
|
||||
DEALER
|
||||
EMPLOYEE
|
||||
HR
|
||||
SUPERVISOR
|
||||
HR
|
||||
ACCOUNTING
|
||||
EMPLOYEE
|
||||
DEALER
|
||||
CUSTOMER
|
||||
GUEST
|
||||
|
||||
@@map("roles")
|
||||
}
|
||||
|
||||
enum LeaveTypes {
|
||||
SICK // maladie ou repos
|
||||
VACATION // paye
|
||||
UNPAID // non-paye
|
||||
BEREAVEMENT // deuil de famille
|
||||
PARENTAL // maternite/paternite/adoption
|
||||
LEGAL // obligations legales comme devoir de juree
|
||||
|
||||
@@map("leave_types")
|
||||
}
|
||||
|
||||
enum LeaveApprovalStatus {
|
||||
PENDING
|
||||
APPROVED
|
||||
DENIED
|
||||
CANCELLED
|
||||
ESCALATED
|
||||
|
||||
@@map("leave_approval_status")
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user