@delpa/mt-prisma 0.6.0 → 0.8.0

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.
@@ -93,10 +93,53 @@ exports.Prisma.TransactionIsolationLevel = makeStrictEnum({
93
93
  Serializable: 'Serializable'
94
94
  });
95
95
 
96
+ exports.Prisma.ClientScalarFieldEnum = {
97
+ id: 'id',
98
+ tax_id: 'tax_id',
99
+ name: 'name',
100
+ email: 'email',
101
+ phone: 'phone',
102
+ country_code: 'country_code',
103
+ company_id: 'company_id',
104
+ created_by: 'created_by',
105
+ created_at: 'created_at',
106
+ updated_at: 'updated_at'
107
+ };
108
+
109
+ exports.Prisma.ClientAddressScalarFieldEnum = {
110
+ id: 'id',
111
+ client_id: 'client_id',
112
+ title: 'title',
113
+ address_type: 'address_type',
114
+ line1: 'line1',
115
+ line2: 'line2',
116
+ city: 'city',
117
+ state: 'state',
118
+ postal_code: 'postal_code',
119
+ country: 'country',
120
+ formatted_address: 'formatted_address',
121
+ latitude: 'latitude',
122
+ longitude: 'longitude',
123
+ is_default: 'is_default',
124
+ created_at: 'created_at',
125
+ updated_at: 'updated_at'
126
+ };
127
+
128
+ exports.Prisma.ClientContactScalarFieldEnum = {
129
+ id: 'id',
130
+ client_id: 'client_id',
131
+ name: 'name',
132
+ email: 'email',
133
+ phone: 'phone',
134
+ is_default: 'is_default',
135
+ created_at: 'created_at',
136
+ updated_at: 'updated_at'
137
+ };
138
+
96
139
  exports.Prisma.OrderScalarFieldEnum = {
97
140
  id: 'id',
98
141
  reference: 'reference',
99
- shipper: 'shipper',
142
+ shipper_id: 'shipper_id',
100
143
  attachments: 'attachments',
101
144
  status: 'status',
102
145
  created_at: 'created_at',
@@ -135,7 +178,7 @@ exports.Prisma.HandlingUnitScalarFieldEnum = {
135
178
  pickup_address: 'pickup_address',
136
179
  delivery_instructions: 'delivery_instructions',
137
180
  pickup_instructions: 'pickup_instructions',
138
- consignee: 'consignee',
181
+ client_id: 'client_id',
139
182
  contact_notify: 'contact_notify',
140
183
  eta: 'eta',
141
184
  created_at: 'created_at',
@@ -152,12 +195,50 @@ exports.Prisma.UserScalarFieldEnum = {
152
195
  updated_at: 'updated_at'
153
196
  };
154
197
 
198
+ exports.Prisma.UserCompanyScalarFieldEnum = {
199
+ id: 'id',
200
+ user_id: 'user_id',
201
+ company_id: 'company_id',
202
+ is_primary: 'is_primary',
203
+ created_at: 'created_at',
204
+ updated_at: 'updated_at'
205
+ };
206
+
207
+ exports.Prisma.SessionScalarFieldEnum = {
208
+ id: 'id',
209
+ user_id: 'user_id',
210
+ refresh_token: 'refresh_token',
211
+ device_info: 'device_info',
212
+ ip_address: 'ip_address',
213
+ expires_at: 'expires_at',
214
+ created_at: 'created_at',
215
+ updated_at: 'updated_at'
216
+ };
217
+
218
+ exports.Prisma.VehicleBrandScalarFieldEnum = {
219
+ id: 'id',
220
+ name: 'name',
221
+ logo_url: 'logo_url',
222
+ is_active: 'is_active',
223
+ created_at: 'created_at',
224
+ updated_at: 'updated_at'
225
+ };
226
+
227
+ exports.Prisma.VehicleModelScalarFieldEnum = {
228
+ id: 'id',
229
+ name: 'name',
230
+ brand_id: 'brand_id',
231
+ is_active: 'is_active',
232
+ created_at: 'created_at',
233
+ updated_at: 'updated_at'
234
+ };
235
+
155
236
  exports.Prisma.VehicleScalarFieldEnum = {
156
237
  id: 'id',
157
238
  license_plate: 'license_plate',
158
- model: 'model',
239
+ brand_id: 'brand_id',
240
+ model_id: 'model_id',
159
241
  capacity: 'capacity',
160
- mark: 'mark',
161
242
  year: 'year',
162
243
  fuel_type: 'fuel_type',
163
244
  color: 'color',
@@ -201,6 +282,7 @@ exports.Prisma.RouteOrdersScalarFieldEnum = {
201
282
  exports.Prisma.AddressScalarFieldEnum = {
202
283
  id: 'id',
203
284
  address_type: 'address_type',
285
+ sequence: 'sequence',
204
286
  title: 'title',
205
287
  address_line1: 'address_line1',
206
288
  address_line2: 'address_line2',
@@ -240,16 +322,16 @@ exports.Prisma.QueryMode = {
240
322
  insensitive: 'insensitive'
241
323
  };
242
324
 
325
+ exports.Prisma.NullsOrder = {
326
+ first: 'first',
327
+ last: 'last'
328
+ };
329
+
243
330
  exports.Prisma.JsonNullValueFilter = {
244
331
  DbNull: Prisma.DbNull,
245
332
  JsonNull: Prisma.JsonNull,
246
333
  AnyNull: Prisma.AnyNull
247
334
  };
248
-
249
- exports.Prisma.NullsOrder = {
250
- first: 'first',
251
- last: 'last'
252
- };
253
335
  exports.RouteStatus = exports.$Enums.RouteStatus = {
254
336
  IN_TRANSIT: 'IN_TRANSIT',
255
337
  DELIVERED: 'DELIVERED',
@@ -284,6 +366,28 @@ exports.VehicleSize = exports.$Enums.VehicleSize = {
284
366
  EXTRA_LARGE: 'EXTRA_LARGE'
285
367
  };
286
368
 
369
+ exports.VehicleColor = exports.$Enums.VehicleColor = {
370
+ WHITE: 'WHITE',
371
+ BLACK: 'BLACK',
372
+ SILVER: 'SILVER',
373
+ GRAY: 'GRAY',
374
+ RED: 'RED',
375
+ BLUE: 'BLUE',
376
+ GREEN: 'GREEN',
377
+ YELLOW: 'YELLOW',
378
+ ORANGE: 'ORANGE',
379
+ BROWN: 'BROWN',
380
+ BEIGE: 'BEIGE'
381
+ };
382
+
383
+ exports.FuelType = exports.$Enums.FuelType = {
384
+ GASOLINE: 'GASOLINE',
385
+ DIESEL: 'DIESEL',
386
+ ELECTRIC: 'ELECTRIC',
387
+ HYBRID: 'HYBRID',
388
+ GAS: 'GAS'
389
+ };
390
+
287
391
  exports.TypeOfRoutes = exports.$Enums.TypeOfRoutes = {
288
392
  PICKING: 'PICKING',
289
393
  DELIVERY: 'DELIVERY',
@@ -298,10 +402,17 @@ exports.AddressType = exports.$Enums.AddressType = {
298
402
  };
299
403
 
300
404
  exports.Prisma.ModelName = {
405
+ Client: 'Client',
406
+ ClientAddress: 'ClientAddress',
407
+ ClientContact: 'ClientContact',
301
408
  Order: 'Order',
302
409
  companies: 'companies',
303
410
  HandlingUnit: 'HandlingUnit',
304
411
  User: 'User',
412
+ UserCompany: 'UserCompany',
413
+ Session: 'Session',
414
+ VehicleBrand: 'VehicleBrand',
415
+ VehicleModel: 'VehicleModel',
305
416
  Vehicle: 'Vehicle',
306
417
  Route: 'Route',
307
418
  RouteHandlingUnit: 'RouteHandlingUnit',
@@ -317,10 +428,10 @@ const config = {
317
428
  "clientVersion": "7.2.0",
318
429
  "engineVersion": "0c8ef2ce45c83248ab3df073180d5eda9e8be7a3",
319
430
  "activeProvider": "postgresql",
320
- "inlineSchema": "generator client {\n provider = \"prisma-client-js\"\n output = \"../generated/client\"\n}\n\ndatasource db {\n provider = \"postgresql\"\n}\n\nenum RouteStatus {\n IN_TRANSIT\n DELIVERED\n PENDING\n CANCELLED\n INCIDENT\n}\n\nenum WeightUnits {\n KG\n LB\n}\n\nenum DimensionUnits {\n CM\n IN\n MT\n FT\n}\n\nenum Roles {\n ADMIN\n OPERATOR\n DRIVER\n GUEST\n}\n\nenum VehicleSize {\n SMALL\n MEDIUM\n LARGE\n EXTRA_LARGE\n}\n\nenum TypeOfRoutes {\n PICKING\n DELIVERY\n RETURN\n}\n\nenum AddressType {\n PICKUP\n DELIVERY\n WAREHOUSE\n OTHER\n}\n\nmodel Order {\n id String @id @default(uuid()) @db.Uuid\n reference String?\n shipper String\n attachments Json? @default(\"[]\")\n status RouteStatus @default(PENDING)\n created_at DateTime @default(now())\n updated_at DateTime @updatedAt\n\n handling_units HandlingUnit[]\n route_orders RouteOrders[]\n\n @@map(\"orders\")\n}\n\nmodel companies {\n id String @id @default(uuid()) @db.Uuid\n tax_id String? @unique\n name String\n address Json? @default(\"{}\")\n contact_info Json? @default(\"{}\")\n country_code String?\n created_at DateTime @default(now())\n updated_at DateTime @updatedAt\n\n handling_units HandlingUnit[]\n vehicles Vehicle[]\n\n @@map(\"companies\")\n}\n\nmodel HandlingUnit {\n id String @id @default(uuid()) @db.Uuid\n order_id String @db.Uuid\n description String\n quantity Int @default(1)\n weight Float?\n weight_unit WeightUnits @default(KG)\n length Float?\n width Float?\n height Float?\n volume Float?\n dimension_unit DimensionUnits @default(CM)\n total_volume Float?\n total_weight Float?\n commodity String?\n delivery_contact Json? @default(\"{}\")\n pickup_contact Json? @default(\"{}\")\n delivery_address Json? @default(\"{}\")\n pickup_address Json? @default(\"{}\")\n delivery_instructions String?\n pickup_instructions String?\n consignee String? @db.Uuid\n contact_notify Json? @default(\"{}\")\n eta DateTime?\n created_at DateTime @default(now())\n updated_at DateTime @updatedAt\n\n order Order @relation(fields: [order_id], references: [id], onDelete: Cascade)\n company companies? @relation(fields: [consignee], references: [id], onDelete: SetNull)\n route_handling_units RouteHandlingUnit[]\n address_handling_units AddressHandlingUnit[]\n\n @@index([order_id])\n @@index([consignee])\n @@map(\"handling_units\")\n}\n\nmodel User {\n id String @id @default(uuid()) @db.Uuid\n email String @unique\n name String\n password String\n role Roles @default(GUEST)\n created_at DateTime @default(now())\n updated_at DateTime @updatedAt\n\n routes Route[]\n\n @@map(\"users\")\n}\n\nmodel Vehicle {\n id String @id @default(uuid()) @db.Uuid\n license_plate String @unique\n model String\n capacity Float?\n mark String?\n year Int?\n fuel_type String?\n color String?\n chassis_number String? @unique\n size VehicleSize? @default(MEDIUM)\n gps_enabled Boolean @default(false)\n image_url Json? @default(\"[]\")\n company_id String? @db.Uuid\n created_at DateTime @default(now())\n updated_at DateTime @updatedAt\n\n company companies? @relation(fields: [company_id], references: [id], onDelete: Cascade)\n routes Route[]\n\n @@index([company_id])\n @@map(\"vehicles\")\n}\n\nmodel Route {\n id String @id @default(uuid()) @db.Uuid\n driver_id String? @db.Uuid\n vehicle_id String? @db.Uuid\n status RouteStatus @default(PENDING)\n started_at DateTime?\n completed_at DateTime?\n type_of_route TypeOfRoutes?\n created_at DateTime @default(now())\n updated_at DateTime @updatedAt\n\n driver User? @relation(fields: [driver_id], references: [id], onDelete: SetNull)\n vehicle Vehicle? @relation(fields: [vehicle_id], references: [id], onDelete: SetNull)\n\n route_handling_units RouteHandlingUnit[]\n route_orders RouteOrders[]\n addresses Address[]\n\n @@index([driver_id])\n @@index([vehicle_id])\n @@map(\"routes\")\n}\n\nmodel RouteHandlingUnit {\n id String @id @default(uuid()) @db.Uuid\n route_id String @db.Uuid\n handling_unit_id String @db.Uuid\n created_at DateTime @default(now())\n updated_at DateTime @updatedAt\n\n route Route @relation(fields: [route_id], references: [id], onDelete: Cascade)\n handling_unit HandlingUnit @relation(fields: [handling_unit_id], references: [id], onDelete: Cascade)\n\n @@index([route_id])\n @@index([handling_unit_id])\n @@map(\"route_handling_units\")\n}\n\nmodel RouteOrders {\n id String @id @default(uuid()) @db.Uuid\n route_id String @db.Uuid\n order_id String @db.Uuid\n created_at DateTime @default(now())\n updated_at DateTime @updatedAt\n\n route Route @relation(fields: [route_id], references: [id], onDelete: Cascade)\n order Order @relation(fields: [order_id], references: [id], onDelete: Cascade)\n\n @@index([route_id])\n @@index([order_id])\n @@map(\"route_orders\")\n}\n\nmodel Address {\n id String @id @default(uuid()) @db.Uuid\n address_type AddressType @default(OTHER)\n title String?\n address_line1 String\n address_line2 String?\n apartment String?\n city String?\n state String?\n postal_code String?\n country String\n latitude Float?\n longitude Float?\n google_address Json? @default(\"{}\")\n route_id String? @db.Uuid\n created_at DateTime @default(now())\n updated_at DateTime @updatedAt\n\n route Route? @relation(fields: [route_id], references: [id], onDelete: Cascade)\n address_handling_units AddressHandlingUnit[]\n\n @@index([route_id])\n @@map(\"addresses\")\n}\n\nmodel AddressHandlingUnit {\n id String @id @default(uuid()) @db.Uuid\n address_id String @db.Uuid\n handling_unit_id String @db.Uuid\n created_at DateTime @default(now())\n updated_at DateTime @updatedAt\n\n address Address @relation(fields: [address_id], references: [id], onDelete: Cascade)\n handling_unit HandlingUnit @relation(fields: [handling_unit_id], references: [id], onDelete: Cascade)\n\n @@index([address_id])\n @@index([handling_unit_id])\n @@map(\"address_handling_units\")\n}\n"
431
+ "inlineSchema": "generator client {\n provider = \"prisma-client-js\"\n output = \"../generated/client\"\n}\n\ndatasource db {\n provider = \"postgresql\"\n}\n\nenum RouteStatus {\n IN_TRANSIT\n DELIVERED\n PENDING\n CANCELLED\n INCIDENT\n}\n\nenum WeightUnits {\n KG\n LB\n}\n\nenum DimensionUnits {\n CM\n IN\n MT\n FT\n}\n\nenum Roles {\n ADMIN\n OPERATOR\n DRIVER\n GUEST\n}\n\nenum VehicleSize {\n SMALL\n MEDIUM\n LARGE\n EXTRA_LARGE\n}\n\nenum VehicleColor {\n WHITE\n BLACK\n SILVER\n GRAY\n RED\n BLUE\n GREEN\n YELLOW\n ORANGE\n BROWN\n BEIGE\n}\n\nenum FuelType {\n GASOLINE\n DIESEL\n ELECTRIC\n HYBRID\n GAS\n}\n\nenum TypeOfRoutes {\n PICKING\n DELIVERY\n RETURN\n}\n\nenum AddressType {\n PICKUP\n DELIVERY\n WAREHOUSE\n OTHER\n}\n\nmodel Client {\n id String @id @default(uuid()) @db.Uuid\n tax_id String?\n name String\n email String?\n phone String?\n country_code String?\n company_id String? @db.Uuid\n created_by String? @db.Uuid\n created_at DateTime @default(now())\n updated_at DateTime @updatedAt\n\n company companies? @relation(fields: [company_id], references: [id], onDelete: SetNull)\n addresses ClientAddress[]\n contacts ClientContact[]\n orders_as_shipper Order[] @relation(\"shipper_client\")\n handling_units_as_consignee HandlingUnit[]\n\n @@index([company_id])\n @@index([created_by])\n @@map(\"clients\")\n}\n\nmodel ClientAddress {\n id String @id @default(uuid()) @db.Uuid\n client_id String @db.Uuid\n title String?\n address_type AddressType @default(OTHER)\n line1 String\n line2 String?\n city String?\n state String?\n postal_code String?\n country String?\n formatted_address String?\n latitude Float?\n longitude Float?\n is_default Boolean @default(false)\n created_at DateTime @default(now())\n updated_at DateTime @updatedAt\n\n client Client @relation(fields: [client_id], references: [id], onDelete: Cascade)\n\n @@index([client_id])\n @@map(\"client_addresses\")\n}\n\nmodel ClientContact {\n id String @id @default(uuid()) @db.Uuid\n client_id String @db.Uuid\n name String\n email String?\n phone String?\n is_default Boolean @default(false)\n created_at DateTime @default(now())\n updated_at DateTime @updatedAt\n\n client Client @relation(fields: [client_id], references: [id], onDelete: Cascade)\n\n @@index([client_id])\n @@map(\"client_contacts\")\n}\n\nmodel Order {\n id String @id @default(uuid()) @db.Uuid\n reference String?\n shipper_id String? @db.Uuid\n attachments Json? @default(\"[]\")\n status RouteStatus @default(PENDING)\n created_at DateTime @default(now())\n updated_at DateTime @updatedAt\n\n shipper Client? @relation(\"shipper_client\", fields: [shipper_id], references: [id], onDelete: SetNull)\n handling_units HandlingUnit[]\n route_orders RouteOrders[]\n\n @@index([shipper_id])\n @@map(\"orders\")\n}\n\nmodel companies {\n id String @id @default(uuid()) @db.Uuid\n tax_id String? @unique\n name String\n address Json? @default(\"{}\")\n contact_info Json? @default(\"{}\")\n country_code String?\n created_at DateTime @default(now())\n updated_at DateTime @updatedAt\n\n clients Client[]\n vehicles Vehicle[]\n user_companies UserCompany[]\n\n @@map(\"companies\")\n}\n\nmodel HandlingUnit {\n id String @id @default(uuid()) @db.Uuid\n order_id String @db.Uuid\n description String\n quantity Int @default(1)\n weight Float?\n weight_unit WeightUnits @default(KG)\n length Float?\n width Float?\n height Float?\n volume Float?\n dimension_unit DimensionUnits @default(CM)\n total_volume Float?\n total_weight Float?\n commodity String?\n delivery_contact Json? @default(\"{}\")\n pickup_contact Json? @default(\"{}\")\n delivery_address Json? @default(\"{}\")\n pickup_address Json? @default(\"{}\")\n delivery_instructions String?\n pickup_instructions String?\n client_id String? @db.Uuid\n contact_notify Json? @default(\"[]\")\n eta DateTime?\n created_at DateTime @default(now())\n updated_at DateTime @updatedAt\n\n order Order @relation(fields: [order_id], references: [id], onDelete: Cascade)\n client Client? @relation(fields: [client_id], references: [id], onDelete: SetNull)\n route_handling_units RouteHandlingUnit[]\n address_handling_units AddressHandlingUnit[]\n\n @@index([order_id])\n @@index([client_id])\n @@map(\"handling_units\")\n}\n\nmodel User {\n id String @id @default(uuid()) @db.Uuid\n email String @unique\n name String\n password String\n role Roles @default(GUEST)\n created_at DateTime @default(now())\n updated_at DateTime @updatedAt\n\n routes Route[]\n user_companies UserCompany[]\n sessions Session[]\n\n @@map(\"users\")\n}\n\nmodel UserCompany {\n id String @id @default(uuid()) @db.Uuid\n user_id String @db.Uuid\n company_id String @db.Uuid\n is_primary Boolean @default(false)\n created_at DateTime @default(now())\n updated_at DateTime @updatedAt\n\n user User @relation(fields: [user_id], references: [id], onDelete: Cascade)\n company companies @relation(fields: [company_id], references: [id], onDelete: Cascade)\n\n @@unique([user_id, company_id])\n @@index([user_id])\n @@index([company_id])\n @@map(\"user_companies\")\n}\n\nmodel Session {\n id String @id @default(uuid()) @db.Uuid\n user_id String @db.Uuid\n refresh_token String @unique\n device_info String?\n ip_address String?\n expires_at DateTime\n created_at DateTime @default(now())\n updated_at DateTime @updatedAt\n\n user User @relation(fields: [user_id], references: [id], onDelete: Cascade)\n\n @@index([user_id])\n @@index([refresh_token])\n @@map(\"sessions\")\n}\n\nmodel VehicleBrand {\n id String @id @default(uuid()) @db.Uuid\n name String @unique\n logo_url String?\n is_active Boolean @default(true)\n created_at DateTime @default(now())\n updated_at DateTime @updatedAt\n\n models VehicleModel[]\n vehicles Vehicle[]\n\n @@map(\"vehicle_brands\")\n}\n\nmodel VehicleModel {\n id String @id @default(uuid()) @db.Uuid\n name String\n brand_id String @db.Uuid\n is_active Boolean @default(true)\n created_at DateTime @default(now())\n updated_at DateTime @updatedAt\n\n brand VehicleBrand @relation(fields: [brand_id], references: [id], onDelete: Cascade)\n vehicles Vehicle[]\n\n @@unique([name, brand_id])\n @@index([brand_id])\n @@map(\"vehicle_models\")\n}\n\nmodel Vehicle {\n id String @id @default(uuid()) @db.Uuid\n license_plate String @unique\n brand_id String? @db.Uuid\n model_id String? @db.Uuid\n capacity Float?\n year Int?\n fuel_type FuelType? @default(DIESEL)\n color VehicleColor?\n chassis_number String? @unique\n size VehicleSize? @default(MEDIUM)\n gps_enabled Boolean @default(false)\n image_url Json? @default(\"[]\")\n company_id String? @db.Uuid\n created_at DateTime @default(now())\n updated_at DateTime @updatedAt\n\n brand VehicleBrand? @relation(fields: [brand_id], references: [id], onDelete: SetNull)\n model VehicleModel? @relation(fields: [model_id], references: [id], onDelete: SetNull)\n company companies? @relation(fields: [company_id], references: [id], onDelete: Cascade)\n routes Route[]\n\n @@index([company_id])\n @@index([brand_id])\n @@index([model_id])\n @@map(\"vehicles\")\n}\n\nmodel Route {\n id String @id @default(uuid()) @db.Uuid\n driver_id String? @db.Uuid\n vehicle_id String? @db.Uuid\n status RouteStatus @default(PENDING)\n started_at DateTime?\n completed_at DateTime?\n type_of_route TypeOfRoutes?\n created_at DateTime @default(now())\n updated_at DateTime @updatedAt\n\n driver User? @relation(fields: [driver_id], references: [id], onDelete: SetNull)\n vehicle Vehicle? @relation(fields: [vehicle_id], references: [id], onDelete: SetNull)\n\n route_handling_units RouteHandlingUnit[]\n route_orders RouteOrders[]\n addresses Address[]\n\n @@index([driver_id])\n @@index([vehicle_id])\n @@map(\"routes\")\n}\n\nmodel RouteHandlingUnit {\n id String @id @default(uuid()) @db.Uuid\n route_id String @db.Uuid\n handling_unit_id String @db.Uuid\n created_at DateTime @default(now())\n updated_at DateTime @updatedAt\n\n route Route @relation(fields: [route_id], references: [id], onDelete: Cascade)\n handling_unit HandlingUnit @relation(fields: [handling_unit_id], references: [id], onDelete: Cascade)\n\n @@index([route_id])\n @@index([handling_unit_id])\n @@map(\"route_handling_units\")\n}\n\nmodel RouteOrders {\n id String @id @default(uuid()) @db.Uuid\n route_id String @db.Uuid\n order_id String @db.Uuid\n created_at DateTime @default(now())\n updated_at DateTime @updatedAt\n\n route Route @relation(fields: [route_id], references: [id], onDelete: Cascade)\n order Order @relation(fields: [order_id], references: [id], onDelete: Cascade)\n\n @@index([route_id])\n @@index([order_id])\n @@map(\"route_orders\")\n}\n\nmodel Address {\n id String @id @default(uuid()) @db.Uuid\n address_type AddressType @default(OTHER)\n sequence Int?\n title String?\n address_line1 String\n address_line2 String?\n apartment String?\n city String?\n state String?\n postal_code String?\n country String\n latitude Float?\n longitude Float?\n google_address Json? @default(\"{}\")\n route_id String? @db.Uuid\n created_at DateTime @default(now())\n updated_at DateTime @updatedAt\n\n route Route? @relation(fields: [route_id], references: [id], onDelete: Cascade)\n address_handling_units AddressHandlingUnit[]\n\n @@index([route_id])\n @@map(\"addresses\")\n}\n\nmodel AddressHandlingUnit {\n id String @id @default(uuid()) @db.Uuid\n address_id String @db.Uuid\n handling_unit_id String @db.Uuid\n created_at DateTime @default(now())\n updated_at DateTime @updatedAt\n\n address Address @relation(fields: [address_id], references: [id], onDelete: Cascade)\n handling_unit HandlingUnit @relation(fields: [handling_unit_id], references: [id], onDelete: Cascade)\n\n @@index([address_id])\n @@index([handling_unit_id])\n @@map(\"address_handling_units\")\n}\n"
321
432
  }
322
433
 
323
- config.runtimeDataModel = JSON.parse("{\"models\":{\"Order\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"reference\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"shipper\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"attachments\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"status\",\"kind\":\"enum\",\"type\":\"RouteStatus\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"handling_units\",\"kind\":\"object\",\"type\":\"HandlingUnit\",\"relationName\":\"HandlingUnitToOrder\"},{\"name\":\"route_orders\",\"kind\":\"object\",\"type\":\"RouteOrders\",\"relationName\":\"OrderToRouteOrders\"}],\"dbName\":\"orders\"},\"companies\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"tax_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"address\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"contact_info\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"country_code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"handling_units\",\"kind\":\"object\",\"type\":\"HandlingUnit\",\"relationName\":\"HandlingUnitTocompanies\"},{\"name\":\"vehicles\",\"kind\":\"object\",\"type\":\"Vehicle\",\"relationName\":\"VehicleTocompanies\"}],\"dbName\":\"companies\"},\"HandlingUnit\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"order_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"description\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"quantity\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"weight\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"weight_unit\",\"kind\":\"enum\",\"type\":\"WeightUnits\"},{\"name\":\"length\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"width\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"height\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"volume\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"dimension_unit\",\"kind\":\"enum\",\"type\":\"DimensionUnits\"},{\"name\":\"total_volume\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"total_weight\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"commodity\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"delivery_contact\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"pickup_contact\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"delivery_address\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"pickup_address\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"delivery_instructions\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"pickup_instructions\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"consignee\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"contact_notify\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"eta\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"order\",\"kind\":\"object\",\"type\":\"Order\",\"relationName\":\"HandlingUnitToOrder\"},{\"name\":\"company\",\"kind\":\"object\",\"type\":\"companies\",\"relationName\":\"HandlingUnitTocompanies\"},{\"name\":\"route_handling_units\",\"kind\":\"object\",\"type\":\"RouteHandlingUnit\",\"relationName\":\"HandlingUnitToRouteHandlingUnit\"},{\"name\":\"address_handling_units\",\"kind\":\"object\",\"type\":\"AddressHandlingUnit\",\"relationName\":\"AddressHandlingUnitToHandlingUnit\"}],\"dbName\":\"handling_units\"},\"User\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"email\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"password\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"role\",\"kind\":\"enum\",\"type\":\"Roles\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"routes\",\"kind\":\"object\",\"type\":\"Route\",\"relationName\":\"RouteToUser\"}],\"dbName\":\"users\"},\"Vehicle\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"license_plate\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"model\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"capacity\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"mark\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"year\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"fuel_type\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"color\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"chassis_number\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"size\",\"kind\":\"enum\",\"type\":\"VehicleSize\"},{\"name\":\"gps_enabled\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"image_url\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"company_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"company\",\"kind\":\"object\",\"type\":\"companies\",\"relationName\":\"VehicleTocompanies\"},{\"name\":\"routes\",\"kind\":\"object\",\"type\":\"Route\",\"relationName\":\"RouteToVehicle\"}],\"dbName\":\"vehicles\"},\"Route\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"driver_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"vehicle_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"status\",\"kind\":\"enum\",\"type\":\"RouteStatus\"},{\"name\":\"started_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"completed_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"type_of_route\",\"kind\":\"enum\",\"type\":\"TypeOfRoutes\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"driver\",\"kind\":\"object\",\"type\":\"User\",\"relationName\":\"RouteToUser\"},{\"name\":\"vehicle\",\"kind\":\"object\",\"type\":\"Vehicle\",\"relationName\":\"RouteToVehicle\"},{\"name\":\"route_handling_units\",\"kind\":\"object\",\"type\":\"RouteHandlingUnit\",\"relationName\":\"RouteToRouteHandlingUnit\"},{\"name\":\"route_orders\",\"kind\":\"object\",\"type\":\"RouteOrders\",\"relationName\":\"RouteToRouteOrders\"},{\"name\":\"addresses\",\"kind\":\"object\",\"type\":\"Address\",\"relationName\":\"AddressToRoute\"}],\"dbName\":\"routes\"},\"RouteHandlingUnit\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"route_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"handling_unit_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"route\",\"kind\":\"object\",\"type\":\"Route\",\"relationName\":\"RouteToRouteHandlingUnit\"},{\"name\":\"handling_unit\",\"kind\":\"object\",\"type\":\"HandlingUnit\",\"relationName\":\"HandlingUnitToRouteHandlingUnit\"}],\"dbName\":\"route_handling_units\"},\"RouteOrders\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"route_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"order_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"route\",\"kind\":\"object\",\"type\":\"Route\",\"relationName\":\"RouteToRouteOrders\"},{\"name\":\"order\",\"kind\":\"object\",\"type\":\"Order\",\"relationName\":\"OrderToRouteOrders\"}],\"dbName\":\"route_orders\"},\"Address\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"address_type\",\"kind\":\"enum\",\"type\":\"AddressType\"},{\"name\":\"title\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"address_line1\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"address_line2\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"apartment\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"city\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"state\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"postal_code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"country\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"latitude\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"longitude\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"google_address\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"route_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"route\",\"kind\":\"object\",\"type\":\"Route\",\"relationName\":\"AddressToRoute\"},{\"name\":\"address_handling_units\",\"kind\":\"object\",\"type\":\"AddressHandlingUnit\",\"relationName\":\"AddressToAddressHandlingUnit\"}],\"dbName\":\"addresses\"},\"AddressHandlingUnit\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"address_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"handling_unit_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"address\",\"kind\":\"object\",\"type\":\"Address\",\"relationName\":\"AddressToAddressHandlingUnit\"},{\"name\":\"handling_unit\",\"kind\":\"object\",\"type\":\"HandlingUnit\",\"relationName\":\"AddressHandlingUnitToHandlingUnit\"}],\"dbName\":\"address_handling_units\"}},\"enums\":{},\"types\":{}}")
434
+ config.runtimeDataModel = JSON.parse("{\"models\":{\"Client\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"tax_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"email\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"phone\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"country_code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"company_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_by\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"company\",\"kind\":\"object\",\"type\":\"companies\",\"relationName\":\"ClientTocompanies\"},{\"name\":\"addresses\",\"kind\":\"object\",\"type\":\"ClientAddress\",\"relationName\":\"ClientToClientAddress\"},{\"name\":\"contacts\",\"kind\":\"object\",\"type\":\"ClientContact\",\"relationName\":\"ClientToClientContact\"},{\"name\":\"orders_as_shipper\",\"kind\":\"object\",\"type\":\"Order\",\"relationName\":\"shipper_client\"},{\"name\":\"handling_units_as_consignee\",\"kind\":\"object\",\"type\":\"HandlingUnit\",\"relationName\":\"ClientToHandlingUnit\"}],\"dbName\":\"clients\"},\"ClientAddress\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"client_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"title\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"address_type\",\"kind\":\"enum\",\"type\":\"AddressType\"},{\"name\":\"line1\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"line2\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"city\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"state\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"postal_code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"country\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"formatted_address\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"latitude\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"longitude\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"is_default\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"client\",\"kind\":\"object\",\"type\":\"Client\",\"relationName\":\"ClientToClientAddress\"}],\"dbName\":\"client_addresses\"},\"ClientContact\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"client_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"email\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"phone\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"is_default\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"client\",\"kind\":\"object\",\"type\":\"Client\",\"relationName\":\"ClientToClientContact\"}],\"dbName\":\"client_contacts\"},\"Order\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"reference\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"shipper_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"attachments\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"status\",\"kind\":\"enum\",\"type\":\"RouteStatus\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"shipper\",\"kind\":\"object\",\"type\":\"Client\",\"relationName\":\"shipper_client\"},{\"name\":\"handling_units\",\"kind\":\"object\",\"type\":\"HandlingUnit\",\"relationName\":\"HandlingUnitToOrder\"},{\"name\":\"route_orders\",\"kind\":\"object\",\"type\":\"RouteOrders\",\"relationName\":\"OrderToRouteOrders\"}],\"dbName\":\"orders\"},\"companies\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"tax_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"address\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"contact_info\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"country_code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"clients\",\"kind\":\"object\",\"type\":\"Client\",\"relationName\":\"ClientTocompanies\"},{\"name\":\"vehicles\",\"kind\":\"object\",\"type\":\"Vehicle\",\"relationName\":\"VehicleTocompanies\"},{\"name\":\"user_companies\",\"kind\":\"object\",\"type\":\"UserCompany\",\"relationName\":\"UserCompanyTocompanies\"}],\"dbName\":\"companies\"},\"HandlingUnit\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"order_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"description\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"quantity\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"weight\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"weight_unit\",\"kind\":\"enum\",\"type\":\"WeightUnits\"},{\"name\":\"length\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"width\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"height\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"volume\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"dimension_unit\",\"kind\":\"enum\",\"type\":\"DimensionUnits\"},{\"name\":\"total_volume\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"total_weight\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"commodity\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"delivery_contact\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"pickup_contact\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"delivery_address\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"pickup_address\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"delivery_instructions\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"pickup_instructions\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"client_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"contact_notify\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"eta\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"order\",\"kind\":\"object\",\"type\":\"Order\",\"relationName\":\"HandlingUnitToOrder\"},{\"name\":\"client\",\"kind\":\"object\",\"type\":\"Client\",\"relationName\":\"ClientToHandlingUnit\"},{\"name\":\"route_handling_units\",\"kind\":\"object\",\"type\":\"RouteHandlingUnit\",\"relationName\":\"HandlingUnitToRouteHandlingUnit\"},{\"name\":\"address_handling_units\",\"kind\":\"object\",\"type\":\"AddressHandlingUnit\",\"relationName\":\"AddressHandlingUnitToHandlingUnit\"}],\"dbName\":\"handling_units\"},\"User\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"email\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"password\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"role\",\"kind\":\"enum\",\"type\":\"Roles\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"routes\",\"kind\":\"object\",\"type\":\"Route\",\"relationName\":\"RouteToUser\"},{\"name\":\"user_companies\",\"kind\":\"object\",\"type\":\"UserCompany\",\"relationName\":\"UserToUserCompany\"},{\"name\":\"sessions\",\"kind\":\"object\",\"type\":\"Session\",\"relationName\":\"SessionToUser\"}],\"dbName\":\"users\"},\"UserCompany\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"user_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"company_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"is_primary\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"user\",\"kind\":\"object\",\"type\":\"User\",\"relationName\":\"UserToUserCompany\"},{\"name\":\"company\",\"kind\":\"object\",\"type\":\"companies\",\"relationName\":\"UserCompanyTocompanies\"}],\"dbName\":\"user_companies\"},\"Session\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"user_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"refresh_token\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"device_info\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"ip_address\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"expires_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"user\",\"kind\":\"object\",\"type\":\"User\",\"relationName\":\"SessionToUser\"}],\"dbName\":\"sessions\"},\"VehicleBrand\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"logo_url\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"is_active\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"models\",\"kind\":\"object\",\"type\":\"VehicleModel\",\"relationName\":\"VehicleBrandToVehicleModel\"},{\"name\":\"vehicles\",\"kind\":\"object\",\"type\":\"Vehicle\",\"relationName\":\"VehicleToVehicleBrand\"}],\"dbName\":\"vehicle_brands\"},\"VehicleModel\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"brand_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"is_active\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"brand\",\"kind\":\"object\",\"type\":\"VehicleBrand\",\"relationName\":\"VehicleBrandToVehicleModel\"},{\"name\":\"vehicles\",\"kind\":\"object\",\"type\":\"Vehicle\",\"relationName\":\"VehicleToVehicleModel\"}],\"dbName\":\"vehicle_models\"},\"Vehicle\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"license_plate\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"brand_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"model_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"capacity\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"year\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"fuel_type\",\"kind\":\"enum\",\"type\":\"FuelType\"},{\"name\":\"color\",\"kind\":\"enum\",\"type\":\"VehicleColor\"},{\"name\":\"chassis_number\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"size\",\"kind\":\"enum\",\"type\":\"VehicleSize\"},{\"name\":\"gps_enabled\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"image_url\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"company_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"brand\",\"kind\":\"object\",\"type\":\"VehicleBrand\",\"relationName\":\"VehicleToVehicleBrand\"},{\"name\":\"model\",\"kind\":\"object\",\"type\":\"VehicleModel\",\"relationName\":\"VehicleToVehicleModel\"},{\"name\":\"company\",\"kind\":\"object\",\"type\":\"companies\",\"relationName\":\"VehicleTocompanies\"},{\"name\":\"routes\",\"kind\":\"object\",\"type\":\"Route\",\"relationName\":\"RouteToVehicle\"}],\"dbName\":\"vehicles\"},\"Route\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"driver_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"vehicle_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"status\",\"kind\":\"enum\",\"type\":\"RouteStatus\"},{\"name\":\"started_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"completed_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"type_of_route\",\"kind\":\"enum\",\"type\":\"TypeOfRoutes\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"driver\",\"kind\":\"object\",\"type\":\"User\",\"relationName\":\"RouteToUser\"},{\"name\":\"vehicle\",\"kind\":\"object\",\"type\":\"Vehicle\",\"relationName\":\"RouteToVehicle\"},{\"name\":\"route_handling_units\",\"kind\":\"object\",\"type\":\"RouteHandlingUnit\",\"relationName\":\"RouteToRouteHandlingUnit\"},{\"name\":\"route_orders\",\"kind\":\"object\",\"type\":\"RouteOrders\",\"relationName\":\"RouteToRouteOrders\"},{\"name\":\"addresses\",\"kind\":\"object\",\"type\":\"Address\",\"relationName\":\"AddressToRoute\"}],\"dbName\":\"routes\"},\"RouteHandlingUnit\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"route_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"handling_unit_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"route\",\"kind\":\"object\",\"type\":\"Route\",\"relationName\":\"RouteToRouteHandlingUnit\"},{\"name\":\"handling_unit\",\"kind\":\"object\",\"type\":\"HandlingUnit\",\"relationName\":\"HandlingUnitToRouteHandlingUnit\"}],\"dbName\":\"route_handling_units\"},\"RouteOrders\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"route_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"order_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"route\",\"kind\":\"object\",\"type\":\"Route\",\"relationName\":\"RouteToRouteOrders\"},{\"name\":\"order\",\"kind\":\"object\",\"type\":\"Order\",\"relationName\":\"OrderToRouteOrders\"}],\"dbName\":\"route_orders\"},\"Address\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"address_type\",\"kind\":\"enum\",\"type\":\"AddressType\"},{\"name\":\"sequence\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"title\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"address_line1\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"address_line2\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"apartment\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"city\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"state\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"postal_code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"country\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"latitude\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"longitude\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"google_address\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"route_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"route\",\"kind\":\"object\",\"type\":\"Route\",\"relationName\":\"AddressToRoute\"},{\"name\":\"address_handling_units\",\"kind\":\"object\",\"type\":\"AddressHandlingUnit\",\"relationName\":\"AddressToAddressHandlingUnit\"}],\"dbName\":\"addresses\"},\"AddressHandlingUnit\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"address_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"handling_unit_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"address\",\"kind\":\"object\",\"type\":\"Address\",\"relationName\":\"AddressToAddressHandlingUnit\"},{\"name\":\"handling_unit\",\"kind\":\"object\",\"type\":\"HandlingUnit\",\"relationName\":\"AddressHandlingUnitToHandlingUnit\"}],\"dbName\":\"address_handling_units\"}},\"enums\":{},\"types\":{}}")
324
435
  defineDmmfProperty(exports.Prisma, config.runtimeDataModel)
325
436
  config.compilerWasm = {
326
437
  getRuntime: async () => require('./query_compiler_bg.js'),
@@ -1,5 +1,5 @@
1
1
  {
2
- "name": "prisma-client-0d0c0994407de3e4a6a2ece580ac02b74ff2ed651f6da92014430e04bed036ac",
2
+ "name": "prisma-client-91608f1ad9d41f109889e3fb29a2f1fab2e7e42f37bddc7637812f55e315643e",
3
3
  "main": "index.js",
4
4
  "types": "index.d.ts",
5
5
  "browser": "default.js",
@@ -41,6 +41,28 @@ enum VehicleSize {
41
41
  EXTRA_LARGE
42
42
  }
43
43
 
44
+ enum VehicleColor {
45
+ WHITE
46
+ BLACK
47
+ SILVER
48
+ GRAY
49
+ RED
50
+ BLUE
51
+ GREEN
52
+ YELLOW
53
+ ORANGE
54
+ BROWN
55
+ BEIGE
56
+ }
57
+
58
+ enum FuelType {
59
+ GASOLINE
60
+ DIESEL
61
+ ELECTRIC
62
+ HYBRID
63
+ GAS
64
+ }
65
+
44
66
  enum TypeOfRoutes {
45
67
  PICKING
46
68
  DELIVERY
@@ -54,18 +76,83 @@ enum AddressType {
54
76
  OTHER
55
77
  }
56
78
 
79
+ model Client {
80
+ id String @id @default(uuid()) @db.Uuid
81
+ tax_id String?
82
+ name String
83
+ email String?
84
+ phone String?
85
+ country_code String?
86
+ company_id String? @db.Uuid
87
+ created_by String? @db.Uuid
88
+ created_at DateTime @default(now())
89
+ updated_at DateTime @updatedAt
90
+
91
+ company companies? @relation(fields: [company_id], references: [id], onDelete: SetNull)
92
+ addresses ClientAddress[]
93
+ contacts ClientContact[]
94
+ orders_as_shipper Order[] @relation("shipper_client")
95
+ handling_units_as_consignee HandlingUnit[]
96
+
97
+ @@index([company_id])
98
+ @@index([created_by])
99
+ @@map("clients")
100
+ }
101
+
102
+ model ClientAddress {
103
+ id String @id @default(uuid()) @db.Uuid
104
+ client_id String @db.Uuid
105
+ title String?
106
+ address_type AddressType @default(OTHER)
107
+ line1 String
108
+ line2 String?
109
+ city String?
110
+ state String?
111
+ postal_code String?
112
+ country String?
113
+ formatted_address String?
114
+ latitude Float?
115
+ longitude Float?
116
+ is_default Boolean @default(false)
117
+ created_at DateTime @default(now())
118
+ updated_at DateTime @updatedAt
119
+
120
+ client Client @relation(fields: [client_id], references: [id], onDelete: Cascade)
121
+
122
+ @@index([client_id])
123
+ @@map("client_addresses")
124
+ }
125
+
126
+ model ClientContact {
127
+ id String @id @default(uuid()) @db.Uuid
128
+ client_id String @db.Uuid
129
+ name String
130
+ email String?
131
+ phone String?
132
+ is_default Boolean @default(false)
133
+ created_at DateTime @default(now())
134
+ updated_at DateTime @updatedAt
135
+
136
+ client Client @relation(fields: [client_id], references: [id], onDelete: Cascade)
137
+
138
+ @@index([client_id])
139
+ @@map("client_contacts")
140
+ }
141
+
57
142
  model Order {
58
143
  id String @id @default(uuid()) @db.Uuid
59
144
  reference String?
60
- shipper String
145
+ shipper_id String? @db.Uuid
61
146
  attachments Json? @default("[]")
62
147
  status RouteStatus @default(PENDING)
63
148
  created_at DateTime @default(now())
64
149
  updated_at DateTime @updatedAt
65
150
 
151
+ shipper Client? @relation("shipper_client", fields: [shipper_id], references: [id], onDelete: SetNull)
66
152
  handling_units HandlingUnit[]
67
153
  route_orders RouteOrders[]
68
154
 
155
+ @@index([shipper_id])
69
156
  @@map("orders")
70
157
  }
71
158
 
@@ -79,8 +166,9 @@ model companies {
79
166
  created_at DateTime @default(now())
80
167
  updated_at DateTime @updatedAt
81
168
 
82
- handling_units HandlingUnit[]
169
+ clients Client[]
83
170
  vehicles Vehicle[]
171
+ user_companies UserCompany[]
84
172
 
85
173
  @@map("companies")
86
174
  }
@@ -106,19 +194,19 @@ model HandlingUnit {
106
194
  pickup_address Json? @default("{}")
107
195
  delivery_instructions String?
108
196
  pickup_instructions String?
109
- consignee String? @db.Uuid
110
- contact_notify Json? @default("{}")
197
+ client_id String? @db.Uuid
198
+ contact_notify Json? @default("[]")
111
199
  eta DateTime?
112
200
  created_at DateTime @default(now())
113
201
  updated_at DateTime @updatedAt
114
202
 
115
203
  order Order @relation(fields: [order_id], references: [id], onDelete: Cascade)
116
- company companies? @relation(fields: [consignee], references: [id], onDelete: SetNull)
204
+ client Client? @relation(fields: [client_id], references: [id], onDelete: SetNull)
117
205
  route_handling_units RouteHandlingUnit[]
118
206
  address_handling_units AddressHandlingUnit[]
119
207
 
120
208
  @@index([order_id])
121
- @@index([consignee])
209
+ @@index([client_id])
122
210
  @@map("handling_units")
123
211
  }
124
212
 
@@ -131,32 +219,102 @@ model User {
131
219
  created_at DateTime @default(now())
132
220
  updated_at DateTime @updatedAt
133
221
 
134
- routes Route[]
222
+ routes Route[]
223
+ user_companies UserCompany[]
224
+ sessions Session[]
135
225
 
136
226
  @@map("users")
137
227
  }
138
228
 
229
+ model UserCompany {
230
+ id String @id @default(uuid()) @db.Uuid
231
+ user_id String @db.Uuid
232
+ company_id String @db.Uuid
233
+ is_primary Boolean @default(false)
234
+ created_at DateTime @default(now())
235
+ updated_at DateTime @updatedAt
236
+
237
+ user User @relation(fields: [user_id], references: [id], onDelete: Cascade)
238
+ company companies @relation(fields: [company_id], references: [id], onDelete: Cascade)
239
+
240
+ @@unique([user_id, company_id])
241
+ @@index([user_id])
242
+ @@index([company_id])
243
+ @@map("user_companies")
244
+ }
245
+
246
+ model Session {
247
+ id String @id @default(uuid()) @db.Uuid
248
+ user_id String @db.Uuid
249
+ refresh_token String @unique
250
+ device_info String?
251
+ ip_address String?
252
+ expires_at DateTime
253
+ created_at DateTime @default(now())
254
+ updated_at DateTime @updatedAt
255
+
256
+ user User @relation(fields: [user_id], references: [id], onDelete: Cascade)
257
+
258
+ @@index([user_id])
259
+ @@index([refresh_token])
260
+ @@map("sessions")
261
+ }
262
+
263
+ model VehicleBrand {
264
+ id String @id @default(uuid()) @db.Uuid
265
+ name String @unique
266
+ logo_url String?
267
+ is_active Boolean @default(true)
268
+ created_at DateTime @default(now())
269
+ updated_at DateTime @updatedAt
270
+
271
+ models VehicleModel[]
272
+ vehicles Vehicle[]
273
+
274
+ @@map("vehicle_brands")
275
+ }
276
+
277
+ model VehicleModel {
278
+ id String @id @default(uuid()) @db.Uuid
279
+ name String
280
+ brand_id String @db.Uuid
281
+ is_active Boolean @default(true)
282
+ created_at DateTime @default(now())
283
+ updated_at DateTime @updatedAt
284
+
285
+ brand VehicleBrand @relation(fields: [brand_id], references: [id], onDelete: Cascade)
286
+ vehicles Vehicle[]
287
+
288
+ @@unique([name, brand_id])
289
+ @@index([brand_id])
290
+ @@map("vehicle_models")
291
+ }
292
+
139
293
  model Vehicle {
140
- id String @id @default(uuid()) @db.Uuid
141
- license_plate String @unique
142
- model String
294
+ id String @id @default(uuid()) @db.Uuid
295
+ license_plate String @unique
296
+ brand_id String? @db.Uuid
297
+ model_id String? @db.Uuid
143
298
  capacity Float?
144
- mark String?
145
299
  year Int?
146
- fuel_type String?
147
- color String?
148
- chassis_number String? @unique
149
- size VehicleSize? @default(MEDIUM)
150
- gps_enabled Boolean @default(false)
151
- image_url Json? @default("[]")
152
- company_id String? @db.Uuid
153
- created_at DateTime @default(now())
154
- updated_at DateTime @updatedAt
155
-
156
- company companies? @relation(fields: [company_id], references: [id], onDelete: Cascade)
300
+ fuel_type FuelType? @default(DIESEL)
301
+ color VehicleColor?
302
+ chassis_number String? @unique
303
+ size VehicleSize? @default(MEDIUM)
304
+ gps_enabled Boolean @default(false)
305
+ image_url Json? @default("[]")
306
+ company_id String? @db.Uuid
307
+ created_at DateTime @default(now())
308
+ updated_at DateTime @updatedAt
309
+
310
+ brand VehicleBrand? @relation(fields: [brand_id], references: [id], onDelete: SetNull)
311
+ model VehicleModel? @relation(fields: [model_id], references: [id], onDelete: SetNull)
312
+ company companies? @relation(fields: [company_id], references: [id], onDelete: Cascade)
157
313
  routes Route[]
158
314
 
159
315
  @@index([company_id])
316
+ @@index([brand_id])
317
+ @@index([model_id])
160
318
  @@map("vehicles")
161
319
  }
162
320
 
@@ -216,6 +374,7 @@ model RouteOrders {
216
374
  model Address {
217
375
  id String @id @default(uuid()) @db.Uuid
218
376
  address_type AddressType @default(OTHER)
377
+ sequence Int?
219
378
  title String?
220
379
  address_line1 String
221
380
  address_line2 String?