first commit
This commit is contained in:
168
storage/postgresql/schema.hcl
Normal file
168
storage/postgresql/schema.hcl
Normal file
@@ -0,0 +1,168 @@
|
||||
|
||||
table "passengers" {
|
||||
schema = schema.solidarity_service
|
||||
column "passenger_id" {
|
||||
null = false
|
||||
type = uuid
|
||||
}
|
||||
column "passenger_departure_route" {
|
||||
null = false
|
||||
type = jsonb
|
||||
}
|
||||
column "passenger_destination_route" {
|
||||
null = false
|
||||
type = jsonb
|
||||
}
|
||||
column "alias" {
|
||||
null = false
|
||||
type = varchar(15)
|
||||
}
|
||||
column "last_name" {
|
||||
null = true
|
||||
type = text
|
||||
}
|
||||
column "first_name" {
|
||||
null = true
|
||||
type = text
|
||||
}
|
||||
column "grade" {
|
||||
null = true
|
||||
type = int
|
||||
}
|
||||
column "picture" {
|
||||
null = true
|
||||
type = varchar(200)
|
||||
}
|
||||
column "verified_identity"{
|
||||
null = true
|
||||
type = bool
|
||||
}
|
||||
column "operator" {
|
||||
null = false
|
||||
type = varchar(35)
|
||||
}
|
||||
column "preferences" {
|
||||
null = true
|
||||
type = jsonb
|
||||
}
|
||||
column "passenger_pickup_date" {
|
||||
null = false
|
||||
type = int
|
||||
}
|
||||
primary_key {
|
||||
columns = [column.passenger_id]
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
table "drivers" {
|
||||
schema = schema.solidarity_service
|
||||
column "driver_id" {
|
||||
null = false
|
||||
type = uuid
|
||||
}
|
||||
column "driver_departure_route" {
|
||||
null = false
|
||||
type = jsonb
|
||||
}
|
||||
column "driver_radius" {
|
||||
null = false
|
||||
type = integer
|
||||
}
|
||||
column "last_name" {
|
||||
null = true
|
||||
type = text
|
||||
}
|
||||
column "first_name" {
|
||||
null = true
|
||||
type = text
|
||||
}
|
||||
column "grade" {
|
||||
null = true
|
||||
type = int
|
||||
}
|
||||
column "alias" {
|
||||
null = false
|
||||
type = varchar(15)
|
||||
}
|
||||
column "picture" {
|
||||
null = true
|
||||
type = text
|
||||
}
|
||||
column "verified_identity"{
|
||||
null = true
|
||||
type = bool
|
||||
}
|
||||
column "preferences" {
|
||||
null = true
|
||||
type = jsonb
|
||||
}
|
||||
column "availabilities_type" {
|
||||
null = false
|
||||
type = enum.availabilities_type
|
||||
}
|
||||
column "availabilities" {
|
||||
null = false
|
||||
type = jsonb
|
||||
}
|
||||
column "car" {
|
||||
null = true
|
||||
type = jsonb
|
||||
}
|
||||
column "operator" {
|
||||
null = false
|
||||
type = varchar(35)
|
||||
}
|
||||
primary_key {
|
||||
columns = [column.driver_id]
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
table "bookings" {
|
||||
schema = schema.solidarity_service
|
||||
column "booking_id" {
|
||||
null = false
|
||||
type = uuid
|
||||
}
|
||||
column "driver_id" {
|
||||
null = false
|
||||
type = uuid
|
||||
}
|
||||
column "operator" {
|
||||
null = false
|
||||
type = varchar(35)
|
||||
}
|
||||
column "passenger_id" {
|
||||
null = false
|
||||
type = uuid
|
||||
}
|
||||
column "booking_status" {
|
||||
null = false
|
||||
type = enum.booking_status
|
||||
}
|
||||
primary_key {
|
||||
columns = [column.booking_id]
|
||||
}
|
||||
foreign_key "bookings_driver_id_fkey" {
|
||||
columns = [column.driver_id]
|
||||
ref_columns = [table.drivers.column.driver_id]
|
||||
}
|
||||
foreign_key "group_members_passenger_id_fkey" {
|
||||
columns = [column.passenger_id]
|
||||
ref_columns = [table.passengers.column.passenger_id]
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
enum "booking_status" {
|
||||
schema = schema.solidarity_service
|
||||
values = ["INITIATED", "WAITING_PASSENGER_CONFIRMATION", "WAITING_DRIVER_CONFIRMATION", "CONFIRMED", "CANCELLED", "COMPLETED_PENDING_VALIDATION", "VALIDATED"]
|
||||
}
|
||||
enum "availabilities_type" {
|
||||
schema = schema.solidarity_service
|
||||
values = ["PUNCTUAL","REGULAR"]
|
||||
}
|
||||
|
||||
schema "solidarity_service" {
|
||||
}
|
||||
Reference in New Issue
Block a user